diff options
Diffstat (limited to 'include/scsi')
-rw-r--r-- | include/scsi/libfcoe.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/scsi/libfcoe.h b/include/scsi/libfcoe.h index 7b93f211b935..22b07cc99808 100644 --- a/include/scsi/libfcoe.h +++ b/include/scsi/libfcoe.h | |||
@@ -168,9 +168,16 @@ static inline void *fcoe_ctlr_priv(const struct fcoe_ctlr *ctlr) | |||
168 | return (void *)(ctlr + 1); | 168 | return (void *)(ctlr + 1); |
169 | } | 169 | } |
170 | 170 | ||
171 | #define fcoe_ctlr_to_ctlr_dev(x) \ | ||
172 | (struct fcoe_ctlr_device *)(((struct fcoe_ctlr_device *)(x)) - 1) | ||
173 | |||
171 | /** | 174 | /** |
172 | * struct fcoe_fcf - Fibre-Channel Forwarder | 175 | * struct fcoe_fcf - Fibre-Channel Forwarder |
173 | * @list: list linkage | 176 | * @list: list linkage |
177 | * @event_work: Work for FC Transport actions queue | ||
178 | * @event: The event to be processed | ||
179 | * @fip: The controller that the FCF was discovered on | ||
180 | * @fcf_dev: The associated fcoe_fcf_device instance | ||
174 | * @time: system time (jiffies) when an advertisement was last received | 181 | * @time: system time (jiffies) when an advertisement was last received |
175 | * @switch_name: WWN of switch from advertisement | 182 | * @switch_name: WWN of switch from advertisement |
176 | * @fabric_name: WWN of fabric from advertisement | 183 | * @fabric_name: WWN of fabric from advertisement |
@@ -192,6 +199,9 @@ static inline void *fcoe_ctlr_priv(const struct fcoe_ctlr *ctlr) | |||
192 | */ | 199 | */ |
193 | struct fcoe_fcf { | 200 | struct fcoe_fcf { |
194 | struct list_head list; | 201 | struct list_head list; |
202 | struct work_struct event_work; | ||
203 | struct fcoe_ctlr *fip; | ||
204 | struct fcoe_fcf_device *fcf_dev; | ||
195 | unsigned long time; | 205 | unsigned long time; |
196 | 206 | ||
197 | u64 switch_name; | 207 | u64 switch_name; |
@@ -208,6 +218,9 @@ struct fcoe_fcf { | |||
208 | u8 fd_flags:1; | 218 | u8 fd_flags:1; |
209 | }; | 219 | }; |
210 | 220 | ||
221 | #define fcoe_fcf_to_fcf_dev(x) \ | ||
222 | ((x)->fcf_dev) | ||
223 | |||
211 | /** | 224 | /** |
212 | * struct fcoe_rport - VN2VN remote port | 225 | * struct fcoe_rport - VN2VN remote port |
213 | * @time: time of create or last beacon packet received from node | 226 | * @time: time of create or last beacon packet received from node |
@@ -343,6 +356,10 @@ void fcoe_queue_timer(ulong lport); | |||
343 | int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen, | 356 | int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen, |
344 | struct fcoe_percpu_s *fps); | 357 | struct fcoe_percpu_s *fps); |
345 | 358 | ||
359 | /* FCoE Sysfs helpers */ | ||
360 | void fcoe_fcf_get_selected(struct fcoe_fcf_device *); | ||
361 | void fcoe_ctlr_get_fip_mode(struct fcoe_ctlr_device *); | ||
362 | |||
346 | /** | 363 | /** |
347 | * struct netdev_list | 364 | * struct netdev_list |
348 | * A mapping from netdevice to fcoe_transport | 365 | * A mapping from netdevice to fcoe_transport |