diff options
Diffstat (limited to 'include/scsi/libfcoe.h')
-rw-r--r-- | include/scsi/libfcoe.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/include/scsi/libfcoe.h b/include/scsi/libfcoe.h index b2410605b740..8ef5e209c216 100644 --- a/include/scsi/libfcoe.h +++ b/include/scsi/libfcoe.h | |||
@@ -74,11 +74,13 @@ enum fip_state { | |||
74 | * @last_link: last link state reported to libfc. | 74 | * @last_link: last link state reported to libfc. |
75 | * @map_dest: use the FC_MAP mode for destination MAC addresses. | 75 | * @map_dest: use the FC_MAP mode for destination MAC addresses. |
76 | * @spma: supports SPMA server-provided MACs mode | 76 | * @spma: supports SPMA server-provided MACs mode |
77 | * @send_ctlr_ka: need to send controller keep alive | ||
78 | * @send_port_ka: need to send port keep alives | ||
77 | * @dest_addr: MAC address of the selected FC forwarder. | 79 | * @dest_addr: MAC address of the selected FC forwarder. |
78 | * @ctl_src_addr: the native MAC address of our local port. | 80 | * @ctl_src_addr: the native MAC address of our local port. |
79 | * @data_src_addr: the assigned MAC address for the local port after FLOGI. | ||
80 | * @send: LLD-supplied function to handle sending of FIP Ethernet frames. | 81 | * @send: LLD-supplied function to handle sending of FIP Ethernet frames. |
81 | * @update_mac: LLD-supplied function to handle changes to MAC addresses. | 82 | * @update_mac: LLD-supplied function to handle changes to MAC addresses. |
83 | * @get_src_addr: LLD-supplied function to supply a source MAC address. | ||
82 | * @lock: lock protecting this structure. | 84 | * @lock: lock protecting this structure. |
83 | * | 85 | * |
84 | * This structure is used by all FCoE drivers. It contains information | 86 | * This structure is used by all FCoE drivers. It contains information |
@@ -106,12 +108,14 @@ struct fcoe_ctlr { | |||
106 | u8 last_link; | 108 | u8 last_link; |
107 | u8 map_dest; | 109 | u8 map_dest; |
108 | u8 spma; | 110 | u8 spma; |
111 | u8 send_ctlr_ka; | ||
112 | u8 send_port_ka; | ||
109 | u8 dest_addr[ETH_ALEN]; | 113 | u8 dest_addr[ETH_ALEN]; |
110 | u8 ctl_src_addr[ETH_ALEN]; | 114 | u8 ctl_src_addr[ETH_ALEN]; |
111 | u8 data_src_addr[ETH_ALEN]; | ||
112 | 115 | ||
113 | void (*send)(struct fcoe_ctlr *, struct sk_buff *); | 116 | void (*send)(struct fcoe_ctlr *, struct sk_buff *); |
114 | void (*update_mac)(struct fcoe_ctlr *, u8 *old, u8 *new); | 117 | void (*update_mac)(struct fc_lport *, u8 *addr); |
118 | u8 * (*get_src_addr)(struct fc_lport *); | ||
115 | spinlock_t lock; | 119 | spinlock_t lock; |
116 | }; | 120 | }; |
117 | 121 | ||
@@ -155,9 +159,10 @@ void fcoe_ctlr_init(struct fcoe_ctlr *); | |||
155 | void fcoe_ctlr_destroy(struct fcoe_ctlr *); | 159 | void fcoe_ctlr_destroy(struct fcoe_ctlr *); |
156 | void fcoe_ctlr_link_up(struct fcoe_ctlr *); | 160 | void fcoe_ctlr_link_up(struct fcoe_ctlr *); |
157 | int fcoe_ctlr_link_down(struct fcoe_ctlr *); | 161 | int fcoe_ctlr_link_down(struct fcoe_ctlr *); |
158 | int fcoe_ctlr_els_send(struct fcoe_ctlr *, struct sk_buff *); | 162 | int fcoe_ctlr_els_send(struct fcoe_ctlr *, struct fc_lport *, struct sk_buff *); |
159 | void fcoe_ctlr_recv(struct fcoe_ctlr *, struct sk_buff *); | 163 | void fcoe_ctlr_recv(struct fcoe_ctlr *, struct sk_buff *); |
160 | int fcoe_ctlr_recv_flogi(struct fcoe_ctlr *, struct fc_frame *fp, u8 *sa); | 164 | int fcoe_ctlr_recv_flogi(struct fcoe_ctlr *, struct fc_lport *lport, |
165 | struct fc_frame *fp, u8 *sa); | ||
161 | 166 | ||
162 | /* libfcoe funcs */ | 167 | /* libfcoe funcs */ |
163 | u64 fcoe_wwn_from_mac(unsigned char mac[], unsigned int, unsigned int); | 168 | u64 fcoe_wwn_from_mac(unsigned char mac[], unsigned int, unsigned int); |