blob: df33a9aa8fd61de6e3bae0f959ac44cc6d89fbf0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
/* $OpenBSD: octxctlreg.h,v 1.2 2018/01/16 15:50:28 visa Exp $ */
/*
* Copyright (c) 2017 Visa Hankala
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef _OCTXCTLREG_H_
#define _OCTXCTLREG_H_
#define XCTL_CTL 0x00
#define XCTL_CTL_CLEAR_BIST 0x8000000000000000ull
#define XCTL_CTL_START_BIST 0x4000000000000000ull
#define XCTL_CTL_REFCLK_SEL 0x3000000000000000ull
#define XCTL_CTL_REFCLK_SEL_SHIFT 60
#define XCTL_CTL_SSC_EN 0x0800000000000000ull
#define XCTL_CTL_SSC_RANG 0x0700000000000000ull
#define XCTL_CTL_SSC_REFCLK_SEL 0x00ff800000000000ull
#define XCTL_CTL_MPLL_MULT 0x00007f0000000000ull
#define XCTL_CTL_MPLL_MULT_SHIFT 40
#define XCTL_CTL_REFCLK_SSP_EN 0x0000008000000000ull
#define XCTL_CTL_REFCLK_DIV2 0x0000004000000000ull
#define XCTL_CTL_REFCLK_FSEL 0x0000003f00000000ull
#define XCTL_CTL_REFCLK_FSEL_SHIFT 32
#define XCTL_CTL_CLK_EN 0x0000000040000000ull
#define XCTL_CTL_CLK_BYP_SEL 0x0000000020000000ull
#define XCTL_CTL_CLKDIV_RST 0x0000000010000000ull
#define XCTL_CTL_CLKDIV_SEL 0x0000000007000000ull
#define XCTL_CTL_CLKDIV_SEL_SHIFT 24
#define XCTL_CTL_USB3_PORT_PERM_ATTACH 0x0000000000200000ull
#define XCTL_CTL_USB2_PORT_PERM_ATTACH 0x0000000000100000ull
#define XCTL_CTL_USB3_PORT_DIS 0x0000000000040000ull
#define XCTL_CTL_USB2_PORT_DIS 0x0000000000010000ull
#define XCTL_CTL_SSPOWER_EN 0x0000000000004000ull
#define XCTL_CTL_HSPOWER_EN 0x0000000000001000ull
#define XCTL_CTL_CSCLK_EN 0x0000000000000010ull
#define XCTL_CTL_DRD_MODE 0x0000000000000008ull
#define XCTL_CTL_UPHY_RST 0x0000000000000004ull
#define XCTL_CTL_UAHC_RST 0x0000000000000002ull
#define XCTL_CTL_UCTL_RST 0x0000000000000001ull
#define XCTL_HOST_CFG 0xe0
#define XCTL_HOST_CFG_PPC_EN 0x0000000002000000ull
#define XCTL_HOST_CFG_PPC_ACTIVE_HIGH_EN 0x0000000001000000ull
#define XCTL_SHIM_CFG 0xe8
#define XCTL_SHIM_CFG_DMA_BYTE_SWAP 0x0000000000000300ull
#define XCTL_SHIM_CFG_DMA_BYTE_SWAP_SHIFT 8
#define XCTL_SHIM_CFG_CSR_BYTE_SWAP 0x0000000000000003ull
#define XCTL_SHIM_CFG_CSR_BYTE_SWAP_SHIFT 0
/*
* DWC3 core control registers.
* These are relative to the xHCI register space.
*/
#define DWC3_GCTL 0xc110
#define DWC3_GCTL_PRTCAP_MASK 0x00003000u
#define DWC3_GCTL_PRTCAP_HOST 0x00001000u
#define DWC3_GCTL_SOFITPSYNC 0x00000400u
#define DWC3_GCTL_SCALEDOWN_MASK 0x00000030u
#define DWC3_GCTL_DISSCRAMBLE 0x00000004u
#define DWC3_GCTL_DSBLCLKGTNG 0x00000001u
#define DWC3_GSNPSID 0xc120
#define DWC3_GUSB2PHYCFG(n) (0xc200 + ((n) * 0x04))
#define DWC3_GUSB2PHYCFG_SUSPHY 0x00000040u
#define DWC3_GUSB3PIPECTL(n) (0xc2c0 + ((n) * 0x04))
#define DWC3_GUSB3PIPECTL_UX_EXIT_PX 0x08000000u
#define DWC3_GUSB3PIPECTL_SUSPHY 0x00020000u
/* DWC3 revision numbers. */
#define DWC3_REV_210A 0x210a
#define DWC3_REV_250A 0x250a
#endif /* !_OCTXCTLREG_H_ */
|