Lines Matching +full:32 +full:- +full:bit
7 * Copyright (c) 2003-2016 Cavium, Inc.
14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
89 /* 1 register (32-bit) to enable Input queues */
92 /* 1 register (32-bit) to enable Output queues */
95 /* 1 register (32-bit) to determine whether Output queues are in reset. */
98 /* 1 register (32-bit) to determine whether Input queues are in reset. */
103 /* 1 register (32-bit) - instr. size of each input queue. */
106 /* 32 registers for Input Queue Instr Count - SLI_PKT_IN_DONE0_CNTS */
109 /* 32 registers for Input Queue Start Addr - SLI_PKT0_INSTR_BADDR */
112 /* 32 registers for Input Doorbell - SLI_PKT0_INSTR_BAOFF_DBELL */
115 /* 32 registers for Input Queue size - SLI_PKT0_INSTR_FIFO_RSIZE */
118 /* 32 registers for Instruction Header Options - SLI_PKT0_INSTR_HEADER */
121 /* 1 register (64-bit) - Back Pressure for each input queue - SLI_PKT0_IN_BP */
124 /* Each Input Queue register is at a 16-byte Offset in BAR0 */
127 /* 1 register (32-bit) - ES, RO, NS, Arbitration for Input Queue Data &
132 /* 1 register (64-bit) - Number of instructions to read at one time
133 * - 2 bits for each input ring. SLI_PKT_INSTR_RD_SIZE.
137 /* 1 register (64-bit) - Assign Input ring to MAC port
138 * - 2 bits for each input ring. SLI_PKT_IN_PCIE_PORT.
142 /*------- Request Queue Macros ---------*/
161 /*------------------ Masks ----------------*/
162 #define CN6XXX_INPUT_CTL_ROUND_ROBIN_ARB BIT(22)
163 #define CN6XXX_INPUT_CTL_DATA_NS BIT(8)
164 #define CN6XXX_INPUT_CTL_DATA_ES_64B_SWAP BIT(6)
165 #define CN6XXX_INPUT_CTL_DATA_RO BIT(5)
166 #define CN6XXX_INPUT_CTL_USE_CSR BIT(4)
167 #define CN6XXX_INPUT_CTL_GATHER_NS BIT(3)
168 #define CN6XXX_INPUT_CTL_GATHER_ES_64B_SWAP BIT(2)
169 #define CN6XXX_INPUT_CTL_GATHER_RO BIT(1)
184 /* 32 registers for Output queue buffer and info size - SLI_PKT0_OUT_SIZE */
187 /* 32 registers for Output Queue Start Addr - SLI_PKT0_SLIST_BADDR */
190 /* 32 registers for Output Queue Packet Credits - SLI_PKT0_SLIST_BAOFF_DBELL */
193 /* 32 registers for Output Queue size - SLI_PKT0_SLIST_FIFO_RSIZE */
196 /* 32 registers for Output Queue Packet Count - SLI_PKT0_CNTS */
199 /* Each Output Queue register is at a 16-byte Offset in BAR0 */
202 /* 1 register (32-bit) - 1 bit for each output queue
203 * - Relaxed Ordering setting for reading Output Queues descriptors
204 * - SLI_PKT_SLIST_ROR
208 /* 1 register (32-bit) - 1 bit for each output queue
209 * - No Snoop mode for reading Output Queues descriptors
210 * - SLI_PKT_SLIST_NS
214 /* 1 register (64-bit) - 2 bits for each output queue
215 * - Endian-Swap mode for reading Output Queue descriptors
216 * - SLI_PKT_SLIST_ES
220 /* 1 register (32-bit) - 1 bit for each output queue
221 * - InfoPtr mode for Output Queues.
222 * - SLI_PKT_IPTR
226 /* 1 register (32-bit) - 1 bit for each output queue
227 * - DPTR format selector for Output queues.
228 * - SLI_PKT_DPADDR
232 /* 1 register (32-bit) - 1 bit for each output queue
233 * - Relaxed Ordering setting for reading Output Queues data
234 * - SLI_PKT_DATA_OUT_ROR
238 /* 1 register (32-bit) - 1 bit for each output queue
239 * - No Snoop mode for reading Output Queues data
240 * - SLI_PKT_DATA_OUT_NS
244 /* 1 register (64-bit) - 2 bits for each output queue
245 * - Endian-Swap mode for reading Output Queue data
246 * - SLI_PKT_DATA_OUT_ES
250 /* 1 register (32-bit) - 1 bit for each output queue
251 * - Controls whether SLI_PKTn_CNTS is incremented for bytes or for packets.
252 * - SLI_PKT_OUT_BMODE
256 /* 1 register (64-bit) - 2 bits for each output queue
257 * - Assign PCIE port for Output queues
258 * - SLI_PKT_PCIE_PORT.
262 /* 1 (64-bit) register for Output Queue Packet Count Interrupt Threshold
263 * & Time Threshold. The same setting applies to all 32 queues.
264 * The register is defined as a 64-bit registers, but we use the
265 * 32-bit offsets to define distinct addresses.
270 /* 1 (64-bit register) for Output Queue backpressure across all rings. */
276 /*------- Output Queue Macros ---------*/
294 /* 2 registers (64-bit) - DMA Count - 1 for each DMA counter 0/1. */
297 /* 2 registers (64-bit) - DMA Timer 0/1, contains DMA timer values
302 /* 2 registers (64-bit) - DMA count & Time Interrupt threshold -
307 /* Each DMA register is at a 16-byte Offset in BAR0 */
310 /*---------- DMA Counter Macros ---------*/
328 /* 1 register (64-bit) for Interrupt Summary */
331 /* 1 register (64-bit) for Interrupt Enable */
335 /* 1 register (32-bit) to enable Output Queue Packet/Byte Count Interrupt */
338 /* 1 register (32-bit) to enable Output Queue Packet Timer Interrupt */
341 /* 1 register (32-bit) to indicate which Output Queue reached pkt threshold */
344 /* 1 register (32-bit) to indicate which Output Queue reached time threshold */
347 /*------------------ Interrupt Masks ----------------*/
349 #define CN6XXX_INTR_RML_TIMEOUT_ERR BIT(1)
350 #define CN6XXX_INTR_BAR0_RW_TIMEOUT_ERR BIT(2)
351 #define CN6XXX_INTR_IO2BIG_ERR BIT(3)
352 #define CN6XXX_INTR_PKT_COUNT BIT(4)
353 #define CN6XXX_INTR_PKT_TIME BIT(5)
354 #define CN6XXX_INTR_M0UPB0_ERR BIT(8)
355 #define CN6XXX_INTR_M0UPWI_ERR BIT(9)
356 #define CN6XXX_INTR_M0UNB0_ERR BIT(10)
357 #define CN6XXX_INTR_M0UNWI_ERR BIT(11)
358 #define CN6XXX_INTR_M1UPB0_ERR BIT(12)
359 #define CN6XXX_INTR_M1UPWI_ERR BIT(13)
360 #define CN6XXX_INTR_M1UNB0_ERR BIT(14)
361 #define CN6XXX_INTR_M1UNWI_ERR BIT(15)
362 #define CN6XXX_INTR_MIO_INT0 BIT(16)
363 #define CN6XXX_INTR_MIO_INT1 BIT(17)
364 #define CN6XXX_INTR_MAC_INT0 BIT(18)
365 #define CN6XXX_INTR_MAC_INT1 BIT(19)
367 #define CN6XXX_INTR_DMA0_FORCE BIT_ULL(32)
395 /* Sum of interrupts for all PCI-Express Data Interrupts */