linux/drivers/net/ethernet/hisilicon/hns3/hns3_common/hclge_comm_rss.c

// SPDX-License-Identifier: GPL-2.0+
// Copyright (c) 2021-2021 Hisilicon Limited.
#include <linux/skbuff.h>

#include "hnae3.h"
#include "hclge_comm_cmd.h"
#include "hclge_comm_rss.h"

static const u8 hclge_comm_hash_key[] =;

static void
hclge_comm_init_rss_tuple(struct hnae3_ae_dev *ae_dev,
			  struct hclge_comm_rss_tuple_cfg *rss_tuple_cfg)
{}

int hclge_comm_rss_init_cfg(struct hnae3_handle *nic,
			    struct hnae3_ae_dev *ae_dev,
			    struct hclge_comm_rss_cfg *rss_cfg)
{}
EXPORT_SYMBOL_GPL();

void hclge_comm_get_rss_tc_info(u16 rss_size, u8 hw_tc_map, u16 *tc_offset,
				u16 *tc_valid, u16 *tc_size)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_set_rss_tc_mode(struct hclge_comm_hw *hw, u16 *tc_offset,
			       u16 *tc_valid, u16 *tc_size)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_set_rss_hash_key(struct hclge_comm_rss_cfg *rss_cfg,
				struct hclge_comm_hw *hw, const u8 *key,
				const u8 hfunc)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_set_rss_tuple(struct hnae3_ae_dev *ae_dev,
			     struct hclge_comm_hw *hw,
			     struct hclge_comm_rss_cfg *rss_cfg,
			     struct ethtool_rxnfc *nfc)
{}
EXPORT_SYMBOL_GPL();

u32 hclge_comm_get_rss_key_size(struct hnae3_handle *handle)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_parse_rss_hfunc(struct hclge_comm_rss_cfg *rss_cfg,
			       const u8 hfunc, u8 *hash_algo)
{}

void hclge_comm_rss_indir_init_cfg(struct hnae3_ae_dev *ae_dev,
				   struct hclge_comm_rss_cfg *rss_cfg)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_get_rss_tuple(struct hclge_comm_rss_cfg *rss_cfg, int flow_type,
			     u8 *tuple_sets)
{}
EXPORT_SYMBOL_GPL();

static void
hclge_comm_append_rss_msb_info(struct hclge_comm_rss_ind_tbl_cmd *req,
			       u16 qid, u32 j)
{}

int hclge_comm_set_rss_indir_table(struct hnae3_ae_dev *ae_dev,
				   struct hclge_comm_hw *hw, const u16 *indir)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_set_rss_input_tuple(struct hclge_comm_hw *hw,
				   struct hclge_comm_rss_cfg *rss_cfg)
{}
EXPORT_SYMBOL_GPL();

void hclge_comm_get_rss_hash_info(struct hclge_comm_rss_cfg *rss_cfg, u8 *key,
				  u8 *hfunc)
{}
EXPORT_SYMBOL_GPL();

void hclge_comm_get_rss_indir_tbl(struct hclge_comm_rss_cfg *rss_cfg,
				  u32 *indir, u16 rss_ind_tbl_size)
{}
EXPORT_SYMBOL_GPL();

int hclge_comm_set_rss_algo_key(struct hclge_comm_hw *hw, const u8 hfunc,
				const u8 *key)
{}
EXPORT_SYMBOL_GPL();

static u8 hclge_comm_get_rss_hash_bits(struct ethtool_rxnfc *nfc)
{}

int hclge_comm_init_rss_tuple_cmd(struct hclge_comm_rss_cfg *rss_cfg,
				  struct ethtool_rxnfc *nfc,
				  struct hnae3_ae_dev *ae_dev,
				  struct hclge_comm_rss_input_tuple_cmd *req)
{}

u64 hclge_comm_convert_rss_tuple(u8 tuple_sets)
{}
EXPORT_SYMBOL_GPL();