xref: /dpdk/drivers/net/hns3/hns3_mp.h (revision 2ad146efb1f4f7881ce90299fd62fb004d2cdaf0)
123d4b61fSWei Hu (Xavier) /* SPDX-License-Identifier: BSD-3-Clause
253e6f86cSMin Hu (Connor)  * Copyright(c) 2018-2021 HiSilicon Limited.
323d4b61fSWei Hu (Xavier)  */
423d4b61fSWei Hu (Xavier) 
5*2ad146efSChengwen Feng #ifndef HNS3_MP_H
6*2ad146efSChengwen Feng #define HNS3_MP_H
723d4b61fSWei Hu (Xavier) 
81c757dd5SChengwen Feng #include <ethdev_driver.h>
91c757dd5SChengwen Feng 
10841f8693SHuisong Li /* Local data for primary or secondary process. */
11841f8693SHuisong Li struct hns3_process_local_data {
12841f8693SHuisong Li 	bool init_done; /* Process action register completed flag. */
13841f8693SHuisong Li 	int eth_dev_cnt; /* Ethdev count under the current process. */
14841f8693SHuisong Li };
15841f8693SHuisong Li 
1623d4b61fSWei Hu (Xavier) void hns3_mp_req_start_rxtx(struct rte_eth_dev *dev);
1723d4b61fSWei Hu (Xavier) void hns3_mp_req_stop_rxtx(struct rte_eth_dev *dev);
1869f9b420SHuisong Li void hns3_mp_req_start_tx(struct rte_eth_dev *dev);
1969f9b420SHuisong Li void hns3_mp_req_stop_tx(struct rte_eth_dev *dev);
2069f9b420SHuisong Li 
21ff6dc76eSHuisong Li int hns3_mp_init(struct rte_eth_dev *dev);
22ff6dc76eSHuisong Li void hns3_mp_uninit(struct rte_eth_dev *dev);
2323d4b61fSWei Hu (Xavier) 
24*2ad146efSChengwen Feng #endif /* HNS3_MP_H */
25