diff options
Diffstat (limited to 'drivers/net/vxge/vxge-traffic.h')
-rw-r--r-- | drivers/net/vxge/vxge-traffic.h | 50 |
1 files changed, 47 insertions, 3 deletions
diff --git a/drivers/net/vxge/vxge-traffic.h b/drivers/net/vxge/vxge-traffic.h index 861c853e3e84..c252f3d3f650 100644 --- a/drivers/net/vxge/vxge-traffic.h +++ b/drivers/net/vxge/vxge-traffic.h | |||
@@ -1866,6 +1866,51 @@ struct vxge_hw_ring_rxd_info { | |||
1866 | u32 rth_hash_type; | 1866 | u32 rth_hash_type; |
1867 | u32 rth_value; | 1867 | u32 rth_value; |
1868 | }; | 1868 | }; |
1869 | /** | ||
1870 | * enum vxge_hw_ring_tcode - Transfer codes returned by adapter | ||
1871 | * @VXGE_HW_RING_T_CODE_OK: Transfer ok. | ||
1872 | * @VXGE_HW_RING_T_CODE_L3_CKSUM_MISMATCH: Layer 3 checksum presentation | ||
1873 | * configuration mismatch. | ||
1874 | * @VXGE_HW_RING_T_CODE_L4_CKSUM_MISMATCH: Layer 4 checksum presentation | ||
1875 | * configuration mismatch. | ||
1876 | * @VXGE_HW_RING_T_CODE_L3_L4_CKSUM_MISMATCH: Layer 3 and Layer 4 checksum | ||
1877 | * presentation configuration mismatch. | ||
1878 | * @VXGE_HW_RING_T_CODE_L3_PKT_ERR: Layer 3 error unparseable packet, | ||
1879 | * such as unknown IPv6 header. | ||
1880 | * @VXGE_HW_RING_T_CODE_L2_FRM_ERR: Layer 2 error frame integrity | ||
1881 | * error, such as FCS or ECC). | ||
1882 | * @VXGE_HW_RING_T_CODE_BUF_SIZE_ERR: Buffer size error the RxD buffer( | ||
1883 | * s) were not appropriately sized and data loss occurred. | ||
1884 | * @VXGE_HW_RING_T_CODE_INT_ECC_ERR: Internal ECC error RxD corrupted. | ||
1885 | * @VXGE_HW_RING_T_CODE_BENIGN_OVFLOW: Benign overflow the contents of | ||
1886 | * Segment1 exceeded the capacity of Buffer1 and the remainder | ||
1887 | * was placed in Buffer2. Segment2 now starts in Buffer3. | ||
1888 | * No data loss or errors occurred. | ||
1889 | * @VXGE_HW_RING_T_CODE_ZERO_LEN_BUFF: Buffer size 0 one of the RxDs | ||
1890 | * assigned buffers has a size of 0 bytes. | ||
1891 | * @VXGE_HW_RING_T_CODE_FRM_DROP: Frame dropped either due to | ||
1892 | * VPath Reset or because of a VPIN mismatch. | ||
1893 | * @VXGE_HW_RING_T_CODE_UNUSED: Unused | ||
1894 | * @VXGE_HW_RING_T_CODE_MULTI_ERR: Multiple errors more than one | ||
1895 | * transfer code condition occurred. | ||
1896 | * | ||
1897 | * Transfer codes returned by adapter. | ||
1898 | */ | ||
1899 | enum vxge_hw_ring_tcode { | ||
1900 | VXGE_HW_RING_T_CODE_OK = 0x0, | ||
1901 | VXGE_HW_RING_T_CODE_L3_CKSUM_MISMATCH = 0x1, | ||
1902 | VXGE_HW_RING_T_CODE_L4_CKSUM_MISMATCH = 0x2, | ||
1903 | VXGE_HW_RING_T_CODE_L3_L4_CKSUM_MISMATCH = 0x3, | ||
1904 | VXGE_HW_RING_T_CODE_L3_PKT_ERR = 0x5, | ||
1905 | VXGE_HW_RING_T_CODE_L2_FRM_ERR = 0x6, | ||
1906 | VXGE_HW_RING_T_CODE_BUF_SIZE_ERR = 0x7, | ||
1907 | VXGE_HW_RING_T_CODE_INT_ECC_ERR = 0x8, | ||
1908 | VXGE_HW_RING_T_CODE_BENIGN_OVFLOW = 0x9, | ||
1909 | VXGE_HW_RING_T_CODE_ZERO_LEN_BUFF = 0xA, | ||
1910 | VXGE_HW_RING_T_CODE_FRM_DROP = 0xC, | ||
1911 | VXGE_HW_RING_T_CODE_UNUSED = 0xE, | ||
1912 | VXGE_HW_RING_T_CODE_MULTI_ERR = 0xF | ||
1913 | }; | ||
1869 | 1914 | ||
1870 | /** | 1915 | /** |
1871 | * enum enum vxge_hw_ring_hash_type - RTH hash types | 1916 | * enum enum vxge_hw_ring_hash_type - RTH hash types |
@@ -1910,7 +1955,7 @@ vxge_hw_ring_rxd_post_post( | |||
1910 | void *rxdh); | 1955 | void *rxdh); |
1911 | 1956 | ||
1912 | enum vxge_hw_status | 1957 | enum vxge_hw_status |
1913 | vxge_hw_ring_replenish(struct __vxge_hw_ring *ring_handle, u16 min_flag); | 1958 | vxge_hw_ring_replenish(struct __vxge_hw_ring *ring_handle); |
1914 | 1959 | ||
1915 | void | 1960 | void |
1916 | vxge_hw_ring_rxd_post_post_wmb( | 1961 | vxge_hw_ring_rxd_post_post_wmb( |
@@ -2042,7 +2087,6 @@ void vxge_hw_fifo_txdl_free( | |||
2042 | 2087 | ||
2043 | #define VXGE_HW_RING_NEXT_BLOCK_POINTER_OFFSET (VXGE_HW_BLOCK_SIZE-8) | 2088 | #define VXGE_HW_RING_NEXT_BLOCK_POINTER_OFFSET (VXGE_HW_BLOCK_SIZE-8) |
2044 | #define VXGE_HW_RING_MEMBLOCK_IDX_OFFSET (VXGE_HW_BLOCK_SIZE-16) | 2089 | #define VXGE_HW_RING_MEMBLOCK_IDX_OFFSET (VXGE_HW_BLOCK_SIZE-16) |
2045 | #define VXGE_HW_RING_MIN_BUFF_ALLOCATION 64 | ||
2046 | 2090 | ||
2047 | /* | 2091 | /* |
2048 | * struct __vxge_hw_ring_rxd_priv - Receive descriptor HW-private data. | 2092 | * struct __vxge_hw_ring_rxd_priv - Receive descriptor HW-private data. |
@@ -2332,7 +2376,7 @@ enum vxge_hw_status vxge_hw_vpath_alarm_process( | |||
2332 | struct __vxge_hw_vpath_handle *vpath_handle, | 2376 | struct __vxge_hw_vpath_handle *vpath_handle, |
2333 | u32 skip_alarms); | 2377 | u32 skip_alarms); |
2334 | 2378 | ||
2335 | enum vxge_hw_status | 2379 | void |
2336 | vxge_hw_vpath_msix_set(struct __vxge_hw_vpath_handle *vpath_handle, | 2380 | vxge_hw_vpath_msix_set(struct __vxge_hw_vpath_handle *vpath_handle, |
2337 | int *tim_msix_id, int alarm_msix_id); | 2381 | int *tim_msix_id, int alarm_msix_id); |
2338 | 2382 | ||