1/* 2 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc. 3 * All rights reserved 4 * www.brocade.com 5 * 6 * bfa_defs_fcport.h 7 * 8 * Linux driver for Brocade Fibre Channel Host Bus Adapter. 9 * 10 * This program is free software; you can redistribute it and/or modify it 11 * under the terms of the GNU General Public License (GPL) Version 2 as 12 * published by the Free Software Foundation 13 * 14 * This program is distributed in the hope that it will be useful, but 15 * WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * General Public License for more details. 18 */ 19#ifndef __BFA_DEFS_FCPORT_H__ 20#define __BFA_DEFS_FCPORT_H__ 21 22#include <defs/bfa_defs_types.h> 23#include <protocol/types.h> 24 25#pragma pack(1) 26 27/** 28 * FCoE statistics 29 */ 30struct bfa_fcoe_stats_s { 31 u64 secs_reset; /* Seconds since stats reset */ 32 u64 cee_linkups; /* CEE link up */ 33 u64 cee_linkdns; /* CEE link down */ 34 u64 fip_linkups; /* FIP link up */ 35 u64 fip_linkdns; /* FIP link down */ 36 u64 fip_fails; /* FIP failures */ 37 u64 mac_invalids; /* Invalid mac assignments */ 38 u64 vlan_req; /* Vlan requests */ 39 u64 vlan_notify; /* Vlan notifications */ 40 u64 vlan_err; /* Vlan notification errors */ 41 u64 vlan_timeouts; /* Vlan request timeouts */ 42 u64 vlan_invalids; /* Vlan invalids */ 43 u64 disc_req; /* Discovery requests */ 44 u64 disc_rsp; /* Discovery responses */ 45 u64 disc_err; /* Discovery error frames */ 46 u64 disc_unsol; /* Discovery unsolicited */ 47 u64 disc_timeouts; /* Discovery timeouts */ 48 u64 disc_fcf_unavail; /* Discovery FCF not avail */ 49 u64 linksvc_unsupp; /* FIP link service req unsupp. */ 50 u64 linksvc_err; /* FIP link service req errors */ 51 u64 logo_req; /* FIP logos received */ 52 u64 clrvlink_req; /* Clear virtual link requests */ 53 u64 op_unsupp; /* FIP operation unsupp. */ 54 u64 untagged; /* FIP untagged frames */ 55 u64 txf_ucast; /* Tx FCoE unicast frames */ 56 u64 txf_ucast_vlan; /* Tx FCoE unicast vlan frames */ 57 u64 txf_ucast_octets; /* Tx FCoE unicast octets */ 58 u64 txf_mcast; /* Tx FCoE mutlicast frames */ 59 u64 txf_mcast_vlan; /* Tx FCoE mutlicast vlan frames */ 60 u64 txf_mcast_octets; /* Tx FCoE multicast octets */ 61 u64 txf_bcast; /* Tx FCoE broadcast frames */ 62 u64 txf_bcast_vlan; /* Tx FCoE broadcast vlan frames */ 63 u64 txf_bcast_octets; /* Tx FCoE broadcast octets */ 64 u64 txf_timeout; /* Tx timeouts */ 65 u64 txf_parity_errors; /* Transmit parity err */ 66 u64 txf_fid_parity_errors; /* Transmit FID parity err */ 67 u64 rxf_ucast_octets; /* Rx FCoE unicast octets */ 68 u64 rxf_ucast; /* Rx FCoE unicast frames */ 69 u64 rxf_ucast_vlan; /* Rx FCoE unicast vlan frames */ 70 u64 rxf_mcast_octets; /* Rx FCoE multicast octets */ 71 u64 rxf_mcast; /* Rx FCoE multicast frames */ 72 u64 rxf_mcast_vlan; /* Rx FCoE multicast vlan frames */ 73 u64 rxf_bcast_octets; /* Rx FCoE broadcast octets */ 74 u64 rxf_bcast; /* Rx FCoE broadcast frames */ 75 u64 rxf_bcast_vlan; /* Rx FCoE broadcast vlan frames */ 76}; 77 78/** 79 * QoS or FCoE stats (fcport stats excluding physical FC port stats) 80 */ 81union bfa_fcport_stats_u { 82 struct bfa_qos_stats_s fcqos; 83 struct bfa_fcoe_stats_s fcoe; 84}; 85 86#pragma pack() 87 88#endif /* __BFA_DEFS_FCPORT_H__ */ 89