1*e6550b3eSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2d3c995f1SHiral Patel /* 3d3c995f1SHiral Patel * Copyright 2008 Cisco Systems, Inc. All rights reserved. 4d3c995f1SHiral Patel * Copyright 2007 Nuova Systems, Inc. All rights reserved. 5d3c995f1SHiral Patel */ 6d3c995f1SHiral Patel 7d3c995f1SHiral Patel #ifndef _FNIC_FIP_H_ 8d3c995f1SHiral Patel #define _FNIC_FIP_H_ 9d3c995f1SHiral Patel 10d3c995f1SHiral Patel 11d3c995f1SHiral Patel #define FCOE_CTLR_START_DELAY 2000 /* ms after first adv. to choose FCF */ 12d3c995f1SHiral Patel #define FCOE_CTLR_FIPVLAN_TOV 2000 /* ms after FIP VLAN disc */ 13d3c995f1SHiral Patel #define FCOE_CTLR_MAX_SOL 8 14d3c995f1SHiral Patel 15d3c995f1SHiral Patel #define FINC_MAX_FLOGI_REJECTS 8 16d3c995f1SHiral Patel 17d3c995f1SHiral Patel struct vlan { 18d3c995f1SHiral Patel __be16 vid; 19d3c995f1SHiral Patel __be16 type; 20d3c995f1SHiral Patel }; 21d3c995f1SHiral Patel 22d3c995f1SHiral Patel /* 23d3c995f1SHiral Patel * VLAN entry. 24d3c995f1SHiral Patel */ 25d3c995f1SHiral Patel struct fcoe_vlan { 26d3c995f1SHiral Patel struct list_head list; 27d3c995f1SHiral Patel u16 vid; /* vlan ID */ 28d3c995f1SHiral Patel u16 sol_count; /* no. of sols sent */ 29d3c995f1SHiral Patel u16 state; /* state */ 30d3c995f1SHiral Patel }; 31d3c995f1SHiral Patel 32d3c995f1SHiral Patel enum fip_vlan_state { 33d3c995f1SHiral Patel FIP_VLAN_AVAIL = 0, /* don't do anything */ 34d3c995f1SHiral Patel FIP_VLAN_SENT = 1, /* sent */ 35d3c995f1SHiral Patel FIP_VLAN_USED = 2, /* succeed */ 36d3c995f1SHiral Patel FIP_VLAN_FAILED = 3, /* failed to response */ 37d3c995f1SHiral Patel }; 38d3c995f1SHiral Patel 39d3c995f1SHiral Patel struct fip_vlan { 40d3c995f1SHiral Patel struct ethhdr eth; 41d3c995f1SHiral Patel struct fip_header fip; 42d3c995f1SHiral Patel struct { 43d3c995f1SHiral Patel struct fip_mac_desc mac; 44d3c995f1SHiral Patel struct fip_wwn_desc wwnn; 45d3c995f1SHiral Patel } desc; 46d3c995f1SHiral Patel }; 47d3c995f1SHiral Patel 48d3c995f1SHiral Patel #endif /* __FINC_FIP_H_ */ 49