1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*
- * QLogic qlcnic NIC Driver
- * Copyright (c) 2009-2013 QLogic Corporation
- *
- * See LICENSE.qlcnic for copyright and licensing details.
- */
- #ifndef __QLCNIC_DCBX_H
- #define __QLCNIC_DCBX_H
- void qlcnic_clear_dcb_ops(struct qlcnic_adapter *);
- #ifdef CONFIG_QLCNIC_DCB
- int __qlcnic_register_dcb(struct qlcnic_adapter *);
- #else
- static inline int __qlcnic_register_dcb(struct qlcnic_adapter *adapter)
- { return 0; }
- #endif
- struct qlcnic_dcb_ops {
- 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 {
- struct qlcnic_dcb_mbx_params *param;
- struct qlcnic_adapter *adapter;
- struct delayed_work aen_work;
- struct workqueue_struct *wq;
- struct qlcnic_dcb_ops *ops;
- struct qlcnic_dcb_cfg *cfg;
- };
- #endif
|