diff options
Diffstat (limited to 'drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h')
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h new file mode 100644 index 000000000000..b87ce9fb503e --- /dev/null +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h | |||
@@ -0,0 +1,41 @@ | |||
1 | /* | ||
2 | * QLogic qlcnic NIC Driver | ||
3 | * Copyright (c) 2009-2013 QLogic Corporation | ||
4 | * | ||
5 | * See LICENSE.qlcnic for copyright and licensing details. | ||
6 | */ | ||
7 | |||
8 | #ifndef __QLCNIC_DCBX_H | ||
9 | #define __QLCNIC_DCBX_H | ||
10 | |||
11 | void qlcnic_clear_dcb_ops(struct qlcnic_adapter *); | ||
12 | |||
13 | #ifdef CONFIG_QLCNIC_DCB | ||
14 | int __qlcnic_register_dcb(struct qlcnic_adapter *); | ||
15 | #else | ||
16 | static inline int __qlcnic_register_dcb(struct qlcnic_adapter *adapter) | ||
17 | { return 0; } | ||
18 | #endif | ||
19 | |||
20 | struct qlcnic_dcb_ops { | ||
21 | void (*init_dcbnl_ops) (struct qlcnic_adapter *); | ||
22 | void (*free) (struct qlcnic_adapter *); | ||
23 | int (*attach) (struct qlcnic_adapter *); | ||
24 | int (*query_hw_capability) (struct qlcnic_adapter *, char *); | ||
25 | int (*get_hw_capability) (struct qlcnic_adapter *); | ||
26 | void (*get_info) (struct qlcnic_adapter *); | ||
27 | int (*query_cee_param) (struct qlcnic_adapter *, char *, u8); | ||
28 | int (*get_cee_cfg) (struct qlcnic_adapter *); | ||
29 | int (*register_aen) (struct qlcnic_adapter *, bool); | ||
30 | void (*handle_aen) (struct qlcnic_adapter *, void *); | ||
31 | }; | ||
32 | |||
33 | struct qlcnic_dcb { | ||
34 | struct qlcnic_dcb_mbx_params *param; | ||
35 | struct qlcnic_adapter *adapter; | ||
36 | struct delayed_work aen_work; | ||
37 | struct workqueue_struct *wq; | ||
38 | struct qlcnic_dcb_ops *ops; | ||
39 | struct qlcnic_dcb_cfg *cfg; | ||
40 | }; | ||
41 | #endif | ||