1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2019, Intel Corporation. */
3 
4 #ifndef _ICE_DCB_H_
5 #define _ICE_DCB_H_
6 
7 #include "ice_type.h"
8 
9 #define ICE_DCBX_STATUS_IN_PROGRESS	1
10 #define ICE_DCBX_STATUS_DONE		2
11 
12 u8 ice_get_dcbx_status(struct ice_hw *hw);
13 #ifdef CONFIG_DCB
14 enum ice_status ice_aq_start_lldp(struct ice_hw *hw, struct ice_sq_cd *cd);
15 enum ice_status
16 ice_aq_start_stop_dcbx(struct ice_hw *hw, bool start_dcbx_agent,
17 		       bool *dcbx_agent_status, struct ice_sq_cd *cd);
18 #else /* CONFIG_DCB */
19 static inline enum ice_status
20 ice_aq_start_lldp(struct ice_hw __always_unused *hw,
21 		  struct ice_sq_cd __always_unused *cd)
22 {
23 	return 0;
24 }
25 
26 static inline enum ice_status
27 ice_aq_start_stop_dcbx(struct ice_hw __always_unused *hw,
28 		       bool __always_unused start_dcbx_agent,
29 		       bool *dcbx_agent_status,
30 		       struct ice_sq_cd __always_unused *cd)
31 {
32 	*dcbx_agent_status = false;
33 
34 	return 0;
35 }
36 #endif /* CONFIG_DCB */
37 #endif /* _ICE_DCB_H_ */
38