RT-AC56 3.0.0.4.374.37 core
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / drivers / scsi / bfa / include / defs / bfa_defs_aen.h
blob35244698fcdc07fafc5b2ba04a145a4f123d37cc
1 /*
2 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
3 * All rights reserved
4 * www.brocade.com
6 * Linux driver for Brocade Fibre Channel Host Bus Adapter.
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
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.
18 #ifndef __BFA_DEFS_AEN_H__
19 #define __BFA_DEFS_AEN_H__
21 #include <defs/bfa_defs_types.h>
22 #include <defs/bfa_defs_ioc.h>
23 #include <defs/bfa_defs_adapter.h>
24 #include <defs/bfa_defs_port.h>
25 #include <defs/bfa_defs_lport.h>
26 #include <defs/bfa_defs_rport.h>
27 #include <defs/bfa_defs_itnim.h>
28 #include <defs/bfa_defs_tin.h>
29 #include <defs/bfa_defs_ipfc.h>
30 #include <defs/bfa_defs_audit.h>
31 #include <defs/bfa_defs_ethport.h>
33 #define BFA_AEN_MAX_APP 5
35 enum bfa_aen_app {
36 bfa_aen_app_bcu = 0, /* No thread for bcu */
37 bfa_aen_app_hcm = 1,
38 bfa_aen_app_cim = 2,
39 bfa_aen_app_snia = 3,
40 bfa_aen_app_test = 4, /* To be removed after unit test */
43 enum bfa_aen_category {
44 BFA_AEN_CAT_ADAPTER = 1,
45 BFA_AEN_CAT_PORT = 2,
46 BFA_AEN_CAT_LPORT = 3,
47 BFA_AEN_CAT_RPORT = 4,
48 BFA_AEN_CAT_ITNIM = 5,
49 BFA_AEN_CAT_TIN = 6,
50 BFA_AEN_CAT_IPFC = 7,
51 BFA_AEN_CAT_AUDIT = 8,
52 BFA_AEN_CAT_IOC = 9,
53 BFA_AEN_CAT_ETHPORT = 10,
54 BFA_AEN_MAX_CAT = 10
57 #pragma pack(1)
58 union bfa_aen_data_u {
59 struct bfa_adapter_aen_data_s adapter;
60 struct bfa_port_aen_data_s port;
61 struct bfa_lport_aen_data_s lport;
62 struct bfa_rport_aen_data_s rport;
63 struct bfa_itnim_aen_data_s itnim;
64 struct bfa_audit_aen_data_s audit;
65 struct bfa_ioc_aen_data_s ioc;
66 struct bfa_ethport_aen_data_s ethport;
69 struct bfa_aen_entry_s {
70 enum bfa_aen_category aen_category;
71 int aen_type;
72 union bfa_aen_data_u aen_data;
73 struct bfa_timeval_s aen_tv;
74 s32 seq_num;
75 s32 bfad_num;
76 s32 rsvd[1];
79 #pragma pack()
81 #define bfa_aen_event_t int
83 #endif /* __BFA_DEFS_AEN_H__ */