Lines Matching +full:0 +full:- +full:23
1 /* SPDX-License-Identifier: GPL-2.0 */
14 #define MHIREGLEN 0x00
15 #define MHIVER 0x08
16 #define MHICFG 0x10
17 #define CHDBOFF 0x18
18 #define ERDBOFF 0x20
19 #define BHIOFF 0x28
20 #define BHIEOFF 0x2c
21 #define DEBUGOFF 0x30
22 #define MHICTRL 0x38
23 #define MHISTATUS 0x48
24 #define CCABAP_LOWER 0x58
25 #define CCABAP_HIGHER 0x5c
26 #define ECABAP_LOWER 0x60
27 #define ECABAP_HIGHER 0x64
28 #define CRCBAP_LOWER 0x68
29 #define CRCBAP_HIGHER 0x6c
30 #define CRDB_LOWER 0x70
31 #define CRDB_HIGHER 0x74
32 #define MHICTRLBASE_LOWER 0x80
33 #define MHICTRLBASE_HIGHER 0x84
34 #define MHICTRLLIMIT_LOWER 0x88
35 #define MHICTRLLIMIT_HIGHER 0x8c
36 #define MHIDATABASE_LOWER 0x98
37 #define MHIDATABASE_HIGHER 0x9c
38 #define MHIDATALIMIT_LOWER 0xa0
39 #define MHIDATALIMIT_HIGHER 0xa4
42 #define BHI_BHIVERSION_MINOR 0x00
43 #define BHI_BHIVERSION_MAJOR 0x04
44 #define BHI_IMGADDR_LOW 0x08
45 #define BHI_IMGADDR_HIGH 0x0c
46 #define BHI_IMGSIZE 0x10
47 #define BHI_RSVD1 0x14
48 #define BHI_IMGTXDB 0x18
49 #define BHI_RSVD2 0x1c
50 #define BHI_INTVEC 0x20
51 #define BHI_RSVD3 0x24
52 #define BHI_EXECENV 0x28
53 #define BHI_STATUS 0x2c
54 #define BHI_ERRCODE 0x30
55 #define BHI_ERRDBG1 0x34
56 #define BHI_ERRDBG2 0x38
57 #define BHI_ERRDBG3 0x3c
58 #define BHI_SERIALNU 0x40
59 #define BHI_SBLANTIROLLVER 0x44
60 #define BHI_NUMSEG 0x48
61 #define BHI_MSMHWID(n) (0x4c + (0x4 * (n)))
62 #define BHI_OEMPKHASH(n) (0x64 + (0x4 * (n)))
63 #define BHI_RSVD5 0xc4
66 #define BHI_TXDB_SEQNUM_BMSK GENMASK(29, 0)
67 #define BHI_TXDB_SEQNUM_SHFT 0
69 #define BHI_STATUS_ERROR 0x03
70 #define BHI_STATUS_SUCCESS 0x02
71 #define BHI_STATUS_RESET 0x00
74 #define BHIE_MSMSOCID_OFFS 0x00
75 #define BHIE_TXVECADDR_LOW_OFFS 0x2c
76 #define BHIE_TXVECADDR_HIGH_OFFS 0x30
77 #define BHIE_TXVECSIZE_OFFS 0x34
78 #define BHIE_TXVECDB_OFFS 0x3c
79 #define BHIE_TXVECSTATUS_OFFS 0x44
80 #define BHIE_RXVECADDR_LOW_OFFS 0x60
81 #define BHIE_RXVECADDR_HIGH_OFFS 0x64
82 #define BHIE_RXVECSIZE_OFFS 0x68
83 #define BHIE_RXVECDB_OFFS 0x70
84 #define BHIE_RXVECSTATUS_OFFS 0x78
87 #define BHIE_TXVECDB_SEQNUM_BMSK GENMASK(29, 0)
88 #define BHIE_TXVECDB_SEQNUM_SHFT 0
89 #define BHIE_TXVECSTATUS_SEQNUM_BMSK GENMASK(29, 0)
90 #define BHIE_TXVECSTATUS_SEQNUM_SHFT 0
93 #define BHIE_TXVECSTATUS_STATUS_RESET 0x00
94 #define BHIE_TXVECSTATUS_STATUS_XFER_COMPL 0x02
95 #define BHIE_TXVECSTATUS_STATUS_ERROR 0x03
96 #define BHIE_RXVECDB_SEQNUM_BMSK GENMASK(29, 0)
97 #define BHIE_RXVECDB_SEQNUM_SHFT 0
98 #define BHIE_RXVECSTATUS_SEQNUM_BMSK GENMASK(29, 0)
99 #define BHIE_RXVECSTATUS_SEQNUM_SHFT 0
102 #define BHIE_RXVECSTATUS_STATUS_RESET 0x00
103 #define BHIE_RXVECSTATUS_STATUS_XFER_COMPL 0x02
104 #define BHIE_RXVECSTATUS_STATUS_ERROR 0x03
108 #define MHICFG_NER_MASK GENMASK(23, 16)
110 #define MHICFG_NCH_MASK GENMASK(7, 0)
115 #define MHISTATUS_READY_MASK BIT(0)
119 #define MHI_TRE_CMD_NOOP_PTR 0
120 #define MHI_TRE_CMD_NOOP_DWORD0 0
121 #define MHI_TRE_CMD_NOOP_DWORD1 cpu_to_le32(FIELD_PREP(GENMASK(23, 16), MHI_CMD_NOP))
124 #define MHI_TRE_CMD_RESET_PTR 0
125 #define MHI_TRE_CMD_RESET_DWORD0 0
127 FIELD_PREP(GENMASK(23, 16), \
131 #define MHI_TRE_CMD_STOP_PTR 0
132 #define MHI_TRE_CMD_STOP_DWORD0 0
134 FIELD_PREP(GENMASK(23, 16), \
138 #define MHI_TRE_CMD_START_PTR 0
139 #define MHI_TRE_CMD_START_DWORD0 0
141 FIELD_PREP(GENMASK(23, 16), \
144 #define MHI_TRE_GET_DWORD(tre, word) le32_to_cpu((tre)->dword[(word)])
146 #define MHI_TRE_GET_CMD_TYPE(tre) FIELD_GET(GENMASK(23, 16), MHI_TRE_GET_DWORD(tre, 1))
151 FIELD_PREP(GENMASK(15, 0), len))
153 FIELD_PREP(GENMASK(23, 16), type))
154 #define MHI_TRE_GET_EV_PTR(tre) le64_to_cpu((tre)->ptr)
155 #define MHI_TRE_GET_EV_CODE(tre) FIELD_GET(GENMASK(31, 24), (MHI_TRE_GET_DWORD(tre, 0)))
156 #define MHI_TRE_GET_EV_LEN(tre) FIELD_GET(GENMASK(15, 0), (MHI_TRE_GET_DWORD(tre, 0)))
158 #define MHI_TRE_GET_EV_TYPE(tre) FIELD_GET(GENMASK(23, 16), (MHI_TRE_GET_DWORD(tre, 1)))
159 #define MHI_TRE_GET_EV_STATE(tre) FIELD_GET(GENMASK(31, 24), (MHI_TRE_GET_DWORD(tre, 0)))
160 #define MHI_TRE_GET_EV_EXECENV(tre) FIELD_GET(GENMASK(31, 24), (MHI_TRE_GET_DWORD(tre, 0)))
161 #define MHI_TRE_GET_EV_SEQ(tre) MHI_TRE_GET_DWORD(tre, 0)
164 #define MHI_TRE_GET_EV_VEID(tre) FIELD_GET(GENMASK(23, 16), (MHI_TRE_GET_DWORD(tre, 0)))
166 #define MHI_TRE_GET_EV_LINKWIDTH(tre) FIELD_GET(GENMASK(7, 0), (MHI_TRE_GET_DWORD(tre, 0)))
169 #define MHI_SC_EV_PTR 0
171 #define MHI_SC_EV_DWORD1(type) cpu_to_le32(FIELD_PREP(GENMASK(23, 16), type))
174 #define MHI_EE_EV_PTR 0
176 #define MHI_EE_EV_DWORD1(type) cpu_to_le32(FIELD_PREP(GENMASK(23, 16), type))
182 #define MHI_CC_EV_DWORD1(type) cpu_to_le32(FIELD_PREP(GENMASK(23, 16), type))
186 #define MHI_TRE_DATA_DWORD0(len) cpu_to_le32(FIELD_PREP(GENMASK(15, 0), len))
188 #define MHI_TRE_DATA_DWORD1(bei, ieot, ieob, chain) cpu_to_le32(FIELD_PREP(GENMASK(23, 16), \
193 FIELD_PREP(BIT(0), chain))
194 #define MHI_TRE_DATA_GET_PTR(tre) le64_to_cpu((tre)->ptr)
195 #define MHI_TRE_DATA_GET_LEN(tre) FIELD_GET(GENMASK(15, 0), MHI_TRE_GET_DWORD(tre, 0))
196 #define MHI_TRE_DATA_GET_CHAIN(tre) (!!(FIELD_GET(BIT(0), MHI_TRE_GET_DWORD(tre, 1))))
204 #define MHI_RSCTRE_DATA_DWORD1 cpu_to_le32(FIELD_PREP(GENMASK(23, 16), \
208 MHI_PKT_TYPE_INVALID = 0x0,
209 MHI_PKT_TYPE_NOOP_CMD = 0x1,
210 MHI_PKT_TYPE_TRANSFER = 0x2,
211 MHI_PKT_TYPE_COALESCING = 0x8,
212 MHI_PKT_TYPE_RESET_CHAN_CMD = 0x10,
213 MHI_PKT_TYPE_STOP_CHAN_CMD = 0x11,
214 MHI_PKT_TYPE_START_CHAN_CMD = 0x12,
215 MHI_PKT_TYPE_STATE_CHANGE_EVENT = 0x20,
216 MHI_PKT_TYPE_CMD_COMPLETION_EVENT = 0x21,
217 MHI_PKT_TYPE_TX_EVENT = 0x22,
218 MHI_PKT_TYPE_RSC_TX_EVENT = 0x28,
219 MHI_PKT_TYPE_EE_EVENT = 0x40,
220 MHI_PKT_TYPE_TSYNC_EVENT = 0x48,
221 MHI_PKT_TYPE_BW_REQ_EVENT = 0x50,
227 MHI_EV_CC_INVALID = 0x0,
228 MHI_EV_CC_SUCCESS = 0x1,
229 MHI_EV_CC_EOT = 0x2, /* End of transfer event */
230 MHI_EV_CC_OVERFLOW = 0x3,
231 MHI_EV_CC_EOB = 0x4, /* End of block event */
232 MHI_EV_CC_OOB = 0x5, /* Out of block event */
233 MHI_EV_CC_DB_MODE = 0x6,
234 MHI_EV_CC_UNDEFINED_ERR = 0x10,
235 MHI_EV_CC_BAD_TRE = 0x11,
255 #define EV_CTX_RESERVED_MASK GENMASK(7, 0)
269 #define CHAN_CTX_CHSTATE_MASK GENMASK(7, 0)