bfa_defs_aen.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  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. #ifndef __BFA_DEFS_AEN_H__
  18. #define __BFA_DEFS_AEN_H__
  19. #include <defs/bfa_defs_types.h>
  20. #include <defs/bfa_defs_ioc.h>
  21. #include <defs/bfa_defs_adapter.h>
  22. #include <defs/bfa_defs_port.h>
  23. #include <defs/bfa_defs_lport.h>
  24. #include <defs/bfa_defs_rport.h>
  25. #include <defs/bfa_defs_itnim.h>
  26. #include <defs/bfa_defs_tin.h>
  27. #include <defs/bfa_defs_ipfc.h>
  28. #include <defs/bfa_defs_audit.h>
  29. #include <defs/bfa_defs_ethport.h>
  30. #define BFA_AEN_MAX_APP 5
  31. enum bfa_aen_app {
  32. bfa_aen_app_bcu = 0, /* No thread for bcu */
  33. bfa_aen_app_hcm = 1,
  34. bfa_aen_app_cim = 2,
  35. bfa_aen_app_snia = 3,
  36. bfa_aen_app_test = 4, /* To be removed after unit test */
  37. };
  38. enum bfa_aen_category {
  39. BFA_AEN_CAT_ADAPTER = 1,
  40. BFA_AEN_CAT_PORT = 2,
  41. BFA_AEN_CAT_LPORT = 3,
  42. BFA_AEN_CAT_RPORT = 4,
  43. BFA_AEN_CAT_ITNIM = 5,
  44. BFA_AEN_CAT_TIN = 6,
  45. BFA_AEN_CAT_IPFC = 7,
  46. BFA_AEN_CAT_AUDIT = 8,
  47. BFA_AEN_CAT_IOC = 9,
  48. BFA_AEN_CAT_ETHPORT = 10,
  49. BFA_AEN_MAX_CAT = 10
  50. };
  51. #pragma pack(1)
  52. union bfa_aen_data_u {
  53. struct bfa_adapter_aen_data_s adapter;
  54. struct bfa_port_aen_data_s port;
  55. struct bfa_lport_aen_data_s lport;
  56. struct bfa_rport_aen_data_s rport;
  57. struct bfa_itnim_aen_data_s itnim;
  58. struct bfa_audit_aen_data_s audit;
  59. struct bfa_ioc_aen_data_s ioc;
  60. struct bfa_ethport_aen_data_s ethport;
  61. };
  62. struct bfa_aen_entry_s {
  63. enum bfa_aen_category aen_category;
  64. int aen_type;
  65. union bfa_aen_data_u aen_data;
  66. struct bfa_timeval_s aen_tv;
  67. s32 seq_num;
  68. s32 bfad_num;
  69. s32 rsvd[1];
  70. };
  71. #pragma pack()
  72. #define bfa_aen_event_t int
  73. #endif /* __BFA_DEFS_AEN_H__ */