1316485Sdavidcs/* 2316485Sdavidcs * Copyright (c) 2017-2018 Cavium, Inc. 3316485Sdavidcs * All rights reserved. 4316485Sdavidcs * 5316485Sdavidcs * Redistribution and use in source and binary forms, with or without 6316485Sdavidcs * modification, are permitted provided that the following conditions 7316485Sdavidcs * are met: 8316485Sdavidcs * 9316485Sdavidcs * 1. Redistributions of source code must retain the above copyright 10316485Sdavidcs * notice, this list of conditions and the following disclaimer. 11316485Sdavidcs * 2. Redistributions in binary form must reproduce the above copyright 12316485Sdavidcs * notice, this list of conditions and the following disclaimer in the 13316485Sdavidcs * documentation and/or other materials provided with the distribution. 14316485Sdavidcs * 15316485Sdavidcs * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16316485Sdavidcs * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17316485Sdavidcs * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18316485Sdavidcs * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 19316485Sdavidcs * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 20316485Sdavidcs * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21316485Sdavidcs * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22316485Sdavidcs * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23316485Sdavidcs * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24316485Sdavidcs * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25316485Sdavidcs * POSSIBILITY OF SUCH DAMAGE. 26316485Sdavidcs * 27316485Sdavidcs * $FreeBSD: stable/11/sys/dev/qlnx/qlnxe/ecore_hsi_iscsi.h 337517 2018-08-09 01:17:35Z davidcs $ 28316485Sdavidcs * 29316485Sdavidcs */ 30316485Sdavidcs 31316485Sdavidcs#ifndef __ECORE_HSI_ISCSI__ 32316485Sdavidcs#define __ECORE_HSI_ISCSI__ 33316485Sdavidcs/****************************************/ 34316485Sdavidcs/* Add include to common storage target */ 35316485Sdavidcs/****************************************/ 36316485Sdavidcs#include "storage_common.h" 37316485Sdavidcs 38316485Sdavidcs/*************************************************************************/ 39316485Sdavidcs/* Add include to common iSCSI target for both eCore and protocol driver */ 40316485Sdavidcs/************************************************************************/ 41316485Sdavidcs#include "iscsi_common.h" 42316485Sdavidcs 43316485Sdavidcs 44316485Sdavidcs/* 45316485Sdavidcs * The iscsi storm connection context of Ystorm 46316485Sdavidcs */ 47316485Sdavidcsstruct ystorm_iscsi_conn_st_ctx 48316485Sdavidcs{ 49337517Sdavidcs __le32 reserved[8]; 50316485Sdavidcs}; 51316485Sdavidcs 52316485Sdavidcs/* 53316485Sdavidcs * Combined iSCSI and TCP storm connection of Pstorm 54316485Sdavidcs */ 55316485Sdavidcsstruct pstorm_iscsi_tcp_conn_st_ctx 56316485Sdavidcs{ 57316485Sdavidcs __le32 tcp[32]; 58316485Sdavidcs __le32 iscsi[4]; 59316485Sdavidcs}; 60316485Sdavidcs 61316485Sdavidcs/* 62316485Sdavidcs * The combined tcp and iscsi storm context of Xstorm 63316485Sdavidcs */ 64316485Sdavidcsstruct xstorm_iscsi_tcp_conn_st_ctx 65316485Sdavidcs{ 66316485Sdavidcs __le32 reserved_tcp[4]; 67337517Sdavidcs __le32 reserved_iscsi[44]; 68316485Sdavidcs}; 69316485Sdavidcs 70316485Sdavidcsstruct e4_xstorm_iscsi_conn_ag_ctx 71316485Sdavidcs{ 72316485Sdavidcs u8 cdu_validation /* cdu_validation */; 73316485Sdavidcs u8 state /* state */; 74316485Sdavidcs u8 flags0; 75316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1 /* exist_in_qm0 */ 76316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0 77316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM1_MASK 0x1 /* exist_in_qm1 */ 78316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM1_SHIFT 1 79316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED1_MASK 0x1 /* exist_in_qm2 */ 80316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED1_SHIFT 2 81316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1 /* exist_in_qm3 */ 82316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3 83316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT4_MASK 0x1 /* bit4 */ 84316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT4_SHIFT 4 85316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED2_MASK 0x1 /* cf_array_active */ 86316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED2_SHIFT 5 87316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT6_MASK 0x1 /* bit6 */ 88316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT6_SHIFT 6 89316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT7_MASK 0x1 /* bit7 */ 90316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT7_SHIFT 7 91316485Sdavidcs u8 flags1; 92316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT8_MASK 0x1 /* bit8 */ 93316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT8_SHIFT 0 94316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT9_MASK 0x1 /* bit9 */ 95316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT9_SHIFT 1 96316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT10_MASK 0x1 /* bit10 */ 97316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT10_SHIFT 2 98316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT11_MASK 0x1 /* bit11 */ 99316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT11_SHIFT 3 100316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT12_MASK 0x1 /* bit12 */ 101316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT12_SHIFT 4 102316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT13_MASK 0x1 /* bit13 */ 103316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT13_SHIFT 5 104316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT14_MASK 0x1 /* bit14 */ 105316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT14_SHIFT 6 106316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TX_TRUNCATE_MASK 0x1 /* bit15 */ 107316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TX_TRUNCATE_SHIFT 7 108316485Sdavidcs u8 flags2; 109316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 110316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 0 111316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* timer1cf */ 112316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 2 113316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* timer2cf */ 114316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 4 115316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3 /* timer_stop_all */ 116316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 6 117316485Sdavidcs u8 flags3; 118316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 119316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 0 120316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 121316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 2 122316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 123316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 4 124316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF7_MASK 0x3 /* cf7 */ 125316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF7_SHIFT 6 126316485Sdavidcs u8 flags4; 127316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF8_MASK 0x3 /* cf8 */ 128316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF8_SHIFT 0 129316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF9_MASK 0x3 /* cf9 */ 130316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF9_SHIFT 2 131316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF10_MASK 0x3 /* cf10 */ 132316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF10_SHIFT 4 133316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF11_MASK 0x3 /* cf11 */ 134316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF11_SHIFT 6 135316485Sdavidcs u8 flags5; 136316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF12_MASK 0x3 /* cf12 */ 137316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF12_SHIFT 0 138316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF13_MASK 0x3 /* cf13 */ 139316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF13_SHIFT 2 140316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF14_MASK 0x3 /* cf14 */ 141316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF14_SHIFT 4 142316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_MASK 0x3 /* cf15 */ 143316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_SHIFT 6 144316485Sdavidcs u8 flags6; 145316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF16_MASK 0x3 /* cf16 */ 146316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF16_SHIFT 0 147316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF17_MASK 0x3 /* cf_array_cf */ 148316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF17_SHIFT 2 149316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF18_MASK 0x3 /* cf18 */ 150316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF18_SHIFT 4 151316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_MASK 0x3 /* cf19 */ 152316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_SHIFT 6 153316485Sdavidcs u8 flags7; 154316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_MASK 0x3 /* cf20 */ 155316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_SHIFT 0 156316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_MASK 0x3 /* cf21 */ 157316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_SHIFT 2 158316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_MASK 0x3 /* cf22 */ 159316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_SHIFT 4 160316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 161316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 6 162316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 163316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 7 164316485Sdavidcs u8 flags8; 165316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 166316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 0 167316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1 /* cf3en */ 168316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 1 169316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 170316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 2 171316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 172316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 3 173316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 174316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 4 175316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF7EN_MASK 0x1 /* cf7en */ 176316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF7EN_SHIFT 5 177316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF8EN_MASK 0x1 /* cf8en */ 178316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF8EN_SHIFT 6 179316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF9EN_MASK 0x1 /* cf9en */ 180316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF9EN_SHIFT 7 181316485Sdavidcs u8 flags9; 182316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF10EN_MASK 0x1 /* cf10en */ 183316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF10EN_SHIFT 0 184316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF11EN_MASK 0x1 /* cf11en */ 185316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF11EN_SHIFT 1 186316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF12EN_MASK 0x1 /* cf12en */ 187316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF12EN_SHIFT 2 188316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF13EN_MASK 0x1 /* cf13en */ 189316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF13EN_SHIFT 3 190316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF14EN_MASK 0x1 /* cf14en */ 191316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF14EN_SHIFT 4 192316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_EN_MASK 0x1 /* cf15en */ 193316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_EN_SHIFT 5 194316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF16EN_MASK 0x1 /* cf16en */ 195316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF16EN_SHIFT 6 196316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF17EN_MASK 0x1 /* cf_array_cf_en */ 197316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF17EN_SHIFT 7 198316485Sdavidcs u8 flags10; 199316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF18EN_MASK 0x1 /* cf18en */ 200316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_CF18EN_SHIFT 0 201316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_EN_MASK 0x1 /* cf19en */ 202316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_EN_SHIFT 1 203316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_EN_MASK 0x1 /* cf20en */ 204316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_EN_SHIFT 2 205316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_EN_MASK 0x1 /* cf21en */ 206316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_EN_SHIFT 3 207316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1 /* cf22en */ 208316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4 209316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_EN_MASK 0x1 /* cf23en */ 210316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_EN_SHIFT 5 211316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 212316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 6 213316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MORE_TO_SEND_DEC_RULE_EN_MASK 0x1 /* rule1en */ 214316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_MORE_TO_SEND_DEC_RULE_EN_SHIFT 7 215316485Sdavidcs u8 flags11; 216316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TX_BLOCKED_EN_MASK 0x1 /* rule2en */ 217316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_TX_BLOCKED_EN_SHIFT 0 218316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 219316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 1 220316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED3_MASK 0x1 /* rule4en */ 221316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RESERVED3_SHIFT 2 222316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 223316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 3 224316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 225316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 4 226316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 227316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 5 228316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED1_MASK 0x1 /* rule8en */ 229316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED1_SHIFT 6 230316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE9EN_MASK 0x1 /* rule9en */ 231316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE9EN_SHIFT 7 232316485Sdavidcs u8 flags12; 233316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SQ_DEC_RULE_EN_MASK 0x1 /* rule10en */ 234316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_SQ_DEC_RULE_EN_SHIFT 0 235316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE11EN_MASK 0x1 /* rule11en */ 236316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE11EN_SHIFT 1 237316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED2_MASK 0x1 /* rule12en */ 238316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED2_SHIFT 2 239316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED3_MASK 0x1 /* rule13en */ 240316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED3_SHIFT 3 241316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE14EN_MASK 0x1 /* rule14en */ 242316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE14EN_SHIFT 4 243316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE15EN_MASK 0x1 /* rule15en */ 244316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE15EN_SHIFT 5 245316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE16EN_MASK 0x1 /* rule16en */ 246316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE16EN_SHIFT 6 247316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE17EN_MASK 0x1 /* rule17en */ 248316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_RULE17EN_SHIFT 7 249316485Sdavidcs u8 flags13; 250316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_R2TQ_DEC_RULE_EN_MASK 0x1 /* rule18en */ 251316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_R2TQ_DEC_RULE_EN_SHIFT 0 252316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_HQ_DEC_RULE_EN_MASK 0x1 /* rule19en */ 253316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_HQ_DEC_RULE_EN_SHIFT 1 254316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED4_MASK 0x1 /* rule20en */ 255316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED4_SHIFT 2 256316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED5_MASK 0x1 /* rule21en */ 257316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED5_SHIFT 3 258316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED6_MASK 0x1 /* rule22en */ 259316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED6_SHIFT 4 260316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED7_MASK 0x1 /* rule23en */ 261316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED7_SHIFT 5 262316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED8_MASK 0x1 /* rule24en */ 263316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED8_SHIFT 6 264316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED9_MASK 0x1 /* rule25en */ 265316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED9_SHIFT 7 266316485Sdavidcs u8 flags14; 267316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT16_MASK 0x1 /* bit16 */ 268316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT16_SHIFT 0 269316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT17_MASK 0x1 /* bit17 */ 270316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT17_SHIFT 1 271316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT18_MASK 0x1 /* bit18 */ 272316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT18_SHIFT 2 273316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT19_MASK 0x1 /* bit19 */ 274316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT19_SHIFT 3 275316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT20_MASK 0x1 /* bit20 */ 276316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_BIT20_SHIFT 4 277316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DUMMY_READ_DONE_MASK 0x1 /* bit21 */ 278316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_DUMMY_READ_DONE_SHIFT 5 279316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_MASK 0x3 /* cf23 */ 280316485Sdavidcs#define E4_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_SHIFT 6 281316485Sdavidcs u8 byte2 /* byte2 */; 282316485Sdavidcs __le16 physical_q0 /* physical_q0 */; 283316485Sdavidcs __le16 physical_q1 /* physical_q1 */; 284316485Sdavidcs __le16 dummy_dorq_var /* physical_q2 */; 285316485Sdavidcs __le16 sq_cons /* word3 */; 286316485Sdavidcs __le16 sq_prod /* word4 */; 287316485Sdavidcs __le16 word5 /* word5 */; 288316485Sdavidcs __le16 slow_io_total_data_tx_update /* conn_dpi */; 289316485Sdavidcs u8 byte3 /* byte3 */; 290316485Sdavidcs u8 byte4 /* byte4 */; 291316485Sdavidcs u8 byte5 /* byte5 */; 292316485Sdavidcs u8 byte6 /* byte6 */; 293316485Sdavidcs __le32 reg0 /* reg0 */; 294316485Sdavidcs __le32 reg1 /* reg1 */; 295316485Sdavidcs __le32 reg2 /* reg2 */; 296316485Sdavidcs __le32 more_to_send_seq /* reg3 */; 297316485Sdavidcs __le32 reg4 /* reg4 */; 298316485Sdavidcs __le32 reg5 /* cf_array0 */; 299316485Sdavidcs __le32 hq_scan_next_relevant_ack /* cf_array1 */; 300316485Sdavidcs __le16 r2tq_prod /* word7 */; 301316485Sdavidcs __le16 r2tq_cons /* word8 */; 302316485Sdavidcs __le16 hq_prod /* word9 */; 303316485Sdavidcs __le16 hq_cons /* word10 */; 304316485Sdavidcs __le32 remain_seq /* reg7 */; 305316485Sdavidcs __le32 bytes_to_next_pdu /* reg8 */; 306316485Sdavidcs __le32 hq_tcp_seq /* reg9 */; 307316485Sdavidcs u8 byte7 /* byte7 */; 308316485Sdavidcs u8 byte8 /* byte8 */; 309316485Sdavidcs u8 byte9 /* byte9 */; 310316485Sdavidcs u8 byte10 /* byte10 */; 311316485Sdavidcs u8 byte11 /* byte11 */; 312316485Sdavidcs u8 byte12 /* byte12 */; 313316485Sdavidcs u8 byte13 /* byte13 */; 314316485Sdavidcs u8 byte14 /* byte14 */; 315316485Sdavidcs u8 byte15 /* byte15 */; 316316485Sdavidcs u8 e5_reserved /* e5_reserved */; 317316485Sdavidcs __le16 word11 /* word11 */; 318316485Sdavidcs __le32 reg10 /* reg10 */; 319316485Sdavidcs __le32 reg11 /* reg11 */; 320316485Sdavidcs __le32 exp_stat_sn /* reg12 */; 321316485Sdavidcs __le32 ongoing_fast_rxmit_seq /* reg13 */; 322316485Sdavidcs __le32 reg14 /* reg14 */; 323316485Sdavidcs __le32 reg15 /* reg15 */; 324316485Sdavidcs __le32 reg16 /* reg16 */; 325316485Sdavidcs __le32 reg17 /* reg17 */; 326316485Sdavidcs}; 327316485Sdavidcs 328316485Sdavidcsstruct e4_tstorm_iscsi_conn_ag_ctx 329316485Sdavidcs{ 330316485Sdavidcs u8 reserved0 /* cdu_validation */; 331316485Sdavidcs u8 state /* state */; 332316485Sdavidcs u8 flags0; 333316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1 /* exist_in_qm0 */ 334316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0 335316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 336316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 337316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT2_MASK 0x1 /* bit2 */ 338316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT2_SHIFT 2 339316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT3_MASK 0x1 /* bit3 */ 340316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT3_SHIFT 3 341316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT4_MASK 0x1 /* bit4 */ 342316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT4_SHIFT 4 343316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT5_MASK 0x1 /* bit5 */ 344316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_BIT5_SHIFT 5 345316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 346316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 6 347316485Sdavidcs u8 flags1; 348316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_MASK 0x3 /* timer1cf */ 349316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_SHIFT 0 350316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_MASK 0x3 /* timer2cf */ 351316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_SHIFT 2 352316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3 /* timer_stop_all */ 353316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 4 354316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 355316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 6 356316485Sdavidcs u8 flags2; 357316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 358316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 0 359316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 360316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 2 361316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF7_MASK 0x3 /* cf7 */ 362316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF7_SHIFT 4 363316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF8_MASK 0x3 /* cf8 */ 364316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF8_SHIFT 6 365316485Sdavidcs u8 flags3; 366316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_MASK 0x3 /* cf9 */ 367316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_SHIFT 0 368316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF10_MASK 0x3 /* cf10 */ 369316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF10_SHIFT 2 370316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 371316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 4 372316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_EN_MASK 0x1 /* cf1en */ 373316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_EN_SHIFT 5 374316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_EN_MASK 0x1 /* cf2en */ 375316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_EN_SHIFT 6 376316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1 /* cf3en */ 377316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 7 378316485Sdavidcs u8 flags4; 379316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 380316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 0 381316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 382316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 1 383316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 384316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 2 385316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF7EN_MASK 0x1 /* cf7en */ 386316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF7EN_SHIFT 3 387316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF8EN_MASK 0x1 /* cf8en */ 388316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF8EN_SHIFT 4 389316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1 /* cf9en */ 390316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 5 391316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF10EN_MASK 0x1 /* cf10en */ 392316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_CF10EN_SHIFT 6 393316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 394316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 7 395316485Sdavidcs u8 flags5; 396316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 397316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 0 398316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 399316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 1 400316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 401316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 2 402316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 403316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 3 404316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 405316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 4 406316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 407316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 5 408316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 409316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 6 410316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE8EN_MASK 0x1 /* rule8en */ 411316485Sdavidcs#define E4_TSTORM_ISCSI_CONN_AG_CTX_RULE8EN_SHIFT 7 412316485Sdavidcs __le32 reg0 /* reg0 */; 413316485Sdavidcs __le32 reg1 /* reg1 */; 414337517Sdavidcs __le32 rx_tcp_checksum_err_cnt /* reg2 */; 415316485Sdavidcs __le32 reg3 /* reg3 */; 416316485Sdavidcs __le32 reg4 /* reg4 */; 417316485Sdavidcs __le32 reg5 /* reg5 */; 418316485Sdavidcs __le32 reg6 /* reg6 */; 419316485Sdavidcs __le32 reg7 /* reg7 */; 420316485Sdavidcs __le32 reg8 /* reg8 */; 421316485Sdavidcs u8 cid_offload_cnt /* byte2 */; 422316485Sdavidcs u8 byte3 /* byte3 */; 423316485Sdavidcs __le16 word0 /* word0 */; 424316485Sdavidcs}; 425316485Sdavidcs 426316485Sdavidcsstruct e4_ustorm_iscsi_conn_ag_ctx 427316485Sdavidcs{ 428316485Sdavidcs u8 byte0 /* cdu_validation */; 429316485Sdavidcs u8 byte1 /* state */; 430316485Sdavidcs u8 flags0; 431316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 432316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 433316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 434316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 435316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 436316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 437316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* timer1cf */ 438316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 439316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* timer2cf */ 440316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 441316485Sdavidcs u8 flags1; 442316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF3_MASK 0x3 /* timer_stop_all */ 443316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF3_SHIFT 0 444316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 445316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 2 446316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 447316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 4 448316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 449316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 6 450316485Sdavidcs u8 flags2; 451316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 452316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 453316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 454316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 455316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 456316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 457316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF3EN_MASK 0x1 /* cf3en */ 458316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF3EN_SHIFT 3 459316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 460316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 4 461316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 462316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 5 463316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 464316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 6 465316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 466316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 7 467316485Sdavidcs u8 flags3; 468316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 469316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 0 470316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 471316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 1 472316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 473316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 2 474316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 475316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 3 476316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 477316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 4 478316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 479316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 5 480316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 481316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 6 482316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE8EN_MASK 0x1 /* rule8en */ 483316485Sdavidcs#define E4_USTORM_ISCSI_CONN_AG_CTX_RULE8EN_SHIFT 7 484316485Sdavidcs u8 byte2 /* byte2 */; 485316485Sdavidcs u8 byte3 /* byte3 */; 486316485Sdavidcs __le16 word0 /* conn_dpi */; 487316485Sdavidcs __le16 word1 /* word1 */; 488316485Sdavidcs __le32 reg0 /* reg0 */; 489316485Sdavidcs __le32 reg1 /* reg1 */; 490316485Sdavidcs __le32 reg2 /* reg2 */; 491316485Sdavidcs __le32 reg3 /* reg3 */; 492316485Sdavidcs __le16 word2 /* word2 */; 493316485Sdavidcs __le16 word3 /* word3 */; 494316485Sdavidcs}; 495316485Sdavidcs 496316485Sdavidcs/* 497316485Sdavidcs * The iscsi storm connection context of Tstorm 498316485Sdavidcs */ 499316485Sdavidcsstruct tstorm_iscsi_conn_st_ctx 500316485Sdavidcs{ 501337517Sdavidcs __le32 reserved[44]; 502316485Sdavidcs}; 503316485Sdavidcs 504316485Sdavidcsstruct e4_mstorm_iscsi_conn_ag_ctx 505316485Sdavidcs{ 506316485Sdavidcs u8 reserved /* cdu_validation */; 507316485Sdavidcs u8 state /* state */; 508316485Sdavidcs u8 flags0; 509316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 510316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 511316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 512316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 513316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* cf0 */ 514316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 515316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* cf1 */ 516316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 517316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* cf2 */ 518316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 519316485Sdavidcs u8 flags1; 520316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 521316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 522316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 523316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 524316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 525316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 526316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 527316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 3 528316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 529316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 4 530316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 531316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 5 532316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 533316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 6 534316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 535316485Sdavidcs#define E4_MSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 7 536316485Sdavidcs __le16 word0 /* word0 */; 537316485Sdavidcs __le16 word1 /* word1 */; 538316485Sdavidcs __le32 reg0 /* reg0 */; 539316485Sdavidcs __le32 reg1 /* reg1 */; 540316485Sdavidcs}; 541316485Sdavidcs 542316485Sdavidcs/* 543316485Sdavidcs * Combined iSCSI and TCP storm connection of Mstorm 544316485Sdavidcs */ 545316485Sdavidcsstruct mstorm_iscsi_tcp_conn_st_ctx 546316485Sdavidcs{ 547316485Sdavidcs __le32 reserved_tcp[20]; 548337517Sdavidcs __le32 reserved_iscsi[12]; 549316485Sdavidcs}; 550316485Sdavidcs 551316485Sdavidcs/* 552316485Sdavidcs * The iscsi storm context of Ustorm 553316485Sdavidcs */ 554316485Sdavidcsstruct ustorm_iscsi_conn_st_ctx 555316485Sdavidcs{ 556316485Sdavidcs __le32 reserved[52]; 557316485Sdavidcs}; 558316485Sdavidcs 559316485Sdavidcs/* 560316485Sdavidcs * iscsi connection context 561316485Sdavidcs */ 562320164Sdavidcsstruct e4_iscsi_conn_context 563316485Sdavidcs{ 564316485Sdavidcs struct ystorm_iscsi_conn_st_ctx ystorm_st_context /* ystorm storm context */; 565316485Sdavidcs struct pstorm_iscsi_tcp_conn_st_ctx pstorm_st_context /* pstorm storm context */; 566316485Sdavidcs struct regpair pstorm_st_padding[2] /* padding */; 567316485Sdavidcs struct pb_context xpb2_context /* xpb2 context */; 568316485Sdavidcs struct xstorm_iscsi_tcp_conn_st_ctx xstorm_st_context /* xstorm storm context */; 569316485Sdavidcs struct regpair xstorm_st_padding[2] /* padding */; 570316485Sdavidcs struct e4_xstorm_iscsi_conn_ag_ctx xstorm_ag_context /* xstorm aggregative context */; 571316485Sdavidcs struct e4_tstorm_iscsi_conn_ag_ctx tstorm_ag_context /* tstorm aggregative context */; 572316485Sdavidcs struct regpair tstorm_ag_padding[2] /* padding */; 573316485Sdavidcs struct timers_context timer_context /* timer context */; 574316485Sdavidcs struct e4_ustorm_iscsi_conn_ag_ctx ustorm_ag_context /* ustorm aggregative context */; 575316485Sdavidcs struct pb_context upb_context /* upb context */; 576316485Sdavidcs struct tstorm_iscsi_conn_st_ctx tstorm_st_context /* tstorm storm context */; 577316485Sdavidcs struct regpair tstorm_st_padding[2] /* padding */; 578316485Sdavidcs struct e4_mstorm_iscsi_conn_ag_ctx mstorm_ag_context /* mstorm aggregative context */; 579316485Sdavidcs struct mstorm_iscsi_tcp_conn_st_ctx mstorm_st_context /* mstorm storm context */; 580316485Sdavidcs struct ustorm_iscsi_conn_st_ctx ustorm_st_context /* ustorm storm context */; 581316485Sdavidcs}; 582316485Sdavidcs 583316485Sdavidcs 584316485Sdavidcsstruct e5_xstorm_iscsi_conn_ag_ctx 585316485Sdavidcs{ 586316485Sdavidcs u8 cdu_validation /* cdu_validation */; 587316485Sdavidcs u8 state_and_core_id /* state_and_core_id */; 588316485Sdavidcs u8 flags0; 589316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1 /* exist_in_qm0 */ 590316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0 591316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM1_MASK 0x1 /* exist_in_qm1 */ 592316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM1_SHIFT 1 593316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED1_MASK 0x1 /* exist_in_qm2 */ 594316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED1_SHIFT 2 595316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1 /* exist_in_qm3 */ 596316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3 597316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT4_MASK 0x1 /* bit4 */ 598316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT4_SHIFT 4 599316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED2_MASK 0x1 /* cf_array_active */ 600316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED2_SHIFT 5 601316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT6_MASK 0x1 /* bit6 */ 602316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT6_SHIFT 6 603316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT7_MASK 0x1 /* bit7 */ 604316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT7_SHIFT 7 605316485Sdavidcs u8 flags1; 606316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT8_MASK 0x1 /* bit8 */ 607316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT8_SHIFT 0 608316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT9_MASK 0x1 /* bit9 */ 609316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT9_SHIFT 1 610316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT10_MASK 0x1 /* bit10 */ 611316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT10_SHIFT 2 612316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT11_MASK 0x1 /* bit11 */ 613316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT11_SHIFT 3 614316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT12_MASK 0x1 /* bit12 */ 615316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT12_SHIFT 4 616316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT13_MASK 0x1 /* bit13 */ 617316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT13_SHIFT 5 618316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT14_MASK 0x1 /* bit14 */ 619316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT14_SHIFT 6 620316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TX_TRUNCATE_MASK 0x1 /* bit15 */ 621316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TX_TRUNCATE_SHIFT 7 622316485Sdavidcs u8 flags2; 623316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 624316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 0 625316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* timer1cf */ 626316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 2 627316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* timer2cf */ 628316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 4 629316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3 /* timer_stop_all */ 630316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 6 631316485Sdavidcs u8 flags3; 632316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 633316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 0 634316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 635316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 2 636316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 637316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 4 638316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF7_MASK 0x3 /* cf7 */ 639316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF7_SHIFT 6 640316485Sdavidcs u8 flags4; 641316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF8_MASK 0x3 /* cf8 */ 642316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF8_SHIFT 0 643316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF9_MASK 0x3 /* cf9 */ 644316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF9_SHIFT 2 645316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF10_MASK 0x3 /* cf10 */ 646316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF10_SHIFT 4 647316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF11_MASK 0x3 /* cf11 */ 648316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF11_SHIFT 6 649316485Sdavidcs u8 flags5; 650316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF12_MASK 0x3 /* cf12 */ 651316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF12_SHIFT 0 652316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF13_MASK 0x3 /* cf13 */ 653316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF13_SHIFT 2 654316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF14_MASK 0x3 /* cf14 */ 655316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF14_SHIFT 4 656316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_MASK 0x3 /* cf15 */ 657316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_SHIFT 6 658316485Sdavidcs u8 flags6; 659316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF16_MASK 0x3 /* cf16 */ 660316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF16_SHIFT 0 661316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF17_MASK 0x3 /* cf_array_cf */ 662316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF17_SHIFT 2 663316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF18_MASK 0x3 /* cf18 */ 664316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF18_SHIFT 4 665316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_MASK 0x3 /* cf19 */ 666316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_SHIFT 6 667316485Sdavidcs u8 flags7; 668316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_MASK 0x3 /* cf20 */ 669316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_SHIFT 0 670316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_MASK 0x3 /* cf21 */ 671316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_SHIFT 2 672316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_MASK 0x3 /* cf22 */ 673316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_SHIFT 4 674316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 675316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 6 676316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 677316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 7 678316485Sdavidcs u8 flags8; 679316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 680316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 0 681316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1 /* cf3en */ 682316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 1 683316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 684316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 2 685316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 686316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 3 687316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 688316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 4 689316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF7EN_MASK 0x1 /* cf7en */ 690316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF7EN_SHIFT 5 691316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF8EN_MASK 0x1 /* cf8en */ 692316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF8EN_SHIFT 6 693316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF9EN_MASK 0x1 /* cf9en */ 694316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF9EN_SHIFT 7 695316485Sdavidcs u8 flags9; 696316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF10EN_MASK 0x1 /* cf10en */ 697316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF10EN_SHIFT 0 698316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF11EN_MASK 0x1 /* cf11en */ 699316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF11EN_SHIFT 1 700316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF12EN_MASK 0x1 /* cf12en */ 701316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF12EN_SHIFT 2 702316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF13EN_MASK 0x1 /* cf13en */ 703316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF13EN_SHIFT 3 704316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF14EN_MASK 0x1 /* cf14en */ 705316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF14EN_SHIFT 4 706316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_EN_MASK 0x1 /* cf15en */ 707316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UPDATE_STATE_TO_BASE_CF_EN_SHIFT 5 708316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF16EN_MASK 0x1 /* cf16en */ 709316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF16EN_SHIFT 6 710316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF17EN_MASK 0x1 /* cf_array_cf_en */ 711316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF17EN_SHIFT 7 712316485Sdavidcs u8 flags10; 713316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF18EN_MASK 0x1 /* cf18en */ 714316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_CF18EN_SHIFT 0 715316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_EN_MASK 0x1 /* cf19en */ 716316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DQ_FLUSH_EN_SHIFT 1 717316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_EN_MASK 0x1 /* cf20en */ 718316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MST_XCM_Q0_FLUSH_CF_EN_SHIFT 2 719316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_EN_MASK 0x1 /* cf21en */ 720316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_UST_XCM_Q1_FLUSH_CF_EN_SHIFT 3 721316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1 /* cf22en */ 722316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4 723316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_EN_MASK 0x1 /* cf23en */ 724316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_EN_SHIFT 5 725316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 726316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 6 727316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MORE_TO_SEND_DEC_RULE_EN_MASK 0x1 /* rule1en */ 728316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_MORE_TO_SEND_DEC_RULE_EN_SHIFT 7 729316485Sdavidcs u8 flags11; 730316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TX_BLOCKED_EN_MASK 0x1 /* rule2en */ 731316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_TX_BLOCKED_EN_SHIFT 0 732316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 733316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 1 734316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED3_MASK 0x1 /* rule4en */ 735316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RESERVED3_SHIFT 2 736316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 737316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 3 738316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 739316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 4 740316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 741316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 5 742316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED1_MASK 0x1 /* rule8en */ 743316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED1_SHIFT 6 744316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE9EN_MASK 0x1 /* rule9en */ 745316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE9EN_SHIFT 7 746316485Sdavidcs u8 flags12; 747316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SQ_DEC_RULE_EN_MASK 0x1 /* rule10en */ 748316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_SQ_DEC_RULE_EN_SHIFT 0 749316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE11EN_MASK 0x1 /* rule11en */ 750316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE11EN_SHIFT 1 751316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED2_MASK 0x1 /* rule12en */ 752316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED2_SHIFT 2 753316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED3_MASK 0x1 /* rule13en */ 754316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED3_SHIFT 3 755316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE14EN_MASK 0x1 /* rule14en */ 756316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE14EN_SHIFT 4 757316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE15EN_MASK 0x1 /* rule15en */ 758316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE15EN_SHIFT 5 759316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE16EN_MASK 0x1 /* rule16en */ 760316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE16EN_SHIFT 6 761316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE17EN_MASK 0x1 /* rule17en */ 762316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_RULE17EN_SHIFT 7 763316485Sdavidcs u8 flags13; 764316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_R2TQ_DEC_RULE_EN_MASK 0x1 /* rule18en */ 765316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_R2TQ_DEC_RULE_EN_SHIFT 0 766316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_HQ_DEC_RULE_EN_MASK 0x1 /* rule19en */ 767316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_HQ_DEC_RULE_EN_SHIFT 1 768316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED4_MASK 0x1 /* rule20en */ 769316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED4_SHIFT 2 770316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED5_MASK 0x1 /* rule21en */ 771316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED5_SHIFT 3 772316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED6_MASK 0x1 /* rule22en */ 773316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED6_SHIFT 4 774316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED7_MASK 0x1 /* rule23en */ 775316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED7_SHIFT 5 776316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED8_MASK 0x1 /* rule24en */ 777316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED8_SHIFT 6 778316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED9_MASK 0x1 /* rule25en */ 779316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_A0_RESERVED9_SHIFT 7 780316485Sdavidcs u8 flags14; 781316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT16_MASK 0x1 /* bit16 */ 782316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT16_SHIFT 0 783316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT17_MASK 0x1 /* bit17 */ 784316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT17_SHIFT 1 785316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT18_MASK 0x1 /* bit18 */ 786316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT18_SHIFT 2 787316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT19_MASK 0x1 /* bit19 */ 788316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT19_SHIFT 3 789316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT20_MASK 0x1 /* bit20 */ 790316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_BIT20_SHIFT 4 791316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DUMMY_READ_DONE_MASK 0x1 /* bit21 */ 792316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_DUMMY_READ_DONE_SHIFT 5 793316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_MASK 0x3 /* cf23 */ 794316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_PROC_ONLY_CLEANUP_SHIFT 6 795316485Sdavidcs u8 byte2 /* byte2 */; 796316485Sdavidcs __le16 physical_q0 /* physical_q0 */; 797316485Sdavidcs __le16 physical_q1 /* physical_q1 */; 798316485Sdavidcs __le16 dummy_dorq_var /* physical_q2 */; 799316485Sdavidcs __le16 sq_cons /* word3 */; 800316485Sdavidcs __le16 sq_prod /* word4 */; 801316485Sdavidcs __le16 word5 /* word5 */; 802316485Sdavidcs __le16 slow_io_total_data_tx_update /* conn_dpi */; 803316485Sdavidcs u8 byte3 /* byte3 */; 804316485Sdavidcs u8 byte4 /* byte4 */; 805316485Sdavidcs u8 byte5 /* byte5 */; 806316485Sdavidcs u8 byte6 /* byte6 */; 807316485Sdavidcs __le32 reg0 /* reg0 */; 808316485Sdavidcs __le32 reg1 /* reg1 */; 809316485Sdavidcs __le32 reg2 /* reg2 */; 810316485Sdavidcs __le32 more_to_send_seq /* reg3 */; 811316485Sdavidcs __le32 reg4 /* reg4 */; 812316485Sdavidcs __le32 reg5 /* cf_array0 */; 813316485Sdavidcs __le32 hq_scan_next_relevant_ack /* cf_array1 */; 814316485Sdavidcs u8 flags15; 815316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_MASK 0x1 /* bit22 */ 816316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_SHIFT 0 817316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_MASK 0x1 /* bit23 */ 818316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_SHIFT 1 819316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_MASK 0x1 /* bit24 */ 820316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_SHIFT 2 821316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_MASK 0x3 /* cf24 */ 822316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_SHIFT 3 823316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_MASK 0x1 /* cf24en */ 824316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_SHIFT 5 825316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_MASK 0x1 /* rule26en */ 826316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_SHIFT 6 827316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED7_MASK 0x1 /* rule27en */ 828316485Sdavidcs#define E5_XSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED7_SHIFT 7 829316485Sdavidcs u8 byte7 /* byte7 */; 830316485Sdavidcs __le16 r2tq_prod /* word7 */; 831316485Sdavidcs __le16 r2tq_cons /* word8 */; 832316485Sdavidcs __le16 hq_prod /* word9 */; 833316485Sdavidcs __le16 hq_cons /* word10 */; 834316485Sdavidcs __le16 word11 /* word11 */; 835316485Sdavidcs __le32 remain_seq /* reg7 */; 836316485Sdavidcs __le32 bytes_to_next_pdu /* reg8 */; 837316485Sdavidcs __le32 hq_tcp_seq /* reg9 */; 838316485Sdavidcs u8 byte8 /* byte8 */; 839316485Sdavidcs u8 byte9 /* byte9 */; 840316485Sdavidcs u8 byte10 /* byte10 */; 841316485Sdavidcs u8 byte11 /* byte11 */; 842316485Sdavidcs u8 byte12 /* byte12 */; 843316485Sdavidcs u8 byte13 /* byte13 */; 844316485Sdavidcs u8 byte14 /* byte14 */; 845316485Sdavidcs u8 byte15 /* byte15 */; 846316485Sdavidcs __le32 reg10 /* reg10 */; 847316485Sdavidcs __le32 reg11 /* reg11 */; 848316485Sdavidcs __le32 reg12 /* reg12 */; 849316485Sdavidcs __le32 ongoing_fast_rxmit_seq /* reg13 */; 850316485Sdavidcs __le32 exp_stat_sn /* reg14 */; 851316485Sdavidcs __le32 reg15 /* reg15 */; 852316485Sdavidcs __le32 reg16 /* reg16 */; 853316485Sdavidcs __le32 reg17 /* reg17 */; 854316485Sdavidcs}; 855316485Sdavidcs 856320164Sdavidcsstruct e5_tstorm_iscsi_conn_ag_ctx 857320164Sdavidcs{ 858320164Sdavidcs u8 reserved0 /* cdu_validation */; 859320164Sdavidcs u8 state_and_core_id /* state_and_core_id */; 860320164Sdavidcs u8 flags0; 861320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1 /* exist_in_qm0 */ 862320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0 863320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 864320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 865320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT2_MASK 0x1 /* bit2 */ 866320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT2_SHIFT 2 867320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT3_MASK 0x1 /* bit3 */ 868320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT3_SHIFT 3 869320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT4_MASK 0x1 /* bit4 */ 870320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT4_SHIFT 4 871320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT5_MASK 0x1 /* bit5 */ 872320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_BIT5_SHIFT 5 873320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 874320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 6 875320164Sdavidcs u8 flags1; 876320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_MASK 0x3 /* timer1cf */ 877320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_SHIFT 0 878320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_MASK 0x3 /* timer2cf */ 879320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_SHIFT 2 880320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3 /* timer_stop_all */ 881320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 4 882320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 883320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 6 884320164Sdavidcs u8 flags2; 885320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 886320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 0 887320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 888320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 2 889320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF7_MASK 0x3 /* cf7 */ 890320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF7_SHIFT 4 891320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF8_MASK 0x3 /* cf8 */ 892320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF8_SHIFT 6 893320164Sdavidcs u8 flags3; 894320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_MASK 0x3 /* cf9 */ 895320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_SHIFT 0 896320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF10_MASK 0x3 /* cf10 */ 897320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF10_SHIFT 2 898320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 899320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 4 900320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_EN_MASK 0x1 /* cf1en */ 901320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_P2T_FLUSH_CF_EN_SHIFT 5 902320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_EN_MASK 0x1 /* cf2en */ 903320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_M2T_FLUSH_CF_EN_SHIFT 6 904320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1 /* cf3en */ 905320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 7 906320164Sdavidcs u8 flags4; 907320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 908320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 0 909320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 910320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 1 911320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 912320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 2 913320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF7EN_MASK 0x1 /* cf7en */ 914320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF7EN_SHIFT 3 915320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF8EN_MASK 0x1 /* cf8en */ 916320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF8EN_SHIFT 4 917320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1 /* cf9en */ 918320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 5 919320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF10EN_MASK 0x1 /* cf10en */ 920320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_CF10EN_SHIFT 6 921320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 922320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 7 923320164Sdavidcs u8 flags5; 924320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 925320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 0 926320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 927320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 1 928320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 929320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 2 930320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 931320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 3 932320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 933320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 4 934320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 935320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 5 936320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 937320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 6 938320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE8EN_MASK 0x1 /* rule8en */ 939320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_RULE8EN_SHIFT 7 940320164Sdavidcs u8 flags6; 941320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_MASK 0x1 /* bit6 */ 942320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_SHIFT 0 943320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_MASK 0x1 /* bit7 */ 944320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_SHIFT 1 945320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_MASK 0x1 /* bit8 */ 946320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_SHIFT 2 947320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_MASK 0x3 /* cf11 */ 948320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_SHIFT 3 949320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_MASK 0x1 /* cf11en */ 950320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_SHIFT 5 951320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_MASK 0x1 /* rule9en */ 952320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_SHIFT 6 953320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED7_MASK 0x1 /* rule10en */ 954320164Sdavidcs#define E5_TSTORM_ISCSI_CONN_AG_CTX_E4_RESERVED7_SHIFT 7 955320164Sdavidcs u8 cid_offload_cnt /* byte2 */; 956320164Sdavidcs __le16 word0 /* word0 */; 957320164Sdavidcs __le32 reg0 /* reg0 */; 958320164Sdavidcs __le32 reg1 /* reg1 */; 959320164Sdavidcs __le32 reg2 /* reg2 */; 960320164Sdavidcs __le32 reg3 /* reg3 */; 961320164Sdavidcs __le32 reg4 /* reg4 */; 962320164Sdavidcs __le32 reg5 /* reg5 */; 963320164Sdavidcs __le32 reg6 /* reg6 */; 964320164Sdavidcs __le32 reg7 /* reg7 */; 965320164Sdavidcs __le32 reg8 /* reg8 */; 966320164Sdavidcs}; 967316485Sdavidcs 968320164Sdavidcsstruct e5_ustorm_iscsi_conn_ag_ctx 969320164Sdavidcs{ 970320164Sdavidcs u8 byte0 /* cdu_validation */; 971320164Sdavidcs u8 byte1 /* state_and_core_id */; 972320164Sdavidcs u8 flags0; 973320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 974320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 975320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 976320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 977320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* timer0cf */ 978320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 979320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* timer1cf */ 980320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 981320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* timer2cf */ 982320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 983320164Sdavidcs u8 flags1; 984320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF3_MASK 0x3 /* timer_stop_all */ 985320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF3_SHIFT 0 986320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF4_MASK 0x3 /* cf4 */ 987320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF4_SHIFT 2 988320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF5_MASK 0x3 /* cf5 */ 989320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF5_SHIFT 4 990320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF6_MASK 0x3 /* cf6 */ 991320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF6_SHIFT 6 992320164Sdavidcs u8 flags2; 993320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 994320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 995320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 996320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 997320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 998320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 999320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF3EN_MASK 0x1 /* cf3en */ 1000320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF3EN_SHIFT 3 1001320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF4EN_MASK 0x1 /* cf4en */ 1002320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF4EN_SHIFT 4 1003320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF5EN_MASK 0x1 /* cf5en */ 1004320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF5EN_SHIFT 5 1005320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF6EN_MASK 0x1 /* cf6en */ 1006320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_CF6EN_SHIFT 6 1007320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 1008320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 7 1009320164Sdavidcs u8 flags3; 1010320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 1011320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 0 1012320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 1013320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 1 1014320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 1015320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 2 1016320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 1017320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 3 1018320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE5EN_MASK 0x1 /* rule5en */ 1019320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE5EN_SHIFT 4 1020320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE6EN_MASK 0x1 /* rule6en */ 1021320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE6EN_SHIFT 5 1022320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE7EN_MASK 0x1 /* rule7en */ 1023320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE7EN_SHIFT 6 1024320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE8EN_MASK 0x1 /* rule8en */ 1025320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_RULE8EN_SHIFT 7 1026320164Sdavidcs u8 flags4; 1027320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_MASK 0x1 /* bit2 */ 1028320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED1_SHIFT 0 1029320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_MASK 0x1 /* bit3 */ 1030320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED2_SHIFT 1 1031320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_MASK 0x3 /* cf7 */ 1032320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED3_SHIFT 2 1033320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_MASK 0x3 /* cf8 */ 1034320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED4_SHIFT 4 1035320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_MASK 0x1 /* cf7en */ 1036320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED5_SHIFT 6 1037320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_MASK 0x1 /* cf8en */ 1038320164Sdavidcs#define E5_USTORM_ISCSI_CONN_AG_CTX_E4_RESERVED6_SHIFT 7 1039320164Sdavidcs u8 byte2 /* byte2 */; 1040320164Sdavidcs __le16 word0 /* conn_dpi */; 1041320164Sdavidcs __le16 word1 /* word1 */; 1042320164Sdavidcs __le32 reg0 /* reg0 */; 1043320164Sdavidcs __le32 reg1 /* reg1 */; 1044320164Sdavidcs __le32 reg2 /* reg2 */; 1045320164Sdavidcs __le32 reg3 /* reg3 */; 1046320164Sdavidcs __le16 word2 /* word2 */; 1047320164Sdavidcs __le16 word3 /* word3 */; 1048320164Sdavidcs}; 1049320164Sdavidcs 1050320164Sdavidcsstruct e5_mstorm_iscsi_conn_ag_ctx 1051320164Sdavidcs{ 1052320164Sdavidcs u8 reserved /* cdu_validation */; 1053320164Sdavidcs u8 state_and_core_id /* state_and_core_id */; 1054320164Sdavidcs u8 flags0; 1055320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 1056320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 1057320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 1058320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 1059320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* cf0 */ 1060320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 1061320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* cf1 */ 1062320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 1063320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* cf2 */ 1064320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 1065320164Sdavidcs u8 flags1; 1066320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 1067320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 1068320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 1069320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 1070320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 1071320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 1072320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 1073320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 3 1074320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 1075320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 4 1076320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 1077320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 5 1078320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 1079320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 6 1080320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 1081320164Sdavidcs#define E5_MSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 7 1082320164Sdavidcs __le16 word0 /* word0 */; 1083320164Sdavidcs __le16 word1 /* word1 */; 1084320164Sdavidcs __le32 reg0 /* reg0 */; 1085320164Sdavidcs __le32 reg1 /* reg1 */; 1086320164Sdavidcs}; 1087320164Sdavidcs 1088320164Sdavidcs/* 1089320164Sdavidcs * iscsi connection context 1090320164Sdavidcs */ 1091320164Sdavidcsstruct e5_iscsi_conn_context 1092320164Sdavidcs{ 1093320164Sdavidcs struct ystorm_iscsi_conn_st_ctx ystorm_st_context /* ystorm storm context */; 1094320164Sdavidcs struct regpair ystorm_st_padding[2] /* padding */; 1095320164Sdavidcs struct pstorm_iscsi_tcp_conn_st_ctx pstorm_st_context /* pstorm storm context */; 1096320164Sdavidcs struct regpair pstorm_st_padding[2] /* padding */; 1097320164Sdavidcs struct pb_context xpb2_context /* xpb2 context */; 1098320164Sdavidcs struct xstorm_iscsi_tcp_conn_st_ctx xstorm_st_context /* xstorm storm context */; 1099320164Sdavidcs struct regpair xstorm_st_padding[2] /* padding */; 1100320164Sdavidcs struct e5_xstorm_iscsi_conn_ag_ctx xstorm_ag_context /* xstorm aggregative context */; 1101320164Sdavidcs struct e5_tstorm_iscsi_conn_ag_ctx tstorm_ag_context /* tstorm aggregative context */; 1102320164Sdavidcs struct regpair tstorm_ag_padding[2] /* padding */; 1103320164Sdavidcs struct timers_context timer_context /* timer context */; 1104320164Sdavidcs struct e5_ustorm_iscsi_conn_ag_ctx ustorm_ag_context /* ustorm aggregative context */; 1105320164Sdavidcs struct pb_context upb_context /* upb context */; 1106320164Sdavidcs struct tstorm_iscsi_conn_st_ctx tstorm_st_context /* tstorm storm context */; 1107320164Sdavidcs struct regpair tstorm_st_padding[2] /* padding */; 1108320164Sdavidcs struct e5_mstorm_iscsi_conn_ag_ctx mstorm_ag_context /* mstorm aggregative context */; 1109320164Sdavidcs struct mstorm_iscsi_tcp_conn_st_ctx mstorm_st_context /* mstorm storm context */; 1110320164Sdavidcs struct ustorm_iscsi_conn_st_ctx ustorm_st_context /* ustorm storm context */; 1111320164Sdavidcs}; 1112320164Sdavidcs 1113320164Sdavidcs 1114320164Sdavidcs/* 1115320164Sdavidcs * iSCSI init params passed by driver to FW in iSCSI init ramrod 1116320164Sdavidcs */ 1117320164Sdavidcsstruct iscsi_init_ramrod_params 1118320164Sdavidcs{ 1119320164Sdavidcs struct iscsi_spe_func_init iscsi_init_spe /* parameters initialized by the miniport and handed to bus-driver */; 1120320164Sdavidcs struct tcp_init_params tcp_init /* TCP parameters initialized by the bus-driver */; 1121320164Sdavidcs}; 1122320164Sdavidcs 1123320164Sdavidcs 1124320164Sdavidcs 1125320164Sdavidcs 1126320164Sdavidcs 1127320164Sdavidcs 1128320164Sdavidcs 1129320164Sdavidcs 1130320164Sdavidcs 1131320164Sdavidcs 1132320164Sdavidcs 1133320164Sdavidcs 1134320164Sdavidcsstruct e4_ystorm_iscsi_conn_ag_ctx 1135320164Sdavidcs{ 1136320164Sdavidcs u8 byte0 /* cdu_validation */; 1137320164Sdavidcs u8 byte1 /* state */; 1138320164Sdavidcs u8 flags0; 1139320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 1140320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 1141320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 1142320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 1143320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* cf0 */ 1144320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 1145320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* cf1 */ 1146320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 1147320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* cf2 */ 1148320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 1149320164Sdavidcs u8 flags1; 1150320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 1151320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 1152320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 1153320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 1154320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 1155320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 1156320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 1157320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 3 1158320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 1159320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 4 1160320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 1161320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 5 1162320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 1163320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 6 1164320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 1165320164Sdavidcs#define E4_YSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 7 1166320164Sdavidcs u8 byte2 /* byte2 */; 1167320164Sdavidcs u8 byte3 /* byte3 */; 1168320164Sdavidcs __le16 word0 /* word0 */; 1169320164Sdavidcs __le32 reg0 /* reg0 */; 1170320164Sdavidcs __le32 reg1 /* reg1 */; 1171320164Sdavidcs __le16 word1 /* word1 */; 1172320164Sdavidcs __le16 word2 /* word2 */; 1173320164Sdavidcs __le16 word3 /* word3 */; 1174320164Sdavidcs __le16 word4 /* word4 */; 1175320164Sdavidcs __le32 reg2 /* reg2 */; 1176320164Sdavidcs __le32 reg3 /* reg3 */; 1177320164Sdavidcs}; 1178320164Sdavidcs 1179320164Sdavidcs 1180320164Sdavidcs 1181320164Sdavidcs 1182320164Sdavidcs 1183320164Sdavidcs 1184316485Sdavidcsstruct e5_ystorm_iscsi_conn_ag_ctx 1185316485Sdavidcs{ 1186316485Sdavidcs u8 byte0 /* cdu_validation */; 1187316485Sdavidcs u8 byte1 /* state_and_core_id */; 1188316485Sdavidcs u8 flags0; 1189316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_BIT0_MASK 0x1 /* exist_in_qm0 */ 1190316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_BIT0_SHIFT 0 1191316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_BIT1_MASK 0x1 /* exist_in_qm1 */ 1192316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_BIT1_SHIFT 1 1193316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF0_MASK 0x3 /* cf0 */ 1194316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF0_SHIFT 2 1195316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF1_MASK 0x3 /* cf1 */ 1196316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF1_SHIFT 4 1197316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF2_MASK 0x3 /* cf2 */ 1198316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF2_SHIFT 6 1199316485Sdavidcs u8 flags1; 1200316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF0EN_MASK 0x1 /* cf0en */ 1201316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF0EN_SHIFT 0 1202316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF1EN_MASK 0x1 /* cf1en */ 1203316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF1EN_SHIFT 1 1204316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF2EN_MASK 0x1 /* cf2en */ 1205316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_CF2EN_SHIFT 2 1206316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE0EN_MASK 0x1 /* rule0en */ 1207316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE0EN_SHIFT 3 1208316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE1EN_MASK 0x1 /* rule1en */ 1209316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE1EN_SHIFT 4 1210316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE2EN_MASK 0x1 /* rule2en */ 1211316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE2EN_SHIFT 5 1212316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE3EN_MASK 0x1 /* rule3en */ 1213316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE3EN_SHIFT 6 1214316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE4EN_MASK 0x1 /* rule4en */ 1215316485Sdavidcs#define E5_YSTORM_ISCSI_CONN_AG_CTX_RULE4EN_SHIFT 7 1216316485Sdavidcs u8 byte2 /* byte2 */; 1217316485Sdavidcs u8 byte3 /* byte3 */; 1218316485Sdavidcs __le16 word0 /* word0 */; 1219316485Sdavidcs __le32 reg0 /* reg0 */; 1220316485Sdavidcs __le32 reg1 /* reg1 */; 1221316485Sdavidcs __le16 word1 /* word1 */; 1222316485Sdavidcs __le16 word2 /* word2 */; 1223316485Sdavidcs __le16 word3 /* word3 */; 1224316485Sdavidcs __le16 word4 /* word4 */; 1225316485Sdavidcs __le32 reg2 /* reg2 */; 1226316485Sdavidcs __le32 reg3 /* reg3 */; 1227316485Sdavidcs}; 1228316485Sdavidcs 1229316485Sdavidcs#endif /* __ECORE_HSI_ISCSI__ */ 1230