-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[SCSI] fcoe: cleans up libfcoe.h and adds fcoe.h for fcoe module
Removes no where used several inline functions prefixed with skb_* and be16_to_cpu. Moves fcoe module specific func prototypes to fcoe.c from libfcoe.h, moved only need for build. Adds fcoe module header file fcoe.h and then moves fcoe module specific fcoe_percpu_s and fcoe_softc to fcoe.h from libfcoe.h. Moves all defines from fcoe.c to fcoe.h since now fcoe module has its own header file fcoe.h. [jejb: removed EXPORT_SYMBOL_GPL(fcoe_fc_crc) which caused a section mismatch] Signed-off-by: Vasu Dev <vasu.dev@intel.com> Signed-off-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
- Loading branch information
Vasu Dev
authored and
James Bottomley
committed
Apr 3, 2009
1 parent
5e80f7f
commit fdd7802
Showing
3 changed files
with
105 additions
and
144 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
/* | ||
* Copyright(c) 2009 Intel Corporation. All rights reserved. | ||
* | ||
* This program is free software; you can redistribute it and/or modify it | ||
* under the terms and conditions of the GNU General Public License, | ||
* version 2, as published by the Free Software Foundation. | ||
* | ||
* This program is distributed in the hope 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. | ||
* | ||
* You should have received a copy of the GNU General Public License along with | ||
* this program; if not, write to the Free Software Foundation, Inc., | ||
* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. | ||
* | ||
* Maintained at www.Open-FCoE.org | ||
*/ | ||
|
||
#ifndef _FCOE_H_ | ||
#define _FCOE_H_ | ||
|
||
#include <linux/skbuff.h> | ||
#include <linux/kthread.h> | ||
|
||
#define FCOE_MAX_QUEUE_DEPTH 256 | ||
#define FCOE_LOW_QUEUE_DEPTH 32 | ||
|
||
/* destination address mode */ | ||
#define FCOE_GW_ADDR_MODE 0x00 | ||
#define FCOE_FCOUI_ADDR_MODE 0x01 | ||
|
||
#define FCOE_WORD_TO_BYTE 4 | ||
|
||
#define FCOE_VERSION "0.1" | ||
#define FCOE_NAME "fcoe" | ||
#define FCOE_VENDOR "Open-FCoE.org" | ||
|
||
#define FCOE_MAX_LUN 255 | ||
#define FCOE_MAX_FCP_TARGET 256 | ||
|
||
#define FCOE_MAX_OUTSTANDING_COMMANDS 1024 | ||
|
||
#define FCOE_MIN_XID 0x0001 /* the min xid supported by fcoe_sw */ | ||
#define FCOE_MAX_XID 0x07ef /* the max xid supported by fcoe_sw */ | ||
|
||
/* | ||
* this percpu struct for fcoe | ||
*/ | ||
struct fcoe_percpu_s { | ||
struct task_struct *thread; | ||
struct sk_buff_head fcoe_rx_list; | ||
struct page *crc_eof_page; | ||
int crc_eof_offset; | ||
}; | ||
|
||
/* | ||
* the fcoe sw transport private data | ||
*/ | ||
struct fcoe_softc { | ||
struct list_head list; | ||
struct fc_lport *lp; | ||
struct net_device *real_dev; | ||
struct net_device *phys_dev; /* device with ethtool_ops */ | ||
struct packet_type fcoe_packet_type; | ||
struct sk_buff_head fcoe_pending_queue; | ||
u8 fcoe_pending_queue_active; | ||
|
||
u8 dest_addr[ETH_ALEN]; | ||
u8 ctl_src_addr[ETH_ALEN]; | ||
u8 data_src_addr[ETH_ALEN]; | ||
/* | ||
* fcoe protocol address learning related stuff | ||
*/ | ||
u16 flogi_oxid; | ||
u8 flogi_progress; | ||
u8 address_mode; | ||
}; | ||
|
||
static inline struct net_device *fcoe_netdev( | ||
const struct fc_lport *lp) | ||
{ | ||
return ((struct fcoe_softc *)lport_priv(lp))->real_dev; | ||
} | ||
|
||
#endif /* _FCOE_H_ */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters