162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci/* Copyright (c) 2019, Intel Corporation. */ 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci#ifndef _ICE_DEVLINK_H_ 562306a36Sopenharmony_ci#define _ICE_DEVLINK_H_ 662306a36Sopenharmony_ci 762306a36Sopenharmony_cistruct ice_pf *ice_allocate_pf(struct device *dev); 862306a36Sopenharmony_ci 962306a36Sopenharmony_civoid ice_devlink_register(struct ice_pf *pf); 1062306a36Sopenharmony_civoid ice_devlink_unregister(struct ice_pf *pf); 1162306a36Sopenharmony_ciint ice_devlink_register_params(struct ice_pf *pf); 1262306a36Sopenharmony_civoid ice_devlink_unregister_params(struct ice_pf *pf); 1362306a36Sopenharmony_ciint ice_devlink_create_pf_port(struct ice_pf *pf); 1462306a36Sopenharmony_civoid ice_devlink_destroy_pf_port(struct ice_pf *pf); 1562306a36Sopenharmony_ciint ice_devlink_create_vf_port(struct ice_vf *vf); 1662306a36Sopenharmony_civoid ice_devlink_destroy_vf_port(struct ice_vf *vf); 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_civoid ice_devlink_init_regions(struct ice_pf *pf); 1962306a36Sopenharmony_civoid ice_devlink_destroy_regions(struct ice_pf *pf); 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciint ice_devlink_rate_init_tx_topology(struct devlink *devlink, struct ice_vsi *vsi); 2262306a36Sopenharmony_civoid ice_tear_down_devlink_rate_tree(struct ice_pf *pf); 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci#endif /* _ICE_DEVLINK_H_ */ 25