83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
 | 
						|
 * All rights reserved
 | 
						|
 * www.brocade.com
 | 
						|
 *
 | 
						|
 * Linux driver for Brocade Fibre Channel Host Bus Adapter.
 | 
						|
 *
 | 
						|
 * This program is free software; you can redistribute it and/or modify it
 | 
						|
 * under the terms of the GNU General Public License (GPL) Version 2 as
 | 
						|
 * published by the Free Software Foundation
 | 
						|
 *
 | 
						|
 * This program is distributed in the hope that it will be useful, but
 | 
						|
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
						|
 * General Public License for more details.
 | 
						|
 */
 | 
						|
#ifndef __BFA_DEFS_ADAPTER_H__
 | 
						|
#define __BFA_DEFS_ADAPTER_H__
 | 
						|
 | 
						|
#include <protocol/types.h>
 | 
						|
#include <defs/bfa_defs_version.h>
 | 
						|
#include <defs/bfa_defs_mfg.h>
 | 
						|
 | 
						|
/**
 | 
						|
 * BFA adapter level attributes.
 | 
						|
 */
 | 
						|
enum {
 | 
						|
	BFA_ADAPTER_SERIAL_NUM_LEN = STRSZ(BFA_MFG_SERIALNUM_SIZE),
 | 
						|
					/*
 | 
						|
					 *!< adapter serial num length
 | 
						|
					 */
 | 
						|
	BFA_ADAPTER_MODEL_NAME_LEN  = 16,  /*  model name length */
 | 
						|
	BFA_ADAPTER_MODEL_DESCR_LEN = 128, /*  model description length */
 | 
						|
	BFA_ADAPTER_MFG_NAME_LEN    = 8,   /*  manufacturer name length */
 | 
						|
	BFA_ADAPTER_SYM_NAME_LEN    = 64,  /*  adapter symbolic name length */
 | 
						|
	BFA_ADAPTER_OS_TYPE_LEN	    = 64,  /*  adapter os type length */
 | 
						|
};
 | 
						|
 | 
						|
struct bfa_adapter_attr_s {
 | 
						|
	char            manufacturer[BFA_ADAPTER_MFG_NAME_LEN];
 | 
						|
	char            serial_num[BFA_ADAPTER_SERIAL_NUM_LEN];
 | 
						|
	u32	rsvd1;
 | 
						|
	char            model[BFA_ADAPTER_MODEL_NAME_LEN];
 | 
						|
	char            model_descr[BFA_ADAPTER_MODEL_DESCR_LEN];
 | 
						|
	wwn_t           pwwn;
 | 
						|
	char            node_symname[FC_SYMNAME_MAX];
 | 
						|
	char            hw_ver[BFA_VERSION_LEN];
 | 
						|
	char            fw_ver[BFA_VERSION_LEN];
 | 
						|
	char            optrom_ver[BFA_VERSION_LEN];
 | 
						|
	char            os_type[BFA_ADAPTER_OS_TYPE_LEN];
 | 
						|
	struct bfa_mfg_vpd_s	vpd;
 | 
						|
	struct mac_s	mac;
 | 
						|
 | 
						|
	u8		nports;
 | 
						|
	u8		max_speed;
 | 
						|
	u8		prototype;
 | 
						|
	char	        asic_rev;
 | 
						|
 | 
						|
	u8         pcie_gen;
 | 
						|
	u8         pcie_lanes_orig;
 | 
						|
	u8         pcie_lanes;
 | 
						|
	u8	        cna_capable;
 | 
						|
};
 | 
						|
 | 
						|
/**
 | 
						|
 * BFA adapter level events
 | 
						|
 * Arguments below are in BFAL context from Mgmt
 | 
						|
 * BFA_PORT_AEN_ADD:        [in]: None     [out]: serial_num, pwwn, nports
 | 
						|
 * BFA_PORT_AEN_REMOVE:     [in]: pwwn     [out]: serial_num, pwwn, nports
 | 
						|
 */
 | 
						|
enum bfa_adapter_aen_event {
 | 
						|
	BFA_ADAPTER_AEN_ADD 	= 1,	/*  New Adapter found event */
 | 
						|
	BFA_ADAPTER_AEN_REMOVE 	= 2,	/*  Adapter removed event */
 | 
						|
};
 | 
						|
 | 
						|
struct bfa_adapter_aen_data_s {
 | 
						|
	char            serial_num[BFA_ADAPTER_SERIAL_NUM_LEN];
 | 
						|
	u32        nports;	/*  Number of NPorts */
 | 
						|
	wwn_t           pwwn;	/*  WWN of one of its physical port */
 | 
						|
};
 | 
						|
 | 
						|
#endif /* __BFA_DEFS_ADAPTER_H__ */
 |