xref: /linux/drivers/net/ethernet/qlogic/qlcnic/qlcnic_dcb.h (revision 14d385b9905920cc0136721316c185c45ee6e26c)
1*14d385b9SSucheta Chakraborty /*
2*14d385b9SSucheta Chakraborty  * QLogic qlcnic NIC Driver
3*14d385b9SSucheta Chakraborty  * Copyright (c)  2009-2013 QLogic Corporation
4*14d385b9SSucheta Chakraborty  *
5*14d385b9SSucheta Chakraborty  * See LICENSE.qlcnic for copyright and licensing details.
6*14d385b9SSucheta Chakraborty  */
7*14d385b9SSucheta Chakraborty 
8*14d385b9SSucheta Chakraborty #ifndef __QLCNIC_DCBX_H
9*14d385b9SSucheta Chakraborty #define __QLCNIC_DCBX_H
10*14d385b9SSucheta Chakraborty 
11*14d385b9SSucheta Chakraborty void qlcnic_clear_dcb_ops(struct qlcnic_adapter *);
12*14d385b9SSucheta Chakraborty 
13*14d385b9SSucheta Chakraborty #ifdef CONFIG_QLCNIC_DCB
14*14d385b9SSucheta Chakraborty int __qlcnic_register_dcb(struct qlcnic_adapter *);
15*14d385b9SSucheta Chakraborty #else
16*14d385b9SSucheta Chakraborty static inline int __qlcnic_register_dcb(struct qlcnic_adapter *adapter)
17*14d385b9SSucheta Chakraborty { return 0; }
18*14d385b9SSucheta Chakraborty #endif
19*14d385b9SSucheta Chakraborty 
20*14d385b9SSucheta Chakraborty struct qlcnic_dcb_ops {
21*14d385b9SSucheta Chakraborty 	void (*free) (struct qlcnic_adapter *);
22*14d385b9SSucheta Chakraborty 	int (*attach) (struct qlcnic_adapter *);
23*14d385b9SSucheta Chakraborty 	int (*query_hw_capability) (struct qlcnic_adapter *, char *);
24*14d385b9SSucheta Chakraborty 	int (*get_hw_capability) (struct qlcnic_adapter *);
25*14d385b9SSucheta Chakraborty 	void (*get_info) (struct qlcnic_adapter *);
26*14d385b9SSucheta Chakraborty };
27*14d385b9SSucheta Chakraborty 
28*14d385b9SSucheta Chakraborty struct qlcnic_dcb {
29*14d385b9SSucheta Chakraborty 	struct qlcnic_dcb_ops	*ops;
30*14d385b9SSucheta Chakraborty 	struct qlcnic_dcb_cfg	*cfg;
31*14d385b9SSucheta Chakraborty };
32*14d385b9SSucheta Chakraborty #endif
33