mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
scsi: fc: add FPIN ELS definition
T11 has introduced a new Fabric Notifications mechanism whereby the fabric can notify a port of events occurring in the fabric. The notifications are given by the FPIN ELS. Add the FPIN ELS definitions to the kernel. Signed-off-by: James Smart <jsmart2021@gmail.com> Reviewed-by: Ewan D. Milne <emilne@redhat.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
d964b3e534
commit
a7dff3ad47
@ -52,6 +52,7 @@ enum fc_els_cmd {
|
||||
ELS_RRQ = 0x12, /* reinstate recovery qualifier */
|
||||
ELS_REC = 0x13, /* read exchange concise */
|
||||
ELS_SRR = 0x14, /* sequence retransmission request */
|
||||
ELS_FPIN = 0x16, /* Fabric Performance Impact Notification */
|
||||
ELS_PRLI = 0x20, /* process login */
|
||||
ELS_PRLO = 0x21, /* process logout */
|
||||
ELS_SCN = 0x22, /* state change notification */
|
||||
@ -119,6 +120,7 @@ enum fc_els_cmd {
|
||||
[ELS_RRQ] = "RRQ", \
|
||||
[ELS_REC] = "REC", \
|
||||
[ELS_SRR] = "SRR", \
|
||||
[ELS_FPIN] = "FPIN", \
|
||||
[ELS_PRLI] = "PRLI", \
|
||||
[ELS_PRLO] = "PRLO", \
|
||||
[ELS_SCN] = "SCN", \
|
||||
@ -829,4 +831,35 @@ enum fc_els_clid_ic {
|
||||
ELS_CLID_IC_LIP = 8, /* receiving LIP */
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Fabric Notification Descriptor Tag values
|
||||
*/
|
||||
enum fc_fn_dtag {
|
||||
ELS_FN_DTAG_LNK_INTEGRITY = 0x00020001, /* Link Integrity */
|
||||
ELS_FN_DTAG_PEER_CONGEST = 0x00020003, /* Peer Congestion */
|
||||
ELS_FN_DTAG_CONGESTION = 0x00020004, /* Congestion */
|
||||
};
|
||||
|
||||
/*
|
||||
* Fabric Notification Descriptor
|
||||
*/
|
||||
struct fc_fn_desc {
|
||||
__be32 fn_desc_tag; /* Notification Descriptor Tag */
|
||||
__be32 fn_desc_value_len; /* Length of Descriptor Value field
|
||||
* (in bytes)
|
||||
*/
|
||||
__u8 fn_desc_value[0]; /* Descriptor Value */
|
||||
};
|
||||
|
||||
/*
|
||||
* ELS_FPIN - Fabric Performance Impact Notification
|
||||
*/
|
||||
struct fc_els_fpin {
|
||||
__u8 fpin_cmd; /* command (0x16) */
|
||||
__u8 fpin_zero[3]; /* specified as zero - part of cmd */
|
||||
__be32 fpin_desc_cnt; /* count of descriptors */
|
||||
struct fc_fn_desc fpin_desc[0]; /* Descriptor list */
|
||||
};
|
||||
|
||||
#endif /* _FC_ELS_H_ */
|
||||
|
Loading…
Reference in New Issue
Block a user