• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _FC_ELS_H_
20 #define _FC_ELS_H_
21 #include <linux/types.h>
22 enum fc_els_cmd {
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24  ELS_LS_RJT = 0x01,
25  ELS_LS_ACC = 0x02,
26  ELS_PLOGI = 0x03,
27  ELS_FLOGI = 0x04,
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29  ELS_LOGO = 0x05,
30  ELS_ABTX = 0x06,
31  ELS_RCS = 0x07,
32  ELS_RES = 0x08,
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34  ELS_RSS = 0x09,
35  ELS_RSI = 0x0a,
36  ELS_ESTS = 0x0b,
37  ELS_ESTC = 0x0c,
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  ELS_ADVC = 0x0d,
40  ELS_RTV = 0x0e,
41  ELS_RLS = 0x0f,
42  ELS_ECHO = 0x10,
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44  ELS_TEST = 0x11,
45  ELS_RRQ = 0x12,
46  ELS_REC = 0x13,
47  ELS_SRR = 0x14,
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49  ELS_PRLI = 0x20,
50  ELS_PRLO = 0x21,
51  ELS_SCN = 0x22,
52  ELS_TPLS = 0x23,
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  ELS_TPRLO = 0x24,
55  ELS_LCLM = 0x25,
56  ELS_GAID = 0x30,
57  ELS_FACT = 0x31,
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59  ELS_FDACDT = 0x32,
60  ELS_NACT = 0x33,
61  ELS_NDACT = 0x34,
62  ELS_QOSR = 0x40,
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64  ELS_RVCS = 0x41,
65  ELS_PDISC = 0x50,
66  ELS_FDISC = 0x51,
67  ELS_ADISC = 0x52,
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69  ELS_RNC = 0x53,
70  ELS_FARP_REQ = 0x54,
71  ELS_FARP_REPL = 0x55,
72  ELS_RPS = 0x56,
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74  ELS_RPL = 0x57,
75  ELS_RPBC = 0x58,
76  ELS_FAN = 0x60,
77  ELS_RSCN = 0x61,
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79  ELS_SCR = 0x62,
80  ELS_RNFT = 0x63,
81  ELS_CSR = 0x68,
82  ELS_CSU = 0x69,
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84  ELS_LINIT = 0x70,
85  ELS_LSTS = 0x72,
86  ELS_RNID = 0x78,
87  ELS_RLIR = 0x79,
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89  ELS_LIRR = 0x7a,
90  ELS_SRL = 0x7b,
91  ELS_SBRP = 0x7c,
92  ELS_RPSC = 0x7d,
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94  ELS_QSA = 0x7e,
95  ELS_EVFP = 0x7f,
96  ELS_LKA = 0x80,
97  ELS_AUTH_ELS = 0x90,
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 };
100 #define FC_ELS_CMDS_INIT {   [ELS_LS_RJT] = "LS_RJT",   [ELS_LS_ACC] = "LS_ACC",   [ELS_PLOGI] = "PLOGI",   [ELS_FLOGI] = "FLOGI",   [ELS_LOGO] = "LOGO",   [ELS_ABTX] = "ABTX",   [ELS_RCS] = "RCS",   [ELS_RES] = "RES",   [ELS_RSS] = "RSS",   [ELS_RSI] = "RSI",   [ELS_ESTS] = "ESTS",   [ELS_ESTC] = "ESTC",   [ELS_ADVC] = "ADVC",   [ELS_RTV] = "RTV",   [ELS_RLS] = "RLS",   [ELS_ECHO] = "ECHO",   [ELS_TEST] = "TEST",   [ELS_RRQ] = "RRQ",   [ELS_REC] = "REC",   [ELS_SRR] = "SRR",   [ELS_PRLI] = "PRLI",   [ELS_PRLO] = "PRLO",   [ELS_SCN] = "SCN",   [ELS_TPLS] = "TPLS",   [ELS_TPRLO] = "TPRLO",   [ELS_LCLM] = "LCLM",   [ELS_GAID] = "GAID",   [ELS_FACT] = "FACT",   [ELS_FDACDT] = "FDACDT",   [ELS_NACT] = "NACT",   [ELS_NDACT] = "NDACT",   [ELS_QOSR] = "QOSR",   [ELS_RVCS] = "RVCS",   [ELS_PDISC] = "PDISC",   [ELS_FDISC] = "FDISC",   [ELS_ADISC] = "ADISC",   [ELS_RNC] = "RNC",   [ELS_FARP_REQ] = "FARP_REQ",   [ELS_FARP_REPL] = "FARP_REPL",   [ELS_RPS] = "RPS",   [ELS_RPL] = "RPL",   [ELS_RPBC] = "RPBC",   [ELS_FAN] = "FAN",   [ELS_RSCN] = "RSCN",   [ELS_SCR] = "SCR",   [ELS_RNFT] = "RNFT",   [ELS_CSR] = "CSR",   [ELS_CSU] = "CSU",   [ELS_LINIT] = "LINIT",   [ELS_LSTS] = "LSTS",   [ELS_RNID] = "RNID",   [ELS_RLIR] = "RLIR",   [ELS_LIRR] = "LIRR",   [ELS_SRL] = "SRL",   [ELS_SBRP] = "SBRP",   [ELS_RPSC] = "RPSC",   [ELS_QSA] = "QSA",   [ELS_EVFP] = "EVFP",   [ELS_LKA] = "LKA",   [ELS_AUTH_ELS] = "AUTH_ELS",  }
101 struct fc_els_ls_acc {
102  __u8 la_cmd;
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104  __u8 la_resv[3];
105 };
106 struct fc_els_ls_rjt {
107  __u8 er_cmd;
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109  __u8 er_resv[4];
110  __u8 er_reason;
111  __u8 er_explan;
112  __u8 er_vendor;
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 };
115 enum fc_els_rjt_reason {
116  ELS_RJT_NONE = 0,
117  ELS_RJT_INVAL = 0x01,
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119  ELS_RJT_LOGIC = 0x03,
120  ELS_RJT_BUSY = 0x05,
121  ELS_RJT_PROT = 0x07,
122  ELS_RJT_UNAB = 0x09,
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124  ELS_RJT_UNSUP = 0x0b,
125  ELS_RJT_INPROG = 0x0e,
126  ELS_RJT_FIP = 0x20,
127  ELS_RJT_VENDOR = 0xff,
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 };
130 enum fc_els_rjt_explan {
131  ELS_EXPL_NONE = 0x00,
132  ELS_EXPL_SPP_OPT_ERR = 0x01,
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134  ELS_EXPL_SPP_ICTL_ERR = 0x03,
135  ELS_EXPL_AH = 0x11,
136  ELS_EXPL_AH_REQ = 0x13,
137  ELS_EXPL_SID = 0x15,
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139  ELS_EXPL_OXID_RXID = 0x17,
140  ELS_EXPL_INPROG = 0x19,
141  ELS_EXPL_PLOGI_REQD = 0x1e,
142  ELS_EXPL_INSUF_RES = 0x29,
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144  ELS_EXPL_UNAB_DATA = 0x2a,
145  ELS_EXPL_UNSUPR = 0x2c,
146  ELS_EXPL_INV_LEN = 0x2d,
147  ELS_EXPL_NOT_NEIGHBOR = 0x62,
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 };
150 struct fc_els_csp {
151  __u8 sp_hi_ver;
152  __u8 sp_lo_ver;
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154  __be16 sp_bb_cred;
155  __be16 sp_features;
156  __be16 sp_bb_data;
157  union {
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159  struct {
160  __be16 _sp_tot_seq;
161  __be16 _sp_rel_off;
162  } sp_plogi;
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164  struct {
165  __be32 _sp_r_a_tov;
166  } sp_flogi_acc;
167  } sp_u;
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169  __be32 sp_e_d_tov;
170 };
171 #define sp_tot_seq sp_u.sp_plogi._sp_tot_seq
172 #define sp_rel_off sp_u.sp_plogi._sp_rel_off
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 #define sp_r_a_tov sp_u.sp_flogi_acc._sp_r_a_tov
175 #define FC_SP_BB_DATA_MASK 0xfff
176 #define FC_SP_MIN_MAX_PAYLOAD FC_MIN_MAX_PAYLOAD
177 #define FC_SP_MAX_MAX_PAYLOAD FC_MAX_PAYLOAD
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 #define FC_SP_FT_NPIV 0x8000
180 #define FC_SP_FT_CIRO 0x8000
181 #define FC_SP_FT_CLAD 0x8000
182 #define FC_SP_FT_RAND 0x4000
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 #define FC_SP_FT_VAL 0x2000
185 #define FC_SP_FT_NPIV_ACC 0x2000
186 #define FC_SP_FT_FPORT 0x1000
187 #define FC_SP_FT_ABB 0x0800
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 #define FC_SP_FT_EDTR 0x0400
190 #define FC_SP_FT_MCAST 0x0200
191 #define FC_SP_FT_BCAST 0x0100
192 #define FC_SP_FT_HUNT 0x0080
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194 #define FC_SP_FT_SIMP 0x0040
195 #define FC_SP_FT_SEC 0x0020
196 #define FC_SP_FT_CSYN 0x0010
197 #define FC_SP_FT_RTTOV 0x0008
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 #define FC_SP_FT_HALF 0x0004
200 #define FC_SP_FT_SEQC 0x0002
201 #define FC_SP_FT_PAYL 0x0001
202 struct fc_els_cssp {
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204  __be16 cp_class;
205  __be16 cp_init;
206  __be16 cp_recip;
207  __be16 cp_rdfs;
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209  __be16 cp_con_seq;
210  __be16 cp_ee_cred;
211  __u8 cp_resv1;
212  __u8 cp_open_seq;
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214  __u8 _cp_resv2[2];
215 };
216 #define FC_CPC_VALID 0x8000
217 #define FC_CPC_IMIX 0x4000
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 #define FC_CPC_SEQ 0x0800
220 #define FC_CPC_CAMP 0x0200
221 #define FC_CPC_PRI 0x0080
222 #define FC_CPI_CSYN 0x0010
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 #define FC_CPR_CSYN 0x0008
225 struct fc_els_flogi {
226  __u8 fl_cmd;
227  __u8 _fl_resvd[3];
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229  struct fc_els_csp fl_csp;
230  __be64 fl_wwpn;
231  __be64 fl_wwnn;
232  struct fc_els_cssp fl_cssp[4];
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234  __u8 fl_vend[16];
235 } __attribute__((__packed__));
236 struct fc_els_spp {
237  __u8 spp_type;
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239  __u8 spp_type_ext;
240  __u8 spp_flags;
241  __u8 _spp_resvd;
242  __be32 spp_orig_pa;
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244  __be32 spp_resp_pa;
245  __be32 spp_params;
246 };
247 #define FC_SPP_OPA_VAL 0x80
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249 #define FC_SPP_RPA_VAL 0x40
250 #define FC_SPP_EST_IMG_PAIR 0x20
251 #define FC_SPP_RESP_MASK 0x0f
252 enum fc_els_spp_resp {
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254  FC_SPP_RESP_ACK = 1,
255  FC_SPP_RESP_RES = 2,
256  FC_SPP_RESP_INIT = 3,
257  FC_SPP_RESP_NO_PA = 4,
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259  FC_SPP_RESP_CONF = 5,
260  FC_SPP_RESP_COND = 6,
261  FC_SPP_RESP_MULT = 7,
262  FC_SPP_RESP_INVL = 8,
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264 };
265 struct fc_els_rrq {
266  __u8 rrq_cmd;
267  __u8 rrq_zero[3];
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269  __u8 rrq_resvd;
270  __u8 rrq_s_id[3];
271  __be16 rrq_ox_id;
272  __be16 rrq_rx_id;
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274 };
275 struct fc_els_rec {
276  __u8 rec_cmd;
277  __u8 rec_zero[3];
278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279  __u8 rec_resvd;
280  __u8 rec_s_id[3];
281  __be16 rec_ox_id;
282  __be16 rec_rx_id;
283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284 };
285 struct fc_els_rec_acc {
286  __u8 reca_cmd;
287  __u8 reca_zero[3];
288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289  __be16 reca_ox_id;
290  __be16 reca_rx_id;
291  __u8 reca_resvd1;
292  __u8 reca_ofid[3];
293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294  __u8 reca_resvd2;
295  __u8 reca_rfid[3];
296  __be32 reca_fc4value;
297  __be32 reca_e_stat;
298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 };
300 struct fc_els_prli {
301  __u8 prli_cmd;
302  __u8 prli_spp_len;
303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304  __be16 prli_len;
305 };
306 struct fc_els_prlo {
307  __u8 prlo_cmd;
308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309  __u8 prlo_obs;
310  __be16 prlo_len;
311 };
312 struct fc_els_adisc {
313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314  __u8 adisc_cmd;
315  __u8 adisc_resv[3];
316  __u8 adisc_resv1;
317  __u8 adisc_hard_addr[3];
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319  __be64 adisc_wwpn;
320  __be64 adisc_wwnn;
321  __u8 adisc_resv2;
322  __u8 adisc_port_id[3];
323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324 } __attribute__((__packed__));
325 struct fc_els_logo {
326  __u8 fl_cmd;
327  __u8 fl_zero[3];
328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329  __u8 fl_resvd;
330  __u8 fl_n_port_id[3];
331  __be64 fl_n_port_wwn;
332 };
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334 struct fc_els_rtv {
335  __u8 rtv_cmd;
336  __u8 rtv_zero[3];
337 };
338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339 struct fc_els_rtv_acc {
340  __u8 rtv_cmd;
341  __u8 rtv_zero[3];
342  __be32 rtv_r_a_tov;
343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344  __be32 rtv_e_d_tov;
345  __be32 rtv_toq;
346 };
347 #define FC_ELS_RTV_EDRES (1 << 26)
348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349 #define FC_ELS_RTV_RTTOV (1 << 19)
350 struct fc_els_scr {
351  __u8 scr_cmd;
352  __u8 scr_resv[6];
353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354  __u8 scr_reg_func;
355 };
356 enum fc_els_scr_func {
357  ELS_SCRF_FAB = 1,
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359  ELS_SCRF_NPORT = 2,
360  ELS_SCRF_FULL = 3,
361  ELS_SCRF_CLEAR = 255,
362 };
363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364 struct fc_els_rscn {
365  __u8 rscn_cmd;
366  __u8 rscn_page_len;
367  __be16 rscn_plen;
368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369 };
370 struct fc_els_rscn_page {
371  __u8 rscn_page_flags;
372  __u8 rscn_fid[3];
373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374 };
375 #define ELS_RSCN_EV_QUAL_BIT 2
376 #define ELS_RSCN_EV_QUAL_MASK 0xf
377 #define ELS_RSCN_ADDR_FMT_BIT 0
378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379 #define ELS_RSCN_ADDR_FMT_MASK 0x3
380 enum fc_els_rscn_ev_qual {
381  ELS_EV_QUAL_NONE = 0,
382  ELS_EV_QUAL_NS_OBJ = 1,
383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384  ELS_EV_QUAL_PORT_ATTR = 2,
385  ELS_EV_QUAL_SERV_OBJ = 3,
386  ELS_EV_QUAL_SW_CONFIG = 4,
387  ELS_EV_QUAL_REM_OBJ = 5,
388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389 };
390 enum fc_els_rscn_addr_fmt {
391  ELS_ADDR_FMT_PORT = 0,
392  ELS_ADDR_FMT_AREA = 1,
393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394  ELS_ADDR_FMT_DOM = 2,
395  ELS_ADDR_FMT_FAB = 3,
396 };
397 struct fc_els_rnid {
398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399  __u8 rnid_cmd;
400  __u8 rnid_resv[3];
401  __u8 rnid_fmt;
402  __u8 rnid_resv2[3];
403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404 };
405 enum fc_els_rnid_fmt {
406  ELS_RNIDF_NONE = 0,
407  ELS_RNIDF_GEN = 0xdf,
408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409 };
410 struct fc_els_rnid_resp {
411  __u8 rnid_cmd;
412  __u8 rnid_resv[3];
413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414  __u8 rnid_fmt;
415  __u8 rnid_cid_len;
416  __u8 rnid_resv2;
417  __u8 rnid_sid_len;
418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419 };
420 struct fc_els_rnid_cid {
421  __be64 rnid_wwpn;
422  __be64 rnid_wwnn;
423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424 };
425 struct fc_els_rnid_gen {
426  __u8 rnid_vend_id[16];
427  __be32 rnid_atype;
428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
429  __be32 rnid_phys_port;
430  __be32 rnid_att_nodes;
431  __u8 rnid_node_mgmt;
432  __u8 rnid_ip_ver;
433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
434  __be16 rnid_prot_port;
435  __be32 rnid_ip_addr[4];
436  __u8 rnid_resvd[2];
437  __be16 rnid_vend_spec;
438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439 };
440 enum fc_els_rnid_atype {
441  ELS_RNIDA_UNK = 0x01,
442  ELS_RNIDA_OTHER = 0x02,
443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444  ELS_RNIDA_HUB = 0x03,
445  ELS_RNIDA_SWITCH = 0x04,
446  ELS_RNIDA_GATEWAY = 0x05,
447  ELS_RNIDA_CONV = 0x06,
448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449  ELS_RNIDA_HBA = 0x07,
450  ELS_RNIDA_PROXY = 0x08,
451  ELS_RNIDA_STORAGE = 0x09,
452  ELS_RNIDA_HOST = 0x0a,
453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454  ELS_RNIDA_SUBSYS = 0x0b,
455  ELS_RNIDA_ACCESS = 0x0e,
456  ELS_RNIDA_NAS = 0x11,
457  ELS_RNIDA_BRIDGE = 0x12,
458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459  ELS_RNIDA_VIRT = 0x13,
460  ELS_RNIDA_MF = 0xff,
461  ELS_RNIDA_MF_HUB = 1UL << 31,
462  ELS_RNIDA_MF_SW = 1UL << 30,
463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464  ELS_RNIDA_MF_GW = 1UL << 29,
465  ELS_RNIDA_MF_ST = 1UL << 28,
466  ELS_RNIDA_MF_HOST = 1UL << 27,
467  ELS_RNIDA_MF_SUB = 1UL << 26,
468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
469  ELS_RNIDA_MF_ACC = 1UL << 25,
470  ELS_RNIDA_MF_WDM = 1UL << 24,
471  ELS_RNIDA_MF_NAS = 1UL << 23,
472  ELS_RNIDA_MF_BR = 1UL << 22,
473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474  ELS_RNIDA_MF_VIRT = 1UL << 21,
475 };
476 enum fc_els_rnid_mgmt {
477  ELS_RNIDM_SNMP = 0,
478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
479  ELS_RNIDM_TELNET = 1,
480  ELS_RNIDM_HTTP = 2,
481  ELS_RNIDM_HTTPS = 3,
482  ELS_RNIDM_XML = 4,
483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484 };
485 enum fc_els_rnid_ipver {
486  ELS_RNIDIP_NONE = 0,
487  ELS_RNIDIP_V4 = 1,
488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
489  ELS_RNIDIP_V6 = 2,
490 };
491 struct fc_els_rpl {
492  __u8 rpl_cmd;
493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
494  __u8 rpl_resv[5];
495  __be16 rpl_max_size;
496  __u8 rpl_resv1;
497  __u8 rpl_index[3];
498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
499 };
500 struct fc_els_pnb {
501  __be32 pnb_phys_pn;
502  __u8 pnb_resv;
503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
504  __u8 pnb_port_id[3];
505  __be64 pnb_wwpn;
506 };
507 struct fc_els_rpl_resp {
508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
509  __u8 rpl_cmd;
510  __u8 rpl_resv1;
511  __be16 rpl_plen;
512  __u8 rpl_resv2;
513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
514  __u8 rpl_llen[3];
515  __u8 rpl_resv3;
516  __u8 rpl_index[3];
517  struct fc_els_pnb rpl_pnb[1];
518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
519 };
520 struct fc_els_lesb {
521  __be32 lesb_link_fail;
522  __be32 lesb_sync_loss;
523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
524  __be32 lesb_sig_loss;
525  __be32 lesb_prim_err;
526  __be32 lesb_inv_word;
527  __be32 lesb_inv_crc;
528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
529 };
530 struct fc_els_rps {
531  __u8 rps_cmd;
532  __u8 rps_resv[2];
533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
534  __u8 rps_flag;
535  __be64 rps_port_spec;
536 };
537 enum fc_els_rps_flag {
538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
539  FC_ELS_RPS_DID = 0x00,
540  FC_ELS_RPS_PPN = 0x01,
541  FC_ELS_RPS_WWPN = 0x02,
542 };
543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
544 struct fc_els_rps_resp {
545  __u8 rps_cmd;
546  __u8 rps_resv[2];
547  __u8 rps_flag;
548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
549  __u8 rps_resv2[2];
550  __be16 rps_status;
551  struct fc_els_lesb rps_lesb;
552 };
553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
554 enum fc_els_rps_resp_flag {
555  FC_ELS_RPS_LPEV = 0x01,
556 };
557 enum fc_els_rps_resp_status {
558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
559  FC_ELS_RPS_PTP = 1 << 5,
560  FC_ELS_RPS_LOOP = 1 << 4,
561  FC_ELS_RPS_FAB = 1 << 3,
562  FC_ELS_RPS_NO_SIG = 1 << 2,
563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
564  FC_ELS_RPS_NO_SYNC = 1 << 1,
565  FC_ELS_RPS_RESET = 1 << 0,
566 };
567 struct fc_els_lirr {
568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
569  __u8 lirr_cmd;
570  __u8 lirr_resv[3];
571  __u8 lirr_func;
572  __u8 lirr_fmt;
573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
574  __u8 lirr_resv2[2];
575 };
576 enum fc_els_lirr_func {
577  ELS_LIRR_SET_COND = 0x01,
578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
579  ELS_LIRR_SET_UNCOND = 0x02,
580  ELS_LIRR_CLEAR = 0xff
581 };
582 struct fc_els_srl {
583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
584  __u8 srl_cmd;
585  __u8 srl_resv[3];
586  __u8 srl_flag;
587  __u8 srl_flag_param[3];
588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
589 };
590 enum fc_els_srl_flag {
591  FC_ELS_SRL_ALL = 0x00,
592  FC_ELS_SRL_ONE = 0x01,
593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
594  FC_ELS_SRL_EN_PER = 0x02,
595  FC_ELS_SRL_DIS_PER = 0x03,
596 };
597 struct fc_els_rls {
598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
599  __u8 rls_cmd;
600  __u8 rls_resv[4];
601  __u8 rls_port_id[3];
602 };
603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
604 struct fc_els_rls_resp {
605  __u8 rls_cmd;
606  __u8 rls_resv[3];
607  struct fc_els_lesb rls_lesb;
608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
609 };
610 struct fc_els_rlir {
611  __u8 rlir_cmd;
612  __u8 rlir_resv[3];
613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
614  __u8 rlir_fmt;
615  __u8 rlir_clr_len;
616  __u8 rlir_cld_len;
617  __u8 rlir_slr_len;
618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
619 };
620 struct fc_els_clir {
621  __be64 clir_wwpn;
622  __be64 clir_wwnn;
623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
624  __u8 clir_port_type;
625  __u8 clir_port_id[3];
626  __be64 clir_conn_wwpn;
627  __be64 clir_conn_wwnn;
628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
629  __be64 clir_fab_name;
630  __be32 clir_phys_port;
631  __be32 clir_trans_id;
632  __u8 clir_resv[3];
633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
634  __u8 clir_ts_fmt;
635  __be64 clir_timestamp;
636 };
637 enum fc_els_clir_ts_fmt {
638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
639  ELS_CLIR_TS_UNKNOWN = 0,
640  ELS_CLIR_TS_SEC_FRAC = 1,
641  ELS_CLIR_TS_CSU = 2,
642 };
643 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
644 struct fc_els_clid {
645  __u8 clid_iq;
646  __u8 clid_ic;
647  __be16 clid_epai;
648 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
649 };
650 enum fc_els_clid_iq {
651  ELS_CLID_SWITCH = 0x20,
652  ELS_CLID_E_PORT = 0x10,
653 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
654  ELS_CLID_SEV_MASK = 0x0c,
655  ELS_CLID_SEV_INFO = 0x00,
656  ELS_CLID_SEV_INOP = 0x08,
657  ELS_CLID_SEV_DEG = 0x04,
658 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
659  ELS_CLID_LASER = 0x02,
660  ELS_CLID_FRU = 0x01,
661 };
662 enum fc_els_clid_ic {
663 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
664  ELS_CLID_IC_IMPL = 1,
665  ELS_CLID_IC_BER = 2,
666  ELS_CLID_IC_LOS = 3,
667  ELS_CLID_IC_NOS = 4,
668 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
669  ELS_CLID_IC_PST = 5,
670  ELS_CLID_IC_INVAL = 6,
671  ELS_CLID_IC_LOOP_TO = 7,
672  ELS_CLID_IC_LIP = 8,
673 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
674 };
675 #endif
676