diff options
Diffstat (limited to 'drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h')
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h | 109 |
1 files changed, 13 insertions, 96 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h index c04ae0c..b87ce9f 100644 --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h @@ -8,29 +8,26 @@ #ifndef __QLCNIC_DCBX_H #define __QLCNIC_DCBX_H -#define QLCNIC_DCB_STATE 0 -#define QLCNIC_DCB_AEN_MODE 1 +void qlcnic_clear_dcb_ops(struct qlcnic_adapter *); #ifdef CONFIG_QLCNIC_DCB -int qlcnic_register_dcb(struct qlcnic_adapter *); +int __qlcnic_register_dcb(struct qlcnic_adapter *); #else -static inline int qlcnic_register_dcb(struct qlcnic_adapter *adapter) +static inline int __qlcnic_register_dcb(struct qlcnic_adapter *adapter) { return 0; } #endif -struct qlcnic_dcb; - struct qlcnic_dcb_ops { - int (*query_hw_capability) (struct qlcnic_dcb *, char *); - int (*get_hw_capability) (struct qlcnic_dcb *); - int (*query_cee_param) (struct qlcnic_dcb *, char *, u8); - void (*init_dcbnl_ops) (struct qlcnic_dcb *); - int (*register_aen) (struct qlcnic_dcb *, bool); - void (*aen_handler) (struct qlcnic_dcb *, void *); - int (*get_cee_cfg) (struct qlcnic_dcb *); - void (*get_info) (struct qlcnic_dcb *); - int (*attach) (struct qlcnic_dcb *); - void (*free) (struct qlcnic_dcb *); + void (*init_dcbnl_ops) (struct qlcnic_adapter *); + void (*free) (struct qlcnic_adapter *); + int (*attach) (struct qlcnic_adapter *); + int (*query_hw_capability) (struct qlcnic_adapter *, char *); + int (*get_hw_capability) (struct qlcnic_adapter *); + void (*get_info) (struct qlcnic_adapter *); + int (*query_cee_param) (struct qlcnic_adapter *, char *, u8); + int (*get_cee_cfg) (struct qlcnic_adapter *); + int (*register_aen) (struct qlcnic_adapter *, bool); + void (*handle_aen) (struct qlcnic_adapter *, void *); }; struct qlcnic_dcb { @@ -40,85 +37,5 @@ struct qlcnic_dcb { struct workqueue_struct *wq; struct qlcnic_dcb_ops *ops; struct qlcnic_dcb_cfg *cfg; - unsigned long state; }; - -static inline void qlcnic_clear_dcb_ops(struct qlcnic_dcb *dcb) -{ - kfree(dcb); - dcb = NULL; -} - -static inline int qlcnic_dcb_get_hw_capability(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->get_hw_capability) - return dcb->ops->get_hw_capability(dcb); - - return 0; -} - -static inline void qlcnic_dcb_free(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->free) - dcb->ops->free(dcb); -} - -static inline int qlcnic_dcb_attach(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->attach) - return dcb->ops->attach(dcb); - - return 0; -} - -static inline int -qlcnic_dcb_query_hw_capability(struct qlcnic_dcb *dcb, char *buf) -{ - if (dcb && dcb->ops->query_hw_capability) - return dcb->ops->query_hw_capability(dcb, buf); - - return 0; -} - -static inline void qlcnic_dcb_get_info(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->get_info) - dcb->ops->get_info(dcb); -} - -static inline int -qlcnic_dcb_query_cee_param(struct qlcnic_dcb *dcb, char *buf, u8 type) -{ - if (dcb && dcb->ops->query_cee_param) - return dcb->ops->query_cee_param(dcb, buf, type); - - return 0; -} - -static inline int qlcnic_dcb_get_cee_cfg(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->get_cee_cfg) - return dcb->ops->get_cee_cfg(dcb); - - return 0; -} - -static inline void -qlcnic_dcb_register_aen(struct qlcnic_dcb *dcb, u8 flag) -{ - if (dcb && dcb->ops->register_aen) - dcb->ops->register_aen(dcb, flag); -} - -static inline void qlcnic_dcb_aen_handler(struct qlcnic_dcb *dcb, void *msg) -{ - if (dcb && dcb->ops->aen_handler) - dcb->ops->aen_handler(dcb, msg); -} - -static inline void qlcnic_dcb_init_dcbnl_ops(struct qlcnic_dcb *dcb) -{ - if (dcb && dcb->ops->init_dcbnl_ops) - dcb->ops->init_dcbnl_ops(dcb); -} #endif |