1ee824f4bSOmkar Kulkarni /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */ 2ee824f4bSOmkar Kulkarni /* QLogic qed NIC Driver 3ee824f4bSOmkar Kulkarni * Copyright (c) 2019-2021 Marvell International Ltd. 4ee824f4bSOmkar Kulkarni */ 5ee824f4bSOmkar Kulkarni 6ee824f4bSOmkar Kulkarni #ifndef _QED_IRO_HSI_H 7ee824f4bSOmkar Kulkarni #define _QED_IRO_HSI_H 8ee824f4bSOmkar Kulkarni 9ee824f4bSOmkar Kulkarni #include <linux/types.h> 10ee824f4bSOmkar Kulkarni 113091be06SPrabhakar Kushwaha enum { 12*e2dbc223SPrabhakar Kushwaha IRO_YSTORM_FLOW_CONTROL_MODE_GTT, 13*e2dbc223SPrabhakar Kushwaha IRO_PSTORM_PKT_DUPLICATION_CFG, 143091be06SPrabhakar Kushwaha IRO_TSTORM_PORT_STAT, 153091be06SPrabhakar Kushwaha IRO_TSTORM_LL2_PORT_STAT, 16*e2dbc223SPrabhakar Kushwaha IRO_TSTORM_PKT_DUPLICATION_CFG, 17*e2dbc223SPrabhakar Kushwaha IRO_USTORM_VF_PF_CHANNEL_READY_GTT, 18*e2dbc223SPrabhakar Kushwaha IRO_USTORM_FLR_FINAL_ACK_GTT, 19*e2dbc223SPrabhakar Kushwaha IRO_USTORM_EQE_CONS_GTT, 20*e2dbc223SPrabhakar Kushwaha IRO_USTORM_ETH_QUEUE_ZONE_GTT, 21*e2dbc223SPrabhakar Kushwaha IRO_USTORM_COMMON_QUEUE_CONS_GTT, 223091be06SPrabhakar Kushwaha IRO_XSTORM_PQ_INFO, 233091be06SPrabhakar Kushwaha IRO_XSTORM_INTEG_TEST_DATA, 243091be06SPrabhakar Kushwaha IRO_YSTORM_INTEG_TEST_DATA, 253091be06SPrabhakar Kushwaha IRO_PSTORM_INTEG_TEST_DATA, 263091be06SPrabhakar Kushwaha IRO_TSTORM_INTEG_TEST_DATA, 273091be06SPrabhakar Kushwaha IRO_MSTORM_INTEG_TEST_DATA, 283091be06SPrabhakar Kushwaha IRO_USTORM_INTEG_TEST_DATA, 293091be06SPrabhakar Kushwaha IRO_XSTORM_OVERLAY_BUF_ADDR, 303091be06SPrabhakar Kushwaha IRO_YSTORM_OVERLAY_BUF_ADDR, 313091be06SPrabhakar Kushwaha IRO_PSTORM_OVERLAY_BUF_ADDR, 323091be06SPrabhakar Kushwaha IRO_TSTORM_OVERLAY_BUF_ADDR, 333091be06SPrabhakar Kushwaha IRO_MSTORM_OVERLAY_BUF_ADDR, 343091be06SPrabhakar Kushwaha IRO_USTORM_OVERLAY_BUF_ADDR, 35*e2dbc223SPrabhakar Kushwaha IRO_TSTORM_LL2_RX_PRODS_GTT, 363091be06SPrabhakar Kushwaha IRO_CORE_LL2_TSTORM_PER_QUEUE_STAT, 373091be06SPrabhakar Kushwaha IRO_CORE_LL2_USTORM_PER_QUEUE_STAT, 383091be06SPrabhakar Kushwaha IRO_CORE_LL2_PSTORM_PER_QUEUE_STAT, 393091be06SPrabhakar Kushwaha IRO_MSTORM_QUEUE_STAT, 403091be06SPrabhakar Kushwaha IRO_MSTORM_TPA_TIMEOUT_US, 413091be06SPrabhakar Kushwaha IRO_MSTORM_ETH_VF_PRODS, 42*e2dbc223SPrabhakar Kushwaha IRO_MSTORM_ETH_PF_PRODS_GTT, 433091be06SPrabhakar Kushwaha IRO_MSTORM_ETH_PF_STAT, 443091be06SPrabhakar Kushwaha IRO_USTORM_QUEUE_STAT, 453091be06SPrabhakar Kushwaha IRO_USTORM_ETH_PF_STAT, 463091be06SPrabhakar Kushwaha IRO_PSTORM_QUEUE_STAT, 473091be06SPrabhakar Kushwaha IRO_PSTORM_ETH_PF_STAT, 48*e2dbc223SPrabhakar Kushwaha IRO_PSTORM_CTL_FRAME_ETHTYPE_GTT, 493091be06SPrabhakar Kushwaha IRO_TSTORM_ETH_PRS_INPUT, 503091be06SPrabhakar Kushwaha IRO_ETH_RX_RATE_LIMIT, 51*e2dbc223SPrabhakar Kushwaha IRO_TSTORM_ETH_RSS_UPDATE_GTT, 52*e2dbc223SPrabhakar Kushwaha IRO_XSTORM_ETH_QUEUE_ZONE_GTT, 533091be06SPrabhakar Kushwaha IRO_YSTORM_TOE_CQ_PROD, 543091be06SPrabhakar Kushwaha IRO_USTORM_TOE_CQ_PROD, 553091be06SPrabhakar Kushwaha IRO_USTORM_TOE_GRQ_PROD, 56*e2dbc223SPrabhakar Kushwaha IRO_TSTORM_SCSI_CMDQ_CONS_GTT, 57*e2dbc223SPrabhakar Kushwaha IRO_TSTORM_SCSI_BDQ_EXT_PROD_GTT, 58*e2dbc223SPrabhakar Kushwaha IRO_MSTORM_SCSI_BDQ_EXT_PROD_GTT, 593091be06SPrabhakar Kushwaha IRO_TSTORM_ISCSI_RX_STATS, 603091be06SPrabhakar Kushwaha IRO_MSTORM_ISCSI_RX_STATS, 613091be06SPrabhakar Kushwaha IRO_USTORM_ISCSI_RX_STATS, 623091be06SPrabhakar Kushwaha IRO_XSTORM_ISCSI_TX_STATS, 633091be06SPrabhakar Kushwaha IRO_YSTORM_ISCSI_TX_STATS, 643091be06SPrabhakar Kushwaha IRO_PSTORM_ISCSI_TX_STATS, 653091be06SPrabhakar Kushwaha IRO_TSTORM_FCOE_RX_STATS, 663091be06SPrabhakar Kushwaha IRO_PSTORM_FCOE_TX_STATS, 673091be06SPrabhakar Kushwaha IRO_PSTORM_RDMA_QUEUE_STAT, 683091be06SPrabhakar Kushwaha IRO_TSTORM_RDMA_QUEUE_STAT, 693091be06SPrabhakar Kushwaha IRO_XSTORM_RDMA_ASSERT_LEVEL, 703091be06SPrabhakar Kushwaha IRO_YSTORM_RDMA_ASSERT_LEVEL, 713091be06SPrabhakar Kushwaha IRO_PSTORM_RDMA_ASSERT_LEVEL, 723091be06SPrabhakar Kushwaha IRO_TSTORM_RDMA_ASSERT_LEVEL, 733091be06SPrabhakar Kushwaha IRO_MSTORM_RDMA_ASSERT_LEVEL, 743091be06SPrabhakar Kushwaha IRO_USTORM_RDMA_ASSERT_LEVEL, 753091be06SPrabhakar Kushwaha IRO_XSTORM_IWARP_RXMIT_STATS, 763091be06SPrabhakar Kushwaha IRO_TSTORM_ROCE_EVENTS_STAT, 773091be06SPrabhakar Kushwaha IRO_YSTORM_ROCE_DCQCN_RECEIVED_STATS, 783091be06SPrabhakar Kushwaha IRO_YSTORM_ROCE_ERROR_STATS, 793091be06SPrabhakar Kushwaha IRO_PSTORM_ROCE_DCQCN_SENT_STATS, 803091be06SPrabhakar Kushwaha IRO_USTORM_ROCE_CQE_STATS, 813091be06SPrabhakar Kushwaha }; 82ee824f4bSOmkar Kulkarni 833091be06SPrabhakar Kushwaha /* Pstorm LiteL2 queue statistics */ 84ee824f4bSOmkar Kulkarni 853091be06SPrabhakar Kushwaha #define CORE_LL2_PSTORM_PER_QUEUE_STAT_OFFSET(core_tx_stats_id) \ 863091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_PSTORM_PER_QUEUE_STAT].base \ 873091be06SPrabhakar Kushwaha + ((core_tx_stats_id) * IRO[IRO_CORE_LL2_PSTORM_PER_QUEUE_STAT].m1)) 883091be06SPrabhakar Kushwaha #define CORE_LL2_PSTORM_PER_QUEUE_STAT_SIZE \ 893091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_PSTORM_PER_QUEUE_STAT].size) 90ee824f4bSOmkar Kulkarni 91ee824f4bSOmkar Kulkarni /* Tstorm LightL2 queue statistics */ 92ee824f4bSOmkar Kulkarni #define CORE_LL2_TSTORM_PER_QUEUE_STAT_OFFSET(core_rx_queue_id) \ 933091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_TSTORM_PER_QUEUE_STAT].base \ 943091be06SPrabhakar Kushwaha + ((core_rx_queue_id) * IRO[IRO_CORE_LL2_TSTORM_PER_QUEUE_STAT].m1)) 953091be06SPrabhakar Kushwaha #define CORE_LL2_TSTORM_PER_QUEUE_STAT_SIZE \ 963091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_TSTORM_PER_QUEUE_STAT].size) 97ee824f4bSOmkar Kulkarni 98ee824f4bSOmkar Kulkarni /* Ustorm LiteL2 queue statistics */ 99ee824f4bSOmkar Kulkarni #define CORE_LL2_USTORM_PER_QUEUE_STAT_OFFSET(core_rx_queue_id) \ 1003091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_USTORM_PER_QUEUE_STAT].base \ 1013091be06SPrabhakar Kushwaha + ((core_rx_queue_id) * IRO[IRO_CORE_LL2_USTORM_PER_QUEUE_STAT].m1)) 1023091be06SPrabhakar Kushwaha #define CORE_LL2_USTORM_PER_QUEUE_STAT_SIZE \ 1033091be06SPrabhakar Kushwaha (IRO[IRO_CORE_LL2_USTORM_PER_QUEUE_STAT].size) 104ee824f4bSOmkar Kulkarni 105ee824f4bSOmkar Kulkarni /* Tstorm Eth limit Rx rate */ 106ee824f4bSOmkar Kulkarni #define ETH_RX_RATE_LIMIT_OFFSET(pf_id) \ 1073091be06SPrabhakar Kushwaha (IRO[IRO_ETH_RX_RATE_LIMIT].base \ 1083091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_ETH_RX_RATE_LIMIT].m1)) 1093091be06SPrabhakar Kushwaha #define ETH_RX_RATE_LIMIT_SIZE (IRO[IRO_ETH_RX_RATE_LIMIT].size) 110ee824f4bSOmkar Kulkarni 1113091be06SPrabhakar Kushwaha /* Mstorm ETH PF queues producers */ 112*e2dbc223SPrabhakar Kushwaha #define MSTORM_ETH_PF_PRODS_GTT_OFFSET(queue_id) \ 113*e2dbc223SPrabhakar Kushwaha (IRO[IRO_MSTORM_ETH_PF_PRODS_GTT].base \ 114*e2dbc223SPrabhakar Kushwaha + ((queue_id) * IRO[IRO_MSTORM_ETH_PF_PRODS_GTT].m1)) 115*e2dbc223SPrabhakar Kushwaha #define MSTORM_ETH_PF_PRODS_GTT_SIZE (IRO[IRO_MSTORM_ETH_PF_PRODS_GTT].size) 1163091be06SPrabhakar Kushwaha 1173091be06SPrabhakar Kushwaha /* Mstorm pf statistics */ 1183091be06SPrabhakar Kushwaha #define MSTORM_ETH_PF_STAT_OFFSET(pf_id) \ 1193091be06SPrabhakar Kushwaha (IRO[IRO_MSTORM_ETH_PF_STAT].base \ 1203091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_MSTORM_ETH_PF_STAT].m1)) 1213091be06SPrabhakar Kushwaha #define MSTORM_ETH_PF_STAT_SIZE (IRO[IRO_MSTORM_ETH_PF_STAT].size) 1223091be06SPrabhakar Kushwaha 1233091be06SPrabhakar Kushwaha /* Mstorm ETH VF queues producers offset in RAM. Used in default VF zone 1243091be06SPrabhakar Kushwaha * size mode. 125ee824f4bSOmkar Kulkarni */ 1263091be06SPrabhakar Kushwaha #define MSTORM_ETH_VF_PRODS_OFFSET(vf_id, vf_queue_id) \ 1273091be06SPrabhakar Kushwaha (IRO[IRO_MSTORM_ETH_VF_PRODS].base \ 1283091be06SPrabhakar Kushwaha + ((vf_id) * IRO[IRO_MSTORM_ETH_VF_PRODS].m1) \ 1293091be06SPrabhakar Kushwaha + ((vf_queue_id) * IRO[IRO_MSTORM_ETH_VF_PRODS].m2)) 1303091be06SPrabhakar Kushwaha #define MSTORM_ETH_VF_PRODS_SIZE (IRO[IRO_MSTORM_ETH_VF_PRODS].size) 131ee824f4bSOmkar Kulkarni 1323091be06SPrabhakar Kushwaha /* Mstorm Integration Test Data */ 1333091be06SPrabhakar Kushwaha #define MSTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_MSTORM_INTEG_TEST_DATA].base) 1343091be06SPrabhakar Kushwaha #define MSTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_MSTORM_INTEG_TEST_DATA].size) 135ee824f4bSOmkar Kulkarni 136ee824f4bSOmkar Kulkarni /* Mstorm iSCSI RX stats */ 137ee824f4bSOmkar Kulkarni #define MSTORM_ISCSI_RX_STATS_OFFSET(storage_func_id) \ 1383091be06SPrabhakar Kushwaha (IRO[IRO_MSTORM_ISCSI_RX_STATS].base \ 1393091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_MSTORM_ISCSI_RX_STATS].m1)) 1403091be06SPrabhakar Kushwaha #define MSTORM_ISCSI_RX_STATS_SIZE (IRO[IRO_MSTORM_ISCSI_RX_STATS].size) 141ee824f4bSOmkar Kulkarni 1423091be06SPrabhakar Kushwaha /* Mstorm overlay buffer host address */ 1433091be06SPrabhakar Kushwaha #define MSTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_MSTORM_OVERLAY_BUF_ADDR].base) 1443091be06SPrabhakar Kushwaha #define MSTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_MSTORM_OVERLAY_BUF_ADDR].size) 145ee824f4bSOmkar Kulkarni 1463091be06SPrabhakar Kushwaha /* Mstorm queue statistics */ 1473091be06SPrabhakar Kushwaha #define MSTORM_QUEUE_STAT_OFFSET(stat_counter_id) \ 1483091be06SPrabhakar Kushwaha (IRO[IRO_MSTORM_QUEUE_STAT].base \ 1493091be06SPrabhakar Kushwaha + ((stat_counter_id) * IRO[IRO_MSTORM_QUEUE_STAT].m1)) 1503091be06SPrabhakar Kushwaha #define MSTORM_QUEUE_STAT_SIZ (IRO[IRO_MSTORM_QUEUE_STAT].size) 151ee824f4bSOmkar Kulkarni 152ee824f4bSOmkar Kulkarni /* Mstorm error level for assert */ 153ee824f4bSOmkar Kulkarni #define MSTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 1543091be06SPrabhakar Kushwaha (IRO[IRO_MSTORM_RDMA_ASSERT_LEVEL].base \ 1553091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_MSTORM_RDMA_ASSERT_LEVEL].m1)) 1563091be06SPrabhakar Kushwaha #define MSTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_MSTORM_RDMA_ASSERT_LEVEL].size) 157ee824f4bSOmkar Kulkarni 1583091be06SPrabhakar Kushwaha /* Mstorm bdq-external-producer of given BDQ resource ID, BDqueue-id */ 159*e2dbc223SPrabhakar Kushwaha #define MSTORM_SCSI_BDQ_EXT_PROD_GTT_OFFSET(storage_func_id, bdq_id) \ 160*e2dbc223SPrabhakar Kushwaha (IRO[IRO_MSTORM_SCSI_BDQ_EXT_PROD_GTT].base \ 161*e2dbc223SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_MSTORM_SCSI_BDQ_EXT_PROD_GTT].m1) \ 162*e2dbc223SPrabhakar Kushwaha + ((bdq_id) * IRO[IRO_MSTORM_SCSI_BDQ_EXT_PROD_GTT].m2)) 163*e2dbc223SPrabhakar Kushwaha #define MSTORM_SCSI_BDQ_EXT_PROD_GTT_SIZE \ 164*e2dbc223SPrabhakar Kushwaha (IRO[IRO_MSTORM_SCSI_BDQ_EXT_PROD_GTT].size) 165ee824f4bSOmkar Kulkarni 1663091be06SPrabhakar Kushwaha /* TPA agregation timeout in us resolution (on ASIC) */ 1673091be06SPrabhakar Kushwaha #define MSTORM_TPA_TIMEOUT_US_OFFSET (IRO[IRO_MSTORM_TPA_TIMEOUT_US].base) 1683091be06SPrabhakar Kushwaha #define MSTORM_TPA_TIMEOUT_US_SIZE (IRO[IRO_MSTORM_TPA_TIMEOUT_US].size) 169ee824f4bSOmkar Kulkarni 1703091be06SPrabhakar Kushwaha /* Control frame's EthType configuration for TX control frame security */ 171*e2dbc223SPrabhakar Kushwaha #define PSTORM_CTL_FRAME_ETHTYPE_GTT_OFFSET(ethtype_id) \ 172*e2dbc223SPrabhakar Kushwaha (IRO[IRO_PSTORM_CTL_FRAME_ETHTYPE_GTT].base \ 173*e2dbc223SPrabhakar Kushwaha + ((ethtype_id) * IRO[IRO_PSTORM_CTL_FRAME_ETHTYPE_GTT].m1)) 174*e2dbc223SPrabhakar Kushwaha #define PSTORM_CTL_FRAME_ETHTYPE_GTT_SIZE \ 175*e2dbc223SPrabhakar Kushwaha (IRO[IRO_PSTORM_CTL_FRAME_ETHTYPE_GTT].size) 176ee824f4bSOmkar Kulkarni 1773091be06SPrabhakar Kushwaha /* Pstorm pf statistics */ 1783091be06SPrabhakar Kushwaha #define PSTORM_ETH_PF_STAT_OFFSET(pf_id) \ 1793091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_ETH_PF_STAT].base \ 1803091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_PSTORM_ETH_PF_STAT].m1)) 1813091be06SPrabhakar Kushwaha #define PSTORM_ETH_PF_STAT_SIZE (IRO[IRO_PSTORM_ETH_PF_STAT].size) 182ee824f4bSOmkar Kulkarni 1833091be06SPrabhakar Kushwaha /* Pstorm FCoE TX stats */ 1843091be06SPrabhakar Kushwaha #define PSTORM_FCOE_TX_STATS_OFFSET(pf_id) \ 1853091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_FCOE_TX_STATS].base \ 1863091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_PSTORM_FCOE_TX_STATS].m1)) 1873091be06SPrabhakar Kushwaha #define PSTORM_FCOE_TX_STATS_SIZE (IRO[IRO_PSTORM_FCOE_TX_STATS].size) 1883091be06SPrabhakar Kushwaha 1893091be06SPrabhakar Kushwaha /* Pstorm Integration Test Data */ 1903091be06SPrabhakar Kushwaha #define PSTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_PSTORM_INTEG_TEST_DATA].base) 1913091be06SPrabhakar Kushwaha #define PSTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_PSTORM_INTEG_TEST_DATA].size) 1923091be06SPrabhakar Kushwaha 1933091be06SPrabhakar Kushwaha /* Pstorm iSCSI TX stats */ 1943091be06SPrabhakar Kushwaha #define PSTORM_ISCSI_TX_STATS_OFFSET(storage_func_id) \ 1953091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_ISCSI_TX_STATS].base \ 1963091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_PSTORM_ISCSI_TX_STATS].m1)) 1973091be06SPrabhakar Kushwaha #define PSTORM_ISCSI_TX_STATS_SIZE (IRO[IRO_PSTORM_ISCSI_TX_STATS].size) 1983091be06SPrabhakar Kushwaha 1993091be06SPrabhakar Kushwaha /* Pstorm overlay buffer host address */ 2003091be06SPrabhakar Kushwaha #define PSTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_PSTORM_OVERLAY_BUF_ADDR].base) 2013091be06SPrabhakar Kushwaha #define PSTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_PSTORM_OVERLAY_BUF_ADDR].size) 2023091be06SPrabhakar Kushwaha 203*e2dbc223SPrabhakar Kushwaha /* Pstorm LL2 packet duplication configuration. Use pstorm_pkt_dup_cfg 204*e2dbc223SPrabhakar Kushwaha * data type. 205*e2dbc223SPrabhakar Kushwaha */ 206*e2dbc223SPrabhakar Kushwaha #define PSTORM_PKT_DUPLICATION_CFG_OFFSET(pf_id) \ 207*e2dbc223SPrabhakar Kushwaha (IRO[IRO_PSTORM_PKT_DUPLICATION_CFG].base \ 208*e2dbc223SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_PSTORM_PKT_DUPLICATION_CFG].m1)) 209*e2dbc223SPrabhakar Kushwaha #define PSTORM_PKT_DUPLICATION_CFG_SIZE \ 210*e2dbc223SPrabhakar Kushwaha (IRO[IRO_PSTORM_PKT_DUPLICATION_CFG].size) 211*e2dbc223SPrabhakar Kushwaha 2123091be06SPrabhakar Kushwaha /* Pstorm queue statistics */ 2133091be06SPrabhakar Kushwaha #define PSTORM_QUEUE_STAT_OFFSET(stat_counter_id) \ 2143091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_QUEUE_STAT].base \ 2153091be06SPrabhakar Kushwaha + ((stat_counter_id) * IRO[IRO_PSTORM_QUEUE_STAT].m1)) 2163091be06SPrabhakar Kushwaha #define PSTORM_QUEUE_STAT_SIZE (IRO[IRO_PSTORM_QUEUE_STAT].size) 2173091be06SPrabhakar Kushwaha 2183091be06SPrabhakar Kushwaha /* Pstorm error level for assert */ 2193091be06SPrabhakar Kushwaha #define PSTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 2203091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_RDMA_ASSERT_LEVEL].base \ 2213091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_PSTORM_RDMA_ASSERT_LEVEL].m1)) 2223091be06SPrabhakar Kushwaha #define PSTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_PSTORM_RDMA_ASSERT_LEVEL].size) 2233091be06SPrabhakar Kushwaha 2243091be06SPrabhakar Kushwaha /* Pstorm RDMA queue statistics */ 2253091be06SPrabhakar Kushwaha #define PSTORM_RDMA_QUEUE_STAT_OFFSET(rdma_stat_counter_id) \ 2263091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_RDMA_QUEUE_STAT].base \ 2273091be06SPrabhakar Kushwaha + ((rdma_stat_counter_id) * IRO[IRO_PSTORM_RDMA_QUEUE_STAT].m1)) 2283091be06SPrabhakar Kushwaha #define PSTORM_RDMA_QUEUE_STAT_SIZE (IRO[IRO_PSTORM_RDMA_QUEUE_STAT].size) 229ee824f4bSOmkar Kulkarni 230ee824f4bSOmkar Kulkarni /* DCQCN Sent Statistics */ 231ee824f4bSOmkar Kulkarni #define PSTORM_ROCE_DCQCN_SENT_STATS_OFFSET(roce_pf_id) \ 2323091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_ROCE_DCQCN_SENT_STATS].base \ 2333091be06SPrabhakar Kushwaha + ((roce_pf_id) * IRO[IRO_PSTORM_ROCE_DCQCN_SENT_STATS].m1)) 2343091be06SPrabhakar Kushwaha #define PSTORM_ROCE_DCQCN_SENT_STATS_SIZE \ 2353091be06SPrabhakar Kushwaha (IRO[IRO_PSTORM_ROCE_DCQCN_SENT_STATS].size) 2363091be06SPrabhakar Kushwaha 2373091be06SPrabhakar Kushwaha /* Tstorm last parser message */ 2383091be06SPrabhakar Kushwaha #define TSTORM_ETH_PRS_INPUT_OFFSET (IRO[IRO_TSTORM_ETH_PRS_INPUT].base) 2393091be06SPrabhakar Kushwaha #define TSTORM_ETH_PRS_INPUT_SIZE (IRO[IRO_TSTORM_ETH_PRS_INPUT].size) 2403091be06SPrabhakar Kushwaha 2413091be06SPrabhakar Kushwaha /* RSS indirection table entry update command per PF offset in TSTORM PF BAR0. 2423091be06SPrabhakar Kushwaha * Use eth_tstorm_rss_update_data for update. 2433091be06SPrabhakar Kushwaha */ 244*e2dbc223SPrabhakar Kushwaha #define TSTORM_ETH_RSS_UPDATE_GTT_OFFSET(pf_id) \ 245*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_ETH_RSS_UPDATE_GTT].base \ 246*e2dbc223SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_TSTORM_ETH_RSS_UPDATE_GTT].m1)) 247*e2dbc223SPrabhakar Kushwaha #define TSTORM_ETH_RSS_UPDATE_GTT_SIZE\ 248*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_ETH_RSS_UPDATE_GTT].size) 2493091be06SPrabhakar Kushwaha 2503091be06SPrabhakar Kushwaha /* Tstorm FCoE RX stats */ 2513091be06SPrabhakar Kushwaha #define TSTORM_FCOE_RX_STATS_OFFSET(pf_id) \ 2523091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_FCOE_RX_STATS].base \ 2533091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_TSTORM_FCOE_RX_STATS].m1)) 2543091be06SPrabhakar Kushwaha #define TSTORM_FCOE_RX_STATS_SIZE (IRO[IRO_TSTORM_FCOE_RX_STATS].size) 2553091be06SPrabhakar Kushwaha 2563091be06SPrabhakar Kushwaha /* Tstorm Integration Test Data */ 2573091be06SPrabhakar Kushwaha #define TSTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_TSTORM_INTEG_TEST_DATA].base) 2583091be06SPrabhakar Kushwaha #define TSTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_TSTORM_INTEG_TEST_DATA].size) 2593091be06SPrabhakar Kushwaha 2603091be06SPrabhakar Kushwaha /* Tstorm iSCSI RX stats */ 2613091be06SPrabhakar Kushwaha #define TSTORM_ISCSI_RX_STATS_OFFSET(storage_func_id) \ 2623091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_ISCSI_RX_STATS].base \ 2633091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_TSTORM_ISCSI_RX_STATS].m1)) 2643091be06SPrabhakar Kushwaha #define TSTORM_ISCSI_RX_STATS_SIZE (IRO[IRO_TSTORM_ISCSI_RX_STATS].size) 2653091be06SPrabhakar Kushwaha 2663091be06SPrabhakar Kushwaha /* Tstorm ll2 port statistics */ 2673091be06SPrabhakar Kushwaha #define TSTORM_LL2_PORT_STAT_OFFSET(port_id) \ 2683091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_LL2_PORT_STAT].base \ 2693091be06SPrabhakar Kushwaha + ((port_id) * IRO[IRO_TSTORM_LL2_PORT_STAT].m1)) 2703091be06SPrabhakar Kushwaha #define TSTORM_LL2_PORT_STAT_SIZE (IRO[IRO_TSTORM_LL2_PORT_STAT].size) 2713091be06SPrabhakar Kushwaha 2723091be06SPrabhakar Kushwaha /* Tstorm producers */ 273*e2dbc223SPrabhakar Kushwaha #define TSTORM_LL2_RX_PRODS_GTT_OFFSET(core_rx_queue_id) \ 274*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_LL2_RX_PRODS_GTT].base \ 275*e2dbc223SPrabhakar Kushwaha + ((core_rx_queue_id) * IRO[IRO_TSTORM_LL2_RX_PRODS_GTT].m1)) 276*e2dbc223SPrabhakar Kushwaha #define TSTORM_LL2_RX_PRODS_GTT_SIZE (IRO[IRO_TSTORM_LL2_RX_PRODS_GTT].size) 2773091be06SPrabhakar Kushwaha 2783091be06SPrabhakar Kushwaha /* Tstorm overlay buffer host address */ 2793091be06SPrabhakar Kushwaha #define TSTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_TSTORM_OVERLAY_BUF_ADDR].base) 2803091be06SPrabhakar Kushwaha 2813091be06SPrabhakar Kushwaha #define TSTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_TSTORM_OVERLAY_BUF_ADDR].size) 2823091be06SPrabhakar Kushwaha 283*e2dbc223SPrabhakar Kushwaha /* Tstorm LL2 packet duplication configuration. 284*e2dbc223SPrabhakar Kushwaha * Use tstorm_pkt_dup_cfg data type. 285*e2dbc223SPrabhakar Kushwaha */ 286*e2dbc223SPrabhakar Kushwaha #define TSTORM_PKT_DUPLICATION_CFG_OFFSET(pf_id) \ 287*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_PKT_DUPLICATION_CFG].base \ 288*e2dbc223SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_TSTORM_PKT_DUPLICATION_CFG].m1)) 289*e2dbc223SPrabhakar Kushwaha #define TSTORM_PKT_DUPLICATION_CFG_SIZE \ 290*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_PKT_DUPLICATION_CFG].size) 291*e2dbc223SPrabhakar Kushwaha 2923091be06SPrabhakar Kushwaha /* Tstorm port statistics */ 2933091be06SPrabhakar Kushwaha #define TSTORM_PORT_STAT_OFFSET(port_id) \ 2943091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_PORT_STAT].base \ 2953091be06SPrabhakar Kushwaha + ((port_id) * IRO[IRO_TSTORM_PORT_STAT].m1)) 2963091be06SPrabhakar Kushwaha #define TSTORM_PORT_STAT_SIZE (IRO[IRO_TSTORM_PORT_STAT].size) 2973091be06SPrabhakar Kushwaha 2983091be06SPrabhakar Kushwaha /* Tstorm error level for assert */ 2993091be06SPrabhakar Kushwaha #define TSTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 3003091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_RDMA_ASSERT_LEVEL].base \ 3013091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_TSTORM_RDMA_ASSERT_LEVEL].m1)) 3023091be06SPrabhakar Kushwaha #define TSTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_TSTORM_RDMA_ASSERT_LEVEL].size) 3033091be06SPrabhakar Kushwaha 3043091be06SPrabhakar Kushwaha /* Tstorm RDMA queue statistics */ 3053091be06SPrabhakar Kushwaha #define TSTORM_RDMA_QUEUE_STAT_OFFSET(rdma_stat_counter_id) \ 3063091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_RDMA_QUEUE_STAT].base \ 3073091be06SPrabhakar Kushwaha + ((rdma_stat_counter_id) * IRO[IRO_TSTORM_RDMA_QUEUE_STAT].m1)) 3083091be06SPrabhakar Kushwaha #define TSTORM_RDMA_QUEUE_STAT_SIZE (IRO[IRO_TSTORM_RDMA_QUEUE_STAT].size) 3093091be06SPrabhakar Kushwaha 3103091be06SPrabhakar Kushwaha /* Tstorm RoCE Event Statistics */ 3113091be06SPrabhakar Kushwaha #define TSTORM_ROCE_EVENTS_STAT_OFFSET(roce_pf_id) \ 3123091be06SPrabhakar Kushwaha (IRO[IRO_TSTORM_ROCE_EVENTS_STAT].base \ 3133091be06SPrabhakar Kushwaha + ((roce_pf_id) * IRO[IRO_TSTORM_ROCE_EVENTS_STAT].m1)) 3143091be06SPrabhakar Kushwaha #define TSTORM_ROCE_EVENTS_STAT_SIZE (IRO[IRO_TSTORM_ROCE_EVENTS_STAT].size) 3153091be06SPrabhakar Kushwaha 3163091be06SPrabhakar Kushwaha /* Tstorm (reflects M-Storm) bdq-external-producer of given function ID, 3173091be06SPrabhakar Kushwaha * BDqueue-id. 3183091be06SPrabhakar Kushwaha */ 319*e2dbc223SPrabhakar Kushwaha #define TSTORM_SCSI_BDQ_EXT_PROD_GTT_OFFSET(storage_func_id, bdq_id) \ 320*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_SCSI_BDQ_EXT_PROD_GTT].base \ 321*e2dbc223SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_TSTORM_SCSI_BDQ_EXT_PROD_GTT].m1) \ 322*e2dbc223SPrabhakar Kushwaha + ((bdq_id) * IRO[IRO_TSTORM_SCSI_BDQ_EXT_PROD_GTT].m2)) 323*e2dbc223SPrabhakar Kushwaha #define TSTORM_SCSI_BDQ_EXT_PROD_GTT_SIZE \ 324*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_SCSI_BDQ_EXT_PROD_GTT].size) 3253091be06SPrabhakar Kushwaha 3263091be06SPrabhakar Kushwaha /* Tstorm cmdq-cons of given command queue-id */ 327*e2dbc223SPrabhakar Kushwaha #define TSTORM_SCSI_CMDQ_CONS_GTT_OFFSET(cmdq_queue_id) \ 328*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_SCSI_CMDQ_CONS_GTT].base \ 329*e2dbc223SPrabhakar Kushwaha + ((cmdq_queue_id) * IRO[IRO_TSTORM_SCSI_CMDQ_CONS_GTT].m1)) 330*e2dbc223SPrabhakar Kushwaha #define TSTORM_SCSI_CMDQ_CONS_GTT_SIZE \ 331*e2dbc223SPrabhakar Kushwaha (IRO[IRO_TSTORM_SCSI_CMDQ_CONS_GTT].size) 3323091be06SPrabhakar Kushwaha 3333091be06SPrabhakar Kushwaha /* Ustorm Common Queue ring consumer */ 334*e2dbc223SPrabhakar Kushwaha #define USTORM_COMMON_QUEUE_CONS_GTT_OFFSET(queue_zone_id) \ 335*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_COMMON_QUEUE_CONS_GTT].base \ 336*e2dbc223SPrabhakar Kushwaha + ((queue_zone_id) * IRO[IRO_USTORM_COMMON_QUEUE_CONS_GTT].m1)) 337*e2dbc223SPrabhakar Kushwaha #define USTORM_COMMON_QUEUE_CONS_GTT_SIZE \ 338*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_COMMON_QUEUE_CONS_GTT].size) 3393091be06SPrabhakar Kushwaha 3403091be06SPrabhakar Kushwaha /* Ustorm Event ring consumer */ 341*e2dbc223SPrabhakar Kushwaha #define USTORM_EQE_CONS_GTT_OFFSET(pf_id) \ 342*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_EQE_CONS_GTT].base \ 343*e2dbc223SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_USTORM_EQE_CONS_GTT].m1)) 344*e2dbc223SPrabhakar Kushwaha #define USTORM_EQE_CONS_GTT_SIZE (IRO[IRO_USTORM_EQE_CONS_GTT].size) 3453091be06SPrabhakar Kushwaha 3463091be06SPrabhakar Kushwaha /* Ustorm pf statistics */ 3473091be06SPrabhakar Kushwaha #define USTORM_ETH_PF_STAT_OFFSET(pf_id) \ 3483091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_ETH_PF_STAT].base \ 3493091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_USTORM_ETH_PF_STAT].m1)) 3503091be06SPrabhakar Kushwaha #define USTORM_ETH_PF_STAT_SIZE (IRO[IRO_USTORM_ETH_PF_STAT].size) 3513091be06SPrabhakar Kushwaha 3523091be06SPrabhakar Kushwaha /* Ustorm eth queue zone */ 353*e2dbc223SPrabhakar Kushwaha #define USTORM_ETH_QUEUE_ZONE_GTT_OFFSET(queue_zone_id) \ 354*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_ETH_QUEUE_ZONE_GTT].base \ 355*e2dbc223SPrabhakar Kushwaha + ((queue_zone_id) * IRO[IRO_USTORM_ETH_QUEUE_ZONE_GTT].m1)) 356*e2dbc223SPrabhakar Kushwaha #define USTORM_ETH_QUEUE_ZONE_GTT_SIZE (IRO[IRO_USTORM_ETH_QUEUE_ZONE_GTT].size) 3573091be06SPrabhakar Kushwaha 3583091be06SPrabhakar Kushwaha /* Ustorm Final flr cleanup ack */ 359*e2dbc223SPrabhakar Kushwaha #define USTORM_FLR_FINAL_ACK_GTT_OFFSET(pf_id) \ 360*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_FLR_FINAL_ACK_GTT].base \ 361*e2dbc223SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_USTORM_FLR_FINAL_ACK_GTT].m1)) 362*e2dbc223SPrabhakar Kushwaha #define USTORM_FLR_FINAL_ACK_GTT_SIZE (IRO[IRO_USTORM_FLR_FINAL_ACK_GTT].size) 3633091be06SPrabhakar Kushwaha 3643091be06SPrabhakar Kushwaha /* Ustorm Integration Test Data */ 3653091be06SPrabhakar Kushwaha #define USTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_USTORM_INTEG_TEST_DATA].base) 3663091be06SPrabhakar Kushwaha #define USTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_USTORM_INTEG_TEST_DATA].size) 3673091be06SPrabhakar Kushwaha 3683091be06SPrabhakar Kushwaha /* Ustorm iSCSI RX stats */ 3693091be06SPrabhakar Kushwaha #define USTORM_ISCSI_RX_STATS_OFFSET(storage_func_id) \ 3703091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_ISCSI_RX_STATS].base \ 3713091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_USTORM_ISCSI_RX_STATS].m1)) 3723091be06SPrabhakar Kushwaha #define USTORM_ISCSI_RX_STATS_SIZE (IRO[IRO_USTORM_ISCSI_RX_STATS].size) 3733091be06SPrabhakar Kushwaha 3743091be06SPrabhakar Kushwaha /* Ustorm overlay buffer host address */ 3753091be06SPrabhakar Kushwaha #define USTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_USTORM_OVERLAY_BUF_ADDR].base) 3763091be06SPrabhakar Kushwaha #define USTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_USTORM_OVERLAY_BUF_ADDR].size) 3773091be06SPrabhakar Kushwaha 3783091be06SPrabhakar Kushwaha /* Ustorm queue statistics */ 3793091be06SPrabhakar Kushwaha #define USTORM_QUEUE_STAT_OFFSET(stat_counter_id) \ 3803091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_QUEUE_STAT].base \ 3813091be06SPrabhakar Kushwaha + ((stat_counter_id) * IRO[IRO_USTORM_QUEUE_STAT].m1)) 3823091be06SPrabhakar Kushwaha #define USTORM_QUEUE_STAT_SIZE (IRO[IRO_USTORM_QUEUE_STAT].size) 3833091be06SPrabhakar Kushwaha 3843091be06SPrabhakar Kushwaha /* Ustorm error level for assert */ 3853091be06SPrabhakar Kushwaha #define USTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 3863091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_RDMA_ASSERT_LEVEL].base \ 3873091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_USTORM_RDMA_ASSERT_LEVEL].m1)) 3883091be06SPrabhakar Kushwaha #define USTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_USTORM_RDMA_ASSERT_LEVEL].size) 389ee824f4bSOmkar Kulkarni 390ee824f4bSOmkar Kulkarni /* RoCE CQEs Statistics */ 391ee824f4bSOmkar Kulkarni #define USTORM_ROCE_CQE_STATS_OFFSET(roce_pf_id) \ 3923091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_ROCE_CQE_STATS].base \ 3933091be06SPrabhakar Kushwaha + ((roce_pf_id) * IRO[IRO_USTORM_ROCE_CQE_STATS].m1)) 3943091be06SPrabhakar Kushwaha #define USTORM_ROCE_CQE_STATS_SIZE (IRO[IRO_USTORM_ROCE_CQE_STATS].size) 395ee824f4bSOmkar Kulkarni 3963091be06SPrabhakar Kushwaha /* Ustorm cqe producer */ 3973091be06SPrabhakar Kushwaha #define USTORM_TOE_CQ_PROD_OFFSET(rss_id) \ 3983091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_TOE_CQ_PROD].base \ 3993091be06SPrabhakar Kushwaha + ((rss_id) * IRO[IRO_USTORM_TOE_CQ_PROD].m1)) 4003091be06SPrabhakar Kushwaha #define USTORM_TOE_CQ_PROD_SIZE (IRO[IRO_USTORM_TOE_CQ_PROD].size) 4013091be06SPrabhakar Kushwaha 4023091be06SPrabhakar Kushwaha /* Ustorm grq producer */ 4033091be06SPrabhakar Kushwaha #define USTORM_TOE_GRQ_PROD_OFFSET(pf_id) \ 4043091be06SPrabhakar Kushwaha (IRO[IRO_USTORM_TOE_GRQ_PROD].base \ 4053091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_USTORM_TOE_GRQ_PROD].m1)) 4063091be06SPrabhakar Kushwaha #define USTORM_TOE_GRQ_PROD_SIZE (IRO[IRO_USTORM_TOE_GRQ_PROD].size) 4073091be06SPrabhakar Kushwaha 4083091be06SPrabhakar Kushwaha /* Ustorm VF-PF Channel ready flag */ 409*e2dbc223SPrabhakar Kushwaha #define USTORM_VF_PF_CHANNEL_READY_GTT_OFFSET(vf_id) \ 410*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_VF_PF_CHANNEL_READY_GTT].base \ 411*e2dbc223SPrabhakar Kushwaha + ((vf_id) * IRO[IRO_USTORM_VF_PF_CHANNEL_READY_GTT].m1)) 412*e2dbc223SPrabhakar Kushwaha #define USTORM_VF_PF_CHANNEL_READY_GTT_SIZE \ 413*e2dbc223SPrabhakar Kushwaha (IRO[IRO_USTORM_VF_PF_CHANNEL_READY_GTT].size) 4143091be06SPrabhakar Kushwaha 4153091be06SPrabhakar Kushwaha /* Xstorm queue zone */ 416*e2dbc223SPrabhakar Kushwaha #define XSTORM_ETH_QUEUE_ZONE_GTT_OFFSET(queue_id) \ 417*e2dbc223SPrabhakar Kushwaha (IRO[IRO_XSTORM_ETH_QUEUE_ZONE_GTT].base \ 418*e2dbc223SPrabhakar Kushwaha + ((queue_id) * IRO[IRO_XSTORM_ETH_QUEUE_ZONE_GTT].m1)) 419*e2dbc223SPrabhakar Kushwaha #define XSTORM_ETH_QUEUE_ZONE_GTT_SIZE (IRO[IRO_XSTORM_ETH_QUEUE_ZONE_GTT].size) 4203091be06SPrabhakar Kushwaha 4213091be06SPrabhakar Kushwaha /* Xstorm Integration Test Data */ 4223091be06SPrabhakar Kushwaha #define XSTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_XSTORM_INTEG_TEST_DATA].base) 4233091be06SPrabhakar Kushwaha #define XSTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_XSTORM_INTEG_TEST_DATA].size) 4243091be06SPrabhakar Kushwaha 4253091be06SPrabhakar Kushwaha /* Xstorm iSCSI TX stats */ 4263091be06SPrabhakar Kushwaha #define XSTORM_ISCSI_TX_STATS_OFFSET(storage_func_id) \ 4273091be06SPrabhakar Kushwaha (IRO[IRO_XSTORM_ISCSI_TX_STATS].base \ 4283091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_XSTORM_ISCSI_TX_STATS].m1)) 4293091be06SPrabhakar Kushwaha #define XSTORM_ISCSI_TX_STATS_SIZE (IRO[IRO_XSTORM_ISCSI_TX_STATS].size) 4303091be06SPrabhakar Kushwaha 4313091be06SPrabhakar Kushwaha /* Xstorm iWARP rxmit stats */ 4323091be06SPrabhakar Kushwaha #define XSTORM_IWARP_RXMIT_STATS_OFFSET(pf_id) \ 4333091be06SPrabhakar Kushwaha (IRO[IRO_XSTORM_IWARP_RXMIT_STATS].base \ 4343091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_XSTORM_IWARP_RXMIT_STATS].m1)) 4353091be06SPrabhakar Kushwaha #define XSTORM_IWARP_RXMIT_STATS_SIZE (IRO[IRO_XSTORM_IWARP_RXMIT_STATS].size) 4363091be06SPrabhakar Kushwaha 4373091be06SPrabhakar Kushwaha /* Xstorm overlay buffer host address */ 4383091be06SPrabhakar Kushwaha #define XSTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_XSTORM_OVERLAY_BUF_ADDR].base) 4393091be06SPrabhakar Kushwaha #define XSTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_XSTORM_OVERLAY_BUF_ADDR].size) 4403091be06SPrabhakar Kushwaha 4413091be06SPrabhakar Kushwaha /* Xstorm common PQ info */ 4423091be06SPrabhakar Kushwaha #define XSTORM_PQ_INFO_OFFSET(pq_id) \ 4433091be06SPrabhakar Kushwaha (IRO[IRO_XSTORM_PQ_INFO].base \ 4443091be06SPrabhakar Kushwaha + ((pq_id) * IRO[IRO_XSTORM_PQ_INFO].m1)) 4453091be06SPrabhakar Kushwaha #define XSTORM_PQ_INFO_SIZE (IRO[IRO_XSTORM_PQ_INFO].size) 4463091be06SPrabhakar Kushwaha 4473091be06SPrabhakar Kushwaha /* Xstorm error level for assert */ 4483091be06SPrabhakar Kushwaha #define XSTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 4493091be06SPrabhakar Kushwaha (IRO[IRO_XSTORM_RDMA_ASSERT_LEVEL].base \ 4503091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_XSTORM_RDMA_ASSERT_LEVEL].m1)) 4513091be06SPrabhakar Kushwaha #define XSTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_XSTORM_RDMA_ASSERT_LEVEL].size) 4523091be06SPrabhakar Kushwaha 4533091be06SPrabhakar Kushwaha /* Ystorm flow control mode. Use enum fw_flow_ctrl_mode */ 454*e2dbc223SPrabhakar Kushwaha #define YSTORM_FLOW_CONTROL_MODE_GTT_OFFSET \ 455*e2dbc223SPrabhakar Kushwaha (IRO[IRO_YSTORM_FLOW_CONTROL_MODE_GTT].base) 456*e2dbc223SPrabhakar Kushwaha #define YSTORM_FLOW_CONTROL_MODE_GTT_SIZE \ 457*e2dbc223SPrabhakar Kushwaha (IRO[IRO_YSTORM_FLOW_CONTROL_MODE_GTT].size) 4583091be06SPrabhakar Kushwaha 4593091be06SPrabhakar Kushwaha /* Ystorm Integration Test Data */ 4603091be06SPrabhakar Kushwaha #define YSTORM_INTEG_TEST_DATA_OFFSET (IRO[IRO_YSTORM_INTEG_TEST_DATA].base) 4613091be06SPrabhakar Kushwaha #define YSTORM_INTEG_TEST_DATA_SIZE (IRO[IRO_YSTORM_INTEG_TEST_DATA].size) 4623091be06SPrabhakar Kushwaha 4633091be06SPrabhakar Kushwaha /* Ystorm iSCSI TX stats */ 4643091be06SPrabhakar Kushwaha #define YSTORM_ISCSI_TX_STATS_OFFSET(storage_func_id) \ 4653091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_ISCSI_TX_STATS].base \ 4663091be06SPrabhakar Kushwaha + ((storage_func_id) * IRO[IRO_YSTORM_ISCSI_TX_STATS].m1)) 4673091be06SPrabhakar Kushwaha #define YSTORM_ISCSI_TX_STATS_SIZE (IRO[IRO_YSTORM_ISCSI_TX_STATS].size) 4683091be06SPrabhakar Kushwaha 4693091be06SPrabhakar Kushwaha /* Ystorm overlay buffer host address */ 4703091be06SPrabhakar Kushwaha #define YSTORM_OVERLAY_BUF_ADDR_OFFSET (IRO[IRO_YSTORM_OVERLAY_BUF_ADDR].base) 4713091be06SPrabhakar Kushwaha #define YSTORM_OVERLAY_BUF_ADDR_SIZE (IRO[IRO_YSTORM_OVERLAY_BUF_ADDR].size) 4723091be06SPrabhakar Kushwaha 4733091be06SPrabhakar Kushwaha /* Ystorm error level for assert */ 4743091be06SPrabhakar Kushwaha #define YSTORM_RDMA_ASSERT_LEVEL_OFFSET(pf_id) \ 4753091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_RDMA_ASSERT_LEVEL].base \ 4763091be06SPrabhakar Kushwaha + ((pf_id) * IRO[IRO_YSTORM_RDMA_ASSERT_LEVEL].m1)) 4773091be06SPrabhakar Kushwaha #define YSTORM_RDMA_ASSERT_LEVEL_SIZE (IRO[IRO_YSTORM_RDMA_ASSERT_LEVEL].size) 4783091be06SPrabhakar Kushwaha 4793091be06SPrabhakar Kushwaha /* DCQCN Received Statistics */ 4803091be06SPrabhakar Kushwaha #define YSTORM_ROCE_DCQCN_RECEIVED_STATS_OFFSET(roce_pf_id) \ 4813091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_ROCE_DCQCN_RECEIVED_STATS].base \ 4823091be06SPrabhakar Kushwaha + ((roce_pf_id) * IRO[IRO_YSTORM_ROCE_DCQCN_RECEIVED_STATS].m1)) 4833091be06SPrabhakar Kushwaha #define YSTORM_ROCE_DCQCN_RECEIVED_STATS_SIZE \ 4843091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_ROCE_DCQCN_RECEIVED_STATS].size) 4853091be06SPrabhakar Kushwaha 4863091be06SPrabhakar Kushwaha /* RoCE Error Statistics */ 4873091be06SPrabhakar Kushwaha #define YSTORM_ROCE_ERROR_STATS_OFFSET(roce_pf_id) \ 4883091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_ROCE_ERROR_STATS].base \ 4893091be06SPrabhakar Kushwaha + ((roce_pf_id) * IRO[IRO_YSTORM_ROCE_ERROR_STATS].m1)) 4903091be06SPrabhakar Kushwaha #define YSTORM_ROCE_ERROR_STATS_SIZE (IRO[IRO_YSTORM_ROCE_ERROR_STATS].size) 4913091be06SPrabhakar Kushwaha 4923091be06SPrabhakar Kushwaha /* Ystorm cqe producer */ 4933091be06SPrabhakar Kushwaha #define YSTORM_TOE_CQ_PROD_OFFSET(rss_id) \ 4943091be06SPrabhakar Kushwaha (IRO[IRO_YSTORM_TOE_CQ_PROD].base \ 4953091be06SPrabhakar Kushwaha + ((rss_id) * IRO[IRO_YSTORM_TOE_CQ_PROD].m1)) 4963091be06SPrabhakar Kushwaha #define YSTORM_TOE_CQ_PROD_SIZE (IRO[IRO_YSTORM_TOE_CQ_PROD].size) 4973091be06SPrabhakar Kushwaha 4983091be06SPrabhakar Kushwaha /* Per-chip offsets in iro_arr in dwords */ 4993091be06SPrabhakar Kushwaha #define E4_IRO_ARR_OFFSET 0 500ee824f4bSOmkar Kulkarni #endif 501