1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright 2014 Cisco Systems, Inc. All rights reserved. 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * This program is free software; you may redistribute it and/or modify 5*4882a593Smuzhiyun * it under the terms of the GNU General Public License as published by 6*4882a593Smuzhiyun * the Free Software Foundation; version 2 of the License. 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 9*4882a593Smuzhiyun * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 10*4882a593Smuzhiyun * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 11*4882a593Smuzhiyun * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 12*4882a593Smuzhiyun * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 13*4882a593Smuzhiyun * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 14*4882a593Smuzhiyun * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 15*4882a593Smuzhiyun * SOFTWARE. 16*4882a593Smuzhiyun */ 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun #ifndef _VNIC_SNIC_H_ 19*4882a593Smuzhiyun #define _VNIC_SNIC_H_ 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #define VNIC_SNIC_WQ_DESCS_MIN 64 22*4882a593Smuzhiyun #define VNIC_SNIC_WQ_DESCS_MAX 1024 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun #define VNIC_SNIC_MAXDATAFIELDSIZE_MIN 256 25*4882a593Smuzhiyun #define VNIC_SNIC_MAXDATAFIELDSIZE_MAX 2112 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #define VNIC_SNIC_IO_THROTTLE_COUNT_MIN 1 28*4882a593Smuzhiyun #define VNIC_SNIC_IO_THROTTLE_COUNT_MAX 1024 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #define VNIC_SNIC_PORT_DOWN_TIMEOUT_MIN 0 31*4882a593Smuzhiyun #define VNIC_SNIC_PORT_DOWN_TIMEOUT_MAX 240000 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #define VNIC_SNIC_PORT_DOWN_IO_RETRIES_MIN 0 34*4882a593Smuzhiyun #define VNIC_SNIC_PORT_DOWN_IO_RETRIES_MAX 255 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun #define VNIC_SNIC_LUNS_PER_TARGET_MIN 1 37*4882a593Smuzhiyun #define VNIC_SNIC_LUNS_PER_TARGET_MAX 1024 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun /* Device-specific region: scsi configuration */ 40*4882a593Smuzhiyun struct vnic_snic_config { 41*4882a593Smuzhiyun u32 flags; 42*4882a593Smuzhiyun u32 wq_enet_desc_count; 43*4882a593Smuzhiyun u32 io_throttle_count; 44*4882a593Smuzhiyun u32 port_down_timeout; 45*4882a593Smuzhiyun u32 port_down_io_retries; 46*4882a593Smuzhiyun u32 luns_per_tgt; 47*4882a593Smuzhiyun u16 maxdatafieldsize; 48*4882a593Smuzhiyun u16 intr_timer; 49*4882a593Smuzhiyun u8 intr_timer_type; 50*4882a593Smuzhiyun u8 _resvd2; 51*4882a593Smuzhiyun u8 xpt_type; 52*4882a593Smuzhiyun u8 hid; 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun #endif /* _VNIC_SNIC_H_ */ 55