0b02c95194
The DCF (Device Config Function) works at the user PF level, it can't access the real PF hardware directly. So it will pass through the PF's AdminQ command by the DCF's mailbox. And the DCF is mainly used to control the flow setting of other VFs, so it only needs to initialize some core functions related to the flow. Signed-off-by: Haiyue Wang <haiyue.wang@intel.com> Acked-by: Qi Zhang <qi.z.zhang@intel.com>
34 lines
780 B
C
34 lines
780 B
C
/* SPDX-License-Identifier: BSD-3-Clause
|
|
* Copyright(c) 2020 Intel Corporation
|
|
*/
|
|
|
|
#ifndef _ICE_DCF_ETHDEV_H_
|
|
#define _ICE_DCF_ETHDEV_H_
|
|
|
|
#include "base/ice_common.h"
|
|
#include "base/ice_adminq_cmd.h"
|
|
|
|
#include "ice_ethdev.h"
|
|
#include "ice_dcf.h"
|
|
|
|
#define ICE_DCF_MAX_RINGS 1
|
|
|
|
struct ice_dcf_queue {
|
|
uint64_t dummy;
|
|
};
|
|
|
|
struct ice_dcf_adapter {
|
|
struct ice_adapter parent; /* Must be first */
|
|
|
|
struct ice_dcf_hw real_hw;
|
|
struct ice_dcf_queue rxqs[ICE_DCF_MAX_RINGS];
|
|
struct ice_dcf_queue txqs[ICE_DCF_MAX_RINGS];
|
|
};
|
|
|
|
void ice_dcf_handle_pf_event_msg(struct ice_dcf_hw *dcf_hw,
|
|
uint8_t *msg, uint16_t msglen);
|
|
int ice_dcf_init_parent_adapter(struct rte_eth_dev *eth_dev);
|
|
void ice_dcf_uninit_parent_adapter(struct rte_eth_dev *eth_dev);
|
|
|
|
#endif /* _ICE_DCF_ETHDEV_H_ */
|