17 #ifndef VXGE_TRAFFIC_H 18 #define VXGE_TRAFFIC_H 27 #define VXGE_HW_DTR_MAX_T_CODE 16 28 #define VXGE_HW_ALL_FOXES 0xFFFFFFFFFFFFFFFFULL 29 #define VXGE_HW_INTR_MASK_ALL 0xFFFFFFFFFFFFFFFFULL 30 #define VXGE_HW_MAX_VIRTUAL_PATHS 17 32 #define VXGE_HW_MAX_VIRTUAL_FUNCTIONS 8 34 #define VXGE_HW_MAC_MAX_MAC_PORT_ID 3 36 #define VXGE_HW_DEFAULT_32 0xffffffff 38 #define VXGE_HW_HEADER_802_2_SIZE 3 39 #define VXGE_HW_HEADER_SNAP_SIZE 5 40 #define VXGE_HW_HEADER_VLAN_SIZE 4 41 #define VXGE_HW_MAC_HEADER_MAX_SIZE \ 43 VXGE_HW_HEADER_802_2_SIZE + \ 44 VXGE_HW_HEADER_VLAN_SIZE + \ 45 VXGE_HW_HEADER_SNAP_SIZE) 61 #define VXGE_HW_HEADER_ETHERNET_II_802_3_ALIGN 0x12 62 #define VXGE_HW_HEADER_802_2_SNAP_ALIGN 2 63 #define VXGE_HW_HEADER_802_2_ALIGN 3 64 #define VXGE_HW_HEADER_SNAP_ALIGN 1 66 #define VXGE_HW_L3_CKSUM_OK 0xFFFF 67 #define VXGE_HW_L4_CKSUM_OK 0xFFFF 86 #define VXGE_HW_EVENT_BASE 0 87 #define VXGE_LL_EVENT_BASE 100 129 #define VXGE_HW_MAX_INTR_PER_VP 4 130 #define VXGE_HW_VPATH_INTR_TX 0 131 #define VXGE_HW_VPATH_INTR_RX 1 132 #define VXGE_HW_VPATH_INTR_EINTA 2 133 #define VXGE_HW_VPATH_INTR_BMAP 3 135 #define VXGE_HW_BLOCK_SIZE 4096 137 #define VXGE_HW_TIM_UTIL_SEL_LEGACY_TX_NET_UTIL 17 138 #define VXGE_HW_TIM_UTIL_SEL_LEGACY_RX_NET_UTIL 18 139 #define VXGE_HW_TIM_UTIL_SEL_LEGACY_TX_RX_AVE_NET_UTIL 19 140 #define VXGE_HW_TIM_UTIL_SEL_PER_VPATH 63
enum vxge_hw_status vxge_hw_ring_replenish(struct __vxge_hw_ring *ring)
enum vxge_hw_status __vxge_hw_fifo_delete(struct __vxge_hw_fifo *fifo)
struct vxge_hw_fifo_txd - Transmit Descriptor
void vxge_hw_fifo_txdl_post(struct __vxge_hw_fifo *fifo, struct vxge_hw_fifo_txd *txdp)
vxge_hw_fifo_txdl_post - Post descriptor on the fifo channel.
enum vxge_hw_status __vxge_hw_vp_initialize(struct __vxge_hw_device *hldev, u32 vp_id, struct __vxge_hw_virtualpath *vpath)
void __vxge_hw_vpath_prc_configure(struct __vxge_hw_device *hldev)
vxge_hw_event
enum vxge_hw_event- Enumerates slow-path HW events.
enum vxge_hw_status __vxge_hw_ring_delete(struct __vxge_hw_ring *ringh)
void vxge_hw_vpath_doorbell_rx(struct __vxge_hw_ring *ringh)
vxge_hw_vpath_doorbell_rx - Indicates to hw the qwords of receive descriptors posted.
enum vxge_hw_status __vxge_hw_vpath_initialize(struct __vxge_hw_device *devh, u32 vp_id)
void vxge_hw_device_unmask_all(struct __vxge_hw_device *hldev)
vxge_hw_device_unmask_all - Unmask all device interrupts.
void vxge_hw_fifo_txdl_buffer_set(struct __vxge_hw_fifo *fifo, struct vxge_hw_fifo_txd *txdp, struct io_buffer *iob)
vxge_hw_fifo_txdl_buffer_set - Set transmit buffer pointer in the descriptor.
enum vxge_hw_status vxge_hw_vpath_poll_tx(struct __vxge_hw_fifo *fifo)
vxge_hw_vpath_poll_tx - Poll Tx for completed descriptors and process the same.
enum vxge_hw_status __vxge_hw_vpath_enable(struct __vxge_hw_device *devh, u32 vp_id)
void vxge_hw_device_mask_all(struct __vxge_hw_device *hldev)
vxge_hw_device_mask_all - Mask all device interrupts.
enum vxge_hw_status vxge_hw_device_begin_irq(struct __vxge_hw_device *hldev)
vxge_hw_device_begin_irq - Begin IRQ processing.
struct vxge_hw_fifo_txd * vxge_hw_fifo_free_txdl_get(struct __vxge_hw_fifo *fifo)
vxge_hw_fifo_free_txdl_get: fetch next available txd in the fifo
enum vxge_hw_status __vxge_hw_vpath_kdfc_configure(struct __vxge_hw_device *devh, u32 vp_id)
enum vxge_hw_status __vxge_hw_vpath_mac_configure(struct __vxge_hw_device *devh)
enum vxge_hw_status __vxge_hw_vpath_tim_configure(struct __vxge_hw_device *devh, u32 vp_id)
vxge_hw_fifo_gather_code
enum enum vxge_hw_fifo_gather_code - Gather codes used in fifo TxD @VXGE_HW_FIFO_GATHER_CODE_FIRST: F...
struct __vxge_hw_device - Hal device object @magic: Magic Number @bar0: BAR0 virtual address.
void vxge_hw_device_intr_enable(struct __vxge_hw_device *hldev)
vxge_hw_device_intr_enable - Enable interrupts.
vxge_hw_ring_tcode
enum vxge_hw_ring_tcode - Transfer codes returned by adapter @VXGE_HW_RING_T_CODE_OK: Transfer ok.
enum vxge_hw_status __vxge_hw_vpath_reset(struct __vxge_hw_device *devh, u32 vp_id)
enum vxge_hw_status __vxge_hw_ring_create(struct __vxge_hw_virtualpath *vpath, struct __vxge_hw_ring *ring)
void vxge_hw_ring_rxd_post(struct __vxge_hw_ring *ring_handle, struct vxge_hw_ring_rxd_1 *rxdp)
enum vxge_hw_status vxge_hw_vpath_poll_rx(struct __vxge_hw_ring *ringh)
void vxge_hw_device_intr_disable(struct __vxge_hw_device *hldev)
vxge_hw_device_intr_disable - Disable Titan interrupts.
#define VXGE_HW_EVENT_BASE
struct vxge_hw_ring_rxd_1 - One buffer mode RxD for ring
vxge_hw_fifo_tcode
enum enum vxge_hw_fifo_tcode - tcodes used in fifo @VXGE_HW_FIFO_T_CODE_OK: Transfer OK @VXGE_HW_FIFO...
void __vxge_hw_vp_terminate(struct __vxge_hw_device *hldev, struct __vxge_hw_virtualpath *vpath)
enum vxge_hw_status __vxge_hw_fifo_create(struct __vxge_hw_virtualpath *vpath, struct __vxge_hw_fifo *fifo)