• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/scsi/bfa/include/bfi/
1/*
2 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
3 * All rights reserved
4 * www.brocade.com
5 *
6 * Linux driver for Brocade Fibre Channel Host Bus Adapter.
7 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License (GPL) Version 2 as
10 * published by the Free Software Foundation
11 *
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 * General Public License for more details.
16 */
17
18#ifndef __BFI_LPS_H__
19#define __BFI_LPS_H__
20
21#include <bfi/bfi.h>
22
23#pragma pack(1)
24
25enum bfi_lps_h2i_msgs {
26	BFI_LPS_H2I_LOGIN_REQ	= 1,
27	BFI_LPS_H2I_LOGOUT_REQ	= 2,
28};
29
30enum bfi_lps_i2h_msgs {
31	BFI_LPS_H2I_LOGIN_RSP	= BFA_I2HM(1),
32	BFI_LPS_H2I_LOGOUT_RSP	= BFA_I2HM(2),
33	BFI_LPS_H2I_CVL_EVENT   = BFA_I2HM(3),
34};
35
36struct bfi_lps_login_req_s {
37	struct bfi_mhdr_s  mh;		/*  common msg header		*/
38	u8		lp_tag;
39	u8		alpa;
40	u16	pdu_size;
41	wwn_t		pwwn;
42	wwn_t		nwwn;
43	u8		fdisc;
44	u8		auth_en;
45	u8		rsvd[2];
46};
47
48struct bfi_lps_login_rsp_s {
49	struct bfi_mhdr_s  mh;		/*  common msg header		*/
50	u8		lp_tag;
51	u8		status;
52	u8		lsrjt_rsn;
53	u8		lsrjt_expl;
54	wwn_t		port_name;
55	wwn_t		node_name;
56	u16	bb_credit;
57	u8		f_port;
58	u8		npiv_en;
59	u32	lp_pid:24;
60	u32	auth_req:8;
61	mac_t		lp_mac;
62	mac_t		fcf_mac;
63	u8		ext_status;
64	u8  	brcd_switch;/*  attached peer is brcd switch	*/
65};
66
67struct bfi_lps_logout_req_s {
68	struct bfi_mhdr_s  mh;		/*  common msg header		*/
69	u8		lp_tag;
70	u8		rsvd[3];
71	wwn_t		port_name;
72};
73
74struct bfi_lps_logout_rsp_s {
75	struct bfi_mhdr_s  mh;		/*  common msg header		*/
76	u8		lp_tag;
77	u8		status;
78	u8		rsvd[2];
79};
80
81struct bfi_lps_cvl_event_s {
82	struct bfi_mhdr_s  mh;      /* common msg header      */
83	u8		lp_tag;
84	u8		rsvd[3];
85};
86
87union bfi_lps_h2i_msg_u {
88	struct bfi_mhdr_s		*msg;
89	struct bfi_lps_login_req_s	*login_req;
90	struct bfi_lps_logout_req_s	*logout_req;
91};
92
93union bfi_lps_i2h_msg_u {
94	struct bfi_msg_s		*msg;
95	struct bfi_lps_login_rsp_s	*login_rsp;
96	struct bfi_lps_logout_rsp_s	*logout_rsp;
97	struct bfi_lps_cvl_event_s	*cvl_event;
98};
99
100#pragma pack()
101
102#endif /* __BFI_LPS_H__ */
103