#include "hnae3.h"
#include "hclge_comm_cmd.h"
static void hclge_comm_cmd_config_regs(struct hclge_comm_hw *hw,
struct hclge_comm_cmq_ring *ring)
{ … }
void hclge_comm_cmd_init_regs(struct hclge_comm_hw *hw)
{ … }
void hclge_comm_cmd_reuse_desc(struct hclge_desc *desc, bool is_read)
{ … }
EXPORT_SYMBOL_GPL(…);
static void hclge_comm_set_default_capability(struct hnae3_ae_dev *ae_dev,
bool is_pf)
{ … }
void hclge_comm_cmd_setup_basic_desc(struct hclge_desc *desc,
enum hclge_opcode_type opcode,
bool is_read)
{ … }
EXPORT_SYMBOL_GPL(…);
int hclge_comm_firmware_compat_config(struct hnae3_ae_dev *ae_dev,
struct hclge_comm_hw *hw, bool en)
{ … }
void hclge_comm_free_cmd_desc(struct hclge_comm_cmq_ring *ring)
{ … }
static int hclge_comm_alloc_cmd_desc(struct hclge_comm_cmq_ring *ring)
{ … }
static __le32 hclge_comm_build_api_caps(void)
{ … }
static const struct hclge_comm_caps_bit_map hclge_pf_cmd_caps[] = …;
static const struct hclge_comm_caps_bit_map hclge_vf_cmd_caps[] = …;
static void
hclge_comm_capability_to_bitmap(unsigned long *bitmap, __le32 *caps)
{ … }
static void
hclge_comm_parse_capability(struct hnae3_ae_dev *ae_dev, bool is_pf,
struct hclge_comm_query_version_cmd *cmd)
{ … }
int hclge_comm_alloc_cmd_queue(struct hclge_comm_hw *hw, int ring_type)
{ … }
int hclge_comm_cmd_query_version_and_capability(struct hnae3_ae_dev *ae_dev,
struct hclge_comm_hw *hw,
u32 *fw_version, bool is_pf)
{ … }
static const u16 spec_opcode[] = …;
static bool hclge_comm_is_special_opcode(u16 opcode)
{ … }
static int hclge_comm_ring_space(struct hclge_comm_cmq_ring *ring)
{ … }
static void hclge_comm_cmd_copy_desc(struct hclge_comm_hw *hw,
struct hclge_desc *desc, int num)
{ … }
static int hclge_comm_is_valid_csq_clean_head(struct hclge_comm_cmq_ring *ring,
int head)
{ … }
static int hclge_comm_cmd_csq_clean(struct hclge_comm_hw *hw)
{ … }
static int hclge_comm_cmd_csq_done(struct hclge_comm_hw *hw)
{ … }
static u32 hclge_get_cmdq_tx_timeout(u16 opcode, u32 tx_timeout)
{ … }
static void hclge_comm_wait_for_resp(struct hclge_comm_hw *hw, u16 opcode,
bool *is_completed)
{ … }
static int hclge_comm_cmd_convert_err_code(u16 desc_ret)
{ … }
static int hclge_comm_cmd_check_retval(struct hclge_comm_hw *hw,
struct hclge_desc *desc, int num,
int ntc)
{ … }
static int hclge_comm_cmd_check_result(struct hclge_comm_hw *hw,
struct hclge_desc *desc,
int num, int ntc)
{ … }
int hclge_comm_cmd_send(struct hclge_comm_hw *hw, struct hclge_desc *desc,
int num)
{ … }
EXPORT_SYMBOL_GPL(…);
static void hclge_comm_cmd_uninit_regs(struct hclge_comm_hw *hw)
{ … }
void hclge_comm_cmd_uninit(struct hnae3_ae_dev *ae_dev,
struct hclge_comm_hw *hw)
{ … }
EXPORT_SYMBOL_GPL(…);
int hclge_comm_cmd_queue_init(struct pci_dev *pdev, struct hclge_comm_hw *hw)
{ … }
EXPORT_SYMBOL_GPL(…);
void hclge_comm_cmd_init_ops(struct hclge_comm_hw *hw,
const struct hclge_comm_cmq_ops *ops)
{ … }
EXPORT_SYMBOL_GPL(…);
int hclge_comm_cmd_init(struct hnae3_ae_dev *ae_dev, struct hclge_comm_hw *hw,
u32 *fw_version, bool is_pf,
unsigned long reset_pending)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;