diff options
author | Krishna Gudipati <kgudipat@brocade.com> | 2011-06-24 23:26:25 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2011-06-29 18:22:26 -0400 |
commit | 51e569aa1f0c10bd71af05e76e4ba0e42c51e4ab (patch) | |
tree | 65ab17fd7da7c3432c04c45269cbd62ee19198c5 /drivers/scsi/bfa/bfi.h | |
parent | 148d61039c625f3f7e2d0a6ad1efe17f83153e65 (diff) |
[SCSI] bfa: Added support to obtain SFP info.
- Added SFP sub-module to BFA.
- Added interface to collect sfp media info and sfp speed.
Signed-off-by: Krishna Gudipati <kgudipat@brocade.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/bfa/bfi.h')
-rw-r--r-- | drivers/scsi/bfa/bfi.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/drivers/scsi/bfa/bfi.h b/drivers/scsi/bfa/bfi.h index 037b377668c2..0d249984fd08 100644 --- a/drivers/scsi/bfa/bfi.h +++ b/drivers/scsi/bfa/bfi.h | |||
@@ -206,6 +206,7 @@ enum bfi_mclass { | |||
206 | BFI_MC_IOIM_IOCOM = 17, /* good IO completion */ | 206 | BFI_MC_IOIM_IOCOM = 17, /* good IO completion */ |
207 | BFI_MC_TSKIM = 18, /* Initiator Task management */ | 207 | BFI_MC_TSKIM = 18, /* Initiator Task management */ |
208 | BFI_MC_PORT = 21, /* Physical port */ | 208 | BFI_MC_PORT = 21, /* Physical port */ |
209 | BFI_MC_SFP = 22, /* SFP module */ | ||
209 | BFI_MC_MAX = 32 | 210 | BFI_MC_MAX = 32 |
210 | }; | 211 | }; |
211 | 212 | ||
@@ -765,6 +766,54 @@ union bfi_cee_i2h_msg_u { | |||
765 | struct bfi_cee_stats_rsp_s stats_rsp; | 766 | struct bfi_cee_stats_rsp_s stats_rsp; |
766 | }; | 767 | }; |
767 | 768 | ||
769 | /* | ||
770 | * SFP related | ||
771 | */ | ||
772 | |||
773 | enum bfi_sfp_h2i_e { | ||
774 | BFI_SFP_H2I_SHOW = 1, | ||
775 | BFI_SFP_H2I_SCN = 2, | ||
776 | }; | ||
777 | |||
778 | enum bfi_sfp_i2h_e { | ||
779 | BFI_SFP_I2H_SHOW = BFA_I2HM(BFI_SFP_H2I_SHOW), | ||
780 | BFI_SFP_I2H_SCN = BFA_I2HM(BFI_SFP_H2I_SCN), | ||
781 | }; | ||
782 | |||
783 | /* | ||
784 | * SFP state | ||
785 | */ | ||
786 | enum bfa_sfp_stat_e { | ||
787 | BFA_SFP_STATE_INIT = 0, /* SFP state is uninit */ | ||
788 | BFA_SFP_STATE_REMOVED = 1, /* SFP is removed */ | ||
789 | BFA_SFP_STATE_INSERTED = 2, /* SFP is inserted */ | ||
790 | BFA_SFP_STATE_VALID = 3, /* SFP is valid */ | ||
791 | BFA_SFP_STATE_UNSUPPORT = 4, /* SFP is unsupport */ | ||
792 | BFA_SFP_STATE_FAILED = 5, /* SFP i2c read fail */ | ||
793 | }; | ||
794 | |||
795 | /* | ||
796 | * SFP memory access type | ||
797 | */ | ||
798 | enum bfi_sfp_mem_e { | ||
799 | BFI_SFP_MEM_ALL = 0x1, /* access all data field */ | ||
800 | BFI_SFP_MEM_DIAGEXT = 0x2, /* access diag ext data field only */ | ||
801 | }; | ||
802 | |||
803 | struct bfi_sfp_req_s { | ||
804 | struct bfi_mhdr_s mh; | ||
805 | u8 memtype; | ||
806 | u8 rsvd[3]; | ||
807 | struct bfi_alen_s alen; | ||
808 | }; | ||
809 | |||
810 | struct bfi_sfp_rsp_s { | ||
811 | struct bfi_mhdr_s mh; | ||
812 | u8 status; | ||
813 | u8 state; | ||
814 | u8 rsvd[2]; | ||
815 | }; | ||
816 | |||
768 | #pragma pack() | 817 | #pragma pack() |
769 | 818 | ||
770 | #endif /* __BFI_H__ */ | 819 | #endif /* __BFI_H__ */ |