Commit bcff1a37 authored by Jakub Kicinski's avatar Jakub Kicinski

Merge branch 'cleanup-in-huawei-hinic-driver'

Zhengchao Shao says:

====================
cleanup in Huawei hinic driver

Do code cleanup in Huawei hinic driver.
====================

Link: https://lore.kernel.org/r/20220921123358.63442-1-shaozhengchao@huawei.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 3f5b606d c706df6d
...@@ -12,7 +12,6 @@ ...@@ -12,7 +12,6 @@
#define TBL_ID_FUNC_CFG_SM_INST 1 #define TBL_ID_FUNC_CFG_SM_INST 1
#define HINIC_FUNCTION_CONFIGURE_TABLE_SIZE 64 #define HINIC_FUNCTION_CONFIGURE_TABLE_SIZE 64
#define HINIC_FUNCTION_CONFIGURE_TABLE 1
struct hinic_cmd_lt_rd { struct hinic_cmd_lt_rd {
u8 status; u8 status;
......
...@@ -55,7 +55,6 @@ ...@@ -55,7 +55,6 @@
#define COALESCE_ALL_QUEUE 0xFFFF #define COALESCE_ALL_QUEUE 0xFFFF
#define COALESCE_MAX_PENDING_LIMIT (255 * COALESCE_PENDING_LIMIT_UNIT) #define COALESCE_MAX_PENDING_LIMIT (255 * COALESCE_PENDING_LIMIT_UNIT)
#define COALESCE_MAX_TIMER_CFG (255 * COALESCE_TIMER_CFG_UNIT) #define COALESCE_MAX_TIMER_CFG (255 * COALESCE_TIMER_CFG_UNIT)
#define OBJ_STR_MAX_LEN 32
struct hw2ethtool_link_mode { struct hw2ethtool_link_mode {
enum ethtool_link_mode_bit_indices link_mode_bit; enum ethtool_link_mode_bit_indices link_mode_bit;
......
...@@ -82,11 +82,6 @@ ...@@ -82,11 +82,6 @@
struct hinic_func_to_io, \ struct hinic_func_to_io, \
cmdqs) cmdqs)
enum cmdq_wqe_type {
WQE_LCMD_TYPE = 0,
WQE_SCMD_TYPE = 1,
};
enum completion_format { enum completion_format {
COMPLETE_DIRECT = 0, COMPLETE_DIRECT = 0,
COMPLETE_SGE = 1, COMPLETE_SGE = 1,
...@@ -509,8 +504,8 @@ int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs, ...@@ -509,8 +504,8 @@ int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs,
* *
* Return 0 - Success, negative - Failure * Return 0 - Success, negative - Failure
**/ **/
int hinic_set_arm_bit(struct hinic_cmdqs *cmdqs, static int hinic_set_arm_bit(struct hinic_cmdqs *cmdqs,
enum hinic_set_arm_qtype q_type, u32 q_id) enum hinic_set_arm_qtype q_type, u32 q_id)
{ {
struct hinic_cmdq *cmdq = &cmdqs->cmdq[HINIC_CMDQ_SYNC]; struct hinic_cmdq *cmdq = &cmdqs->cmdq[HINIC_CMDQ_SYNC];
struct hinic_hwif *hwif = cmdqs->hwif; struct hinic_hwif *hwif = cmdqs->hwif;
......
...@@ -177,9 +177,6 @@ int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs, ...@@ -177,9 +177,6 @@ int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs,
enum hinic_mod_type mod, u8 cmd, enum hinic_mod_type mod, u8 cmd,
struct hinic_cmdq_buf *buf_in, u64 *out_param); struct hinic_cmdq_buf *buf_in, u64 *out_param);
int hinic_set_arm_bit(struct hinic_cmdqs *cmdqs,
enum hinic_set_arm_qtype q_type, u32 q_id);
int hinic_init_cmdqs(struct hinic_cmdqs *cmdqs, struct hinic_hwif *hwif, int hinic_init_cmdqs(struct hinic_cmdqs *cmdqs, struct hinic_hwif *hwif,
void __iomem **db_area); void __iomem **db_area);
......
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
(HINIC_DMA_ATTR_BASE + (idx) * HINIC_DMA_ATTR_STRIDE) (HINIC_DMA_ATTR_BASE + (idx) * HINIC_DMA_ATTR_STRIDE)
#define HINIC_PPF_ELECTION_STRIDE 0x4 #define HINIC_PPF_ELECTION_STRIDE 0x4
#define HINIC_CSR_MAX_PORTS 4
#define HINIC_CSR_PPF_ELECTION_ADDR(idx) \ #define HINIC_CSR_PPF_ELECTION_ADDR(idx) \
(HINIC_ELECTION_BASE + (idx) * HINIC_PPF_ELECTION_STRIDE) (HINIC_ELECTION_BASE + (idx) * HINIC_PPF_ELECTION_STRIDE)
......
...@@ -29,7 +29,6 @@ ...@@ -29,7 +29,6 @@
#include "hinic_hw_io.h" #include "hinic_hw_io.h"
#include "hinic_hw_dev.h" #include "hinic_hw_dev.h"
#define IO_STATUS_TIMEOUT 100
#define OUTBOUND_STATE_TIMEOUT 100 #define OUTBOUND_STATE_TIMEOUT 100
#define DB_STATE_TIMEOUT 100 #define DB_STATE_TIMEOUT 100
...@@ -42,11 +41,6 @@ enum intr_type { ...@@ -42,11 +41,6 @@ enum intr_type {
INTR_MSIX_TYPE, INTR_MSIX_TYPE,
}; };
enum io_status {
IO_STOPPED = 0,
IO_RUNNING = 1,
};
/** /**
* parse_capability - convert device capabilities to NIC capabilities * parse_capability - convert device capabilities to NIC capabilities
* @hwdev: the HW device to set and convert device capabilities for * @hwdev: the HW device to set and convert device capabilities for
...@@ -837,8 +831,8 @@ static int hinic_l2nic_reset(struct hinic_hwdev *hwdev) ...@@ -837,8 +831,8 @@ static int hinic_l2nic_reset(struct hinic_hwdev *hwdev)
return 0; return 0;
} }
int hinic_get_interrupt_cfg(struct hinic_hwdev *hwdev, static int hinic_get_interrupt_cfg(struct hinic_hwdev *hwdev,
struct hinic_msix_config *interrupt_info) struct hinic_msix_config *interrupt_info)
{ {
u16 out_size = sizeof(*interrupt_info); u16 out_size = sizeof(*interrupt_info);
struct hinic_pfhwdev *pfhwdev; struct hinic_pfhwdev *pfhwdev;
...@@ -1041,13 +1035,6 @@ void hinic_free_hwdev(struct hinic_hwdev *hwdev) ...@@ -1041,13 +1035,6 @@ void hinic_free_hwdev(struct hinic_hwdev *hwdev)
hinic_free_hwif(hwdev->hwif); hinic_free_hwif(hwdev->hwif);
} }
int hinic_hwdev_max_num_qps(struct hinic_hwdev *hwdev)
{
struct hinic_cap *nic_cap = &hwdev->nic_cap;
return nic_cap->max_qps;
}
/** /**
* hinic_hwdev_num_qps - return the number QPs available for use * hinic_hwdev_num_qps - return the number QPs available for use
* @hwdev: the NIC HW device * @hwdev: the NIC HW device
......
...@@ -566,8 +566,6 @@ struct hinic_hwdev *hinic_init_hwdev(struct pci_dev *pdev, struct devlink *devli ...@@ -566,8 +566,6 @@ struct hinic_hwdev *hinic_init_hwdev(struct pci_dev *pdev, struct devlink *devli
void hinic_free_hwdev(struct hinic_hwdev *hwdev); void hinic_free_hwdev(struct hinic_hwdev *hwdev);
int hinic_hwdev_max_num_qps(struct hinic_hwdev *hwdev);
int hinic_hwdev_num_qps(struct hinic_hwdev *hwdev); int hinic_hwdev_num_qps(struct hinic_hwdev *hwdev);
struct hinic_sq *hinic_hwdev_get_sq(struct hinic_hwdev *hwdev, int i); struct hinic_sq *hinic_hwdev_get_sq(struct hinic_hwdev *hwdev, int i);
...@@ -587,9 +585,6 @@ int hinic_hwdev_hw_ci_addr_set(struct hinic_hwdev *hwdev, struct hinic_sq *sq, ...@@ -587,9 +585,6 @@ int hinic_hwdev_hw_ci_addr_set(struct hinic_hwdev *hwdev, struct hinic_sq *sq,
void hinic_hwdev_set_msix_state(struct hinic_hwdev *hwdev, u16 msix_index, void hinic_hwdev_set_msix_state(struct hinic_hwdev *hwdev, u16 msix_index,
enum hinic_msix_state flag); enum hinic_msix_state flag);
int hinic_get_interrupt_cfg(struct hinic_hwdev *hwdev,
struct hinic_msix_config *interrupt_info);
int hinic_set_interrupt_cfg(struct hinic_hwdev *hwdev, int hinic_set_interrupt_cfg(struct hinic_hwdev *hwdev,
struct hinic_msix_config *interrupt_info); struct hinic_msix_config *interrupt_info);
......
...@@ -57,39 +57,6 @@ int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index, ...@@ -57,39 +57,6 @@ int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index,
return 0; return 0;
} }
/**
* hinic_msix_attr_get - get message attribute of msix entry
* @hwif: the HW interface of a pci function device
* @msix_index: msix_index
* @pending_limit: the maximum pending interrupt events (unit 8)
* @coalesc_timer: coalesc period for interrupt (unit 8 us)
* @lli_timer: replenishing period for low latency credit (unit 8 us)
* @lli_credit_limit: maximum credits for low latency msix messages (unit 8)
* @resend_timer: maximum wait for resending msix (unit coalesc period)
*
* Return 0 - Success, negative - Failure
**/
int hinic_msix_attr_get(struct hinic_hwif *hwif, u16 msix_index,
u8 *pending_limit, u8 *coalesc_timer,
u8 *lli_timer, u8 *lli_credit_limit,
u8 *resend_timer)
{
u32 addr, val;
if (!VALID_MSIX_IDX(&hwif->attr, msix_index))
return -EINVAL;
addr = HINIC_CSR_MSIX_CTRL_ADDR(msix_index);
val = hinic_hwif_read_reg(hwif, addr);
*pending_limit = HINIC_MSIX_ATTR_GET(val, PENDING_LIMIT);
*coalesc_timer = HINIC_MSIX_ATTR_GET(val, COALESC_TIMER);
*lli_timer = HINIC_MSIX_ATTR_GET(val, LLI_TIMER);
*lli_credit_limit = HINIC_MSIX_ATTR_GET(val, LLI_CREDIT);
*resend_timer = HINIC_MSIX_ATTR_GET(val, RESEND_TIMER);
return 0;
}
/** /**
* hinic_msix_attr_cnt_clear - clear message attribute counters for msix entry * hinic_msix_attr_cnt_clear - clear message attribute counters for msix entry
* @hwif: the HW interface of a pci function device * @hwif: the HW interface of a pci function device
...@@ -115,8 +82,6 @@ int hinic_msix_attr_cnt_clear(struct hinic_hwif *hwif, u16 msix_index) ...@@ -115,8 +82,6 @@ int hinic_msix_attr_cnt_clear(struct hinic_hwif *hwif, u16 msix_index)
* hinic_set_pf_action - set action on pf channel * hinic_set_pf_action - set action on pf channel
* @hwif: the HW interface of a pci function device * @hwif: the HW interface of a pci function device
* @action: action on pf channel * @action: action on pf channel
*
* Return 0 - Success, negative - Failure
**/ **/
void hinic_set_pf_action(struct hinic_hwif *hwif, enum hinic_pf_action action) void hinic_set_pf_action(struct hinic_hwif *hwif, enum hinic_pf_action action)
{ {
......
...@@ -131,10 +131,6 @@ ...@@ -131,10 +131,6 @@
(((u32)(val) & HINIC_MSIX_##member##_MASK) << \ (((u32)(val) & HINIC_MSIX_##member##_MASK) << \
HINIC_MSIX_##member##_SHIFT) HINIC_MSIX_##member##_SHIFT)
#define HINIC_MSIX_ATTR_GET(val, member) \
(((val) >> HINIC_MSIX_##member##_SHIFT) & \
HINIC_MSIX_##member##_MASK)
#define HINIC_MSIX_CNT_RESEND_TIMER_SHIFT 29 #define HINIC_MSIX_CNT_RESEND_TIMER_SHIFT 29
#define HINIC_MSIX_CNT_RESEND_TIMER_MASK 0x1 #define HINIC_MSIX_CNT_RESEND_TIMER_MASK 0x1
...@@ -269,11 +265,6 @@ int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index, ...@@ -269,11 +265,6 @@ int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index,
u8 lli_timer_cfg, u8 lli_credit_limit, u8 lli_timer_cfg, u8 lli_credit_limit,
u8 resend_timer); u8 resend_timer);
int hinic_msix_attr_get(struct hinic_hwif *hwif, u16 msix_index,
u8 *pending_limit, u8 *coalesc_timer_cfg,
u8 *lli_timer, u8 *lli_credit_limit,
u8 *resend_timer);
void hinic_set_msix_state(struct hinic_hwif *hwif, u16 msix_idx, void hinic_set_msix_state(struct hinic_hwif *hwif, u16 msix_idx,
enum hinic_msix_state flag); enum hinic_msix_state flag);
......
...@@ -117,7 +117,6 @@ enum hinic_mbox_tx_status { ...@@ -117,7 +117,6 @@ enum hinic_mbox_tx_status {
#define MBOX_WB_STATUS_MASK 0xFF #define MBOX_WB_STATUS_MASK 0xFF
#define MBOX_WB_ERROR_CODE_MASK 0xFF00 #define MBOX_WB_ERROR_CODE_MASK 0xFF00
#define MBOX_WB_STATUS_FINISHED_SUCCESS 0xFF #define MBOX_WB_STATUS_FINISHED_SUCCESS 0xFF
#define MBOX_WB_STATUS_FINISHED_WITH_ERR 0xFE
#define MBOX_WB_STATUS_NOT_FINISHED 0x00 #define MBOX_WB_STATUS_NOT_FINISHED 0x00
#define MBOX_STATUS_FINISHED(wb) \ #define MBOX_STATUS_FINISHED(wb) \
...@@ -130,11 +129,8 @@ enum hinic_mbox_tx_status { ...@@ -130,11 +129,8 @@ enum hinic_mbox_tx_status {
#define SEQ_ID_START_VAL 0 #define SEQ_ID_START_VAL 0
#define SEQ_ID_MAX_VAL 42 #define SEQ_ID_MAX_VAL 42
#define DST_AEQ_IDX_DEFAULT_VAL 0
#define SRC_AEQ_IDX_DEFAULT_VAL 0
#define NO_DMA_ATTRIBUTE_VAL 0 #define NO_DMA_ATTRIBUTE_VAL 0
#define HINIC_MGMT_RSP_AEQN 0
#define HINIC_MBOX_RSP_AEQN 2 #define HINIC_MBOX_RSP_AEQN 2
#define HINIC_MBOX_RECV_AEQN 0 #define HINIC_MBOX_RECV_AEQN 0
...@@ -146,7 +142,6 @@ enum hinic_mbox_tx_status { ...@@ -146,7 +142,6 @@ enum hinic_mbox_tx_status {
#define IS_PF_OR_PPF_SRC(src_func_idx) ((src_func_idx) < HINIC_MAX_PF_FUNCS) #define IS_PF_OR_PPF_SRC(src_func_idx) ((src_func_idx) < HINIC_MAX_PF_FUNCS)
#define MBOX_RESPONSE_ERROR 0x1
#define MBOX_MSG_ID_MASK 0xFF #define MBOX_MSG_ID_MASK 0xFF
#define MBOX_MSG_ID(func_to_func) ((func_to_func)->send_msg_id) #define MBOX_MSG_ID(func_to_func) ((func_to_func)->send_msg_id)
#define MBOX_MSG_ID_INC(func_to_func_mbox) (MBOX_MSG_ID(func_to_func_mbox) = \ #define MBOX_MSG_ID_INC(func_to_func_mbox) (MBOX_MSG_ID(func_to_func_mbox) = \
...@@ -621,7 +616,7 @@ static bool check_vf_mbox_random_id(struct hinic_mbox_func_to_func *func_to_func ...@@ -621,7 +616,7 @@ static bool check_vf_mbox_random_id(struct hinic_mbox_func_to_func *func_to_func
return false; return false;
} }
void hinic_mbox_func_aeqe_handler(void *handle, void *header, u8 size) static void hinic_mbox_func_aeqe_handler(void *handle, void *header, u8 size)
{ {
struct hinic_mbox_func_to_func *func_to_func; struct hinic_mbox_func_to_func *func_to_func;
u64 mbox_header = *((u64 *)header); u64 mbox_header = *((u64 *)header);
...@@ -649,7 +644,7 @@ void hinic_mbox_func_aeqe_handler(void *handle, void *header, u8 size) ...@@ -649,7 +644,7 @@ void hinic_mbox_func_aeqe_handler(void *handle, void *header, u8 size)
recv_mbox_handler(func_to_func, (u64 *)header, recv_mbox); recv_mbox_handler(func_to_func, (u64 *)header, recv_mbox);
} }
void hinic_mbox_self_aeqe_handler(void *handle, void *header, u8 size) static void hinic_mbox_self_aeqe_handler(void *handle, void *header, u8 size)
{ {
struct hinic_mbox_func_to_func *func_to_func; struct hinic_mbox_func_to_func *func_to_func;
struct hinic_send_mbox *send_mbox; struct hinic_send_mbox *send_mbox;
......
...@@ -150,10 +150,6 @@ void hinic_unregister_pf_mbox_cb(struct hinic_hwdev *hwdev, ...@@ -150,10 +150,6 @@ void hinic_unregister_pf_mbox_cb(struct hinic_hwdev *hwdev,
void hinic_unregister_vf_mbox_cb(struct hinic_hwdev *hwdev, void hinic_unregister_vf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod); enum hinic_mod_type mod);
void hinic_mbox_func_aeqe_handler(void *handle, void *header, u8 size);
void hinic_mbox_self_aeqe_handler(void *handle, void *header, u8 size);
int hinic_func_to_func_init(struct hinic_hwdev *hwdev); int hinic_func_to_func_init(struct hinic_hwdev *hwdev);
void hinic_func_to_func_free(struct hinic_hwdev *hwdev); void hinic_func_to_func_free(struct hinic_hwdev *hwdev);
......
...@@ -472,8 +472,7 @@ int hinic_get_rq_free_wqebbs(struct hinic_rq *rq) ...@@ -472,8 +472,7 @@ int hinic_get_rq_free_wqebbs(struct hinic_rq *rq)
return atomic_read(&wq->delta) - 1; return atomic_read(&wq->delta) - 1;
} }
static void sq_prepare_ctrl(struct hinic_sq_ctrl *ctrl, u16 prod_idx, static void sq_prepare_ctrl(struct hinic_sq_ctrl *ctrl, int nr_descs)
int nr_descs)
{ {
u32 ctrl_size, task_size, bufdesc_size; u32 ctrl_size, task_size, bufdesc_size;
...@@ -588,18 +587,16 @@ void hinic_set_tso_inner_l4(struct hinic_sq_task *task, u32 *queue_info, ...@@ -588,18 +587,16 @@ void hinic_set_tso_inner_l4(struct hinic_sq_task *task, u32 *queue_info,
/** /**
* hinic_sq_prepare_wqe - prepare wqe before insert to the queue * hinic_sq_prepare_wqe - prepare wqe before insert to the queue
* @sq: send queue * @sq: send queue
* @prod_idx: pi value
* @sq_wqe: wqe to prepare * @sq_wqe: wqe to prepare
* @sges: sges for use by the wqe for send for buf addresses * @sges: sges for use by the wqe for send for buf addresses
* @nr_sges: number of sges * @nr_sges: number of sges
**/ **/
void hinic_sq_prepare_wqe(struct hinic_sq *sq, u16 prod_idx, void hinic_sq_prepare_wqe(struct hinic_sq *sq, struct hinic_sq_wqe *sq_wqe,
struct hinic_sq_wqe *sq_wqe, struct hinic_sge *sges, struct hinic_sge *sges, int nr_sges)
int nr_sges)
{ {
int i; int i;
sq_prepare_ctrl(&sq_wqe->ctrl, prod_idx, nr_sges); sq_prepare_ctrl(&sq_wqe->ctrl, nr_sges);
sq_prepare_task(&sq_wqe->task); sq_prepare_task(&sq_wqe->task);
......
...@@ -175,9 +175,8 @@ void hinic_set_tso_inner_l4(struct hinic_sq_task *task, ...@@ -175,9 +175,8 @@ void hinic_set_tso_inner_l4(struct hinic_sq_task *task,
u32 l4_len, u32 l4_len,
u32 offset, u32 ip_ident, u32 mss); u32 offset, u32 ip_ident, u32 mss);
void hinic_sq_prepare_wqe(struct hinic_sq *sq, u16 prod_idx, void hinic_sq_prepare_wqe(struct hinic_sq *sq, struct hinic_sq_wqe *wqe,
struct hinic_sq_wqe *wqe, struct hinic_sge *sges, struct hinic_sge *sges, int nr_sges);
int nr_sges);
void hinic_sq_write_db(struct hinic_sq *sq, u16 prod_idx, unsigned int wqe_size, void hinic_sq_write_db(struct hinic_sq *sq, u16 prod_idx, unsigned int wqe_size,
unsigned int cos); unsigned int cos);
......
...@@ -175,8 +175,6 @@ static int cmdq_allocate_page(struct hinic_cmdq_pages *cmdq_pages) ...@@ -175,8 +175,6 @@ static int cmdq_allocate_page(struct hinic_cmdq_pages *cmdq_pages)
/** /**
* cmdq_free_page - free page from cmdq * cmdq_free_page - free page from cmdq
* @cmdq_pages: the pages of the cmdq queue struct that hold the page * @cmdq_pages: the pages of the cmdq queue struct that hold the page
*
* Return 0 - Success, negative - Failure
**/ **/
static void cmdq_free_page(struct hinic_cmdq_pages *cmdq_pages) static void cmdq_free_page(struct hinic_cmdq_pages *cmdq_pages)
{ {
......
...@@ -261,23 +261,6 @@ ...@@ -261,23 +261,6 @@
#define HINIC_RSS_TYPE_GET(val, member) \ #define HINIC_RSS_TYPE_GET(val, member) \
(((u32)(val) >> HINIC_RSS_TYPE_##member##_SHIFT) & 0x1) (((u32)(val) >> HINIC_RSS_TYPE_##member##_SHIFT) & 0x1)
enum hinic_l4offload_type {
HINIC_L4_OFF_DISABLE = 0,
HINIC_TCP_OFFLOAD_ENABLE = 1,
HINIC_SCTP_OFFLOAD_ENABLE = 2,
HINIC_UDP_OFFLOAD_ENABLE = 3,
};
enum hinic_vlan_offload {
HINIC_VLAN_OFF_DISABLE = 0,
HINIC_VLAN_OFF_ENABLE = 1,
};
enum hinic_pkt_parsed {
HINIC_PKT_NOT_PARSED = 0,
HINIC_PKT_PARSED = 1,
};
enum hinic_l3_offload_type { enum hinic_l3_offload_type {
L3TYPE_UNKNOWN = 0, L3TYPE_UNKNOWN = 0,
IPV6_PKT = 1, IPV6_PKT = 1,
...@@ -305,18 +288,10 @@ enum hinic_outer_l3type { ...@@ -305,18 +288,10 @@ enum hinic_outer_l3type {
HINIC_OUTER_L3TYPE_IPV4_CHKSUM = 3, HINIC_OUTER_L3TYPE_IPV4_CHKSUM = 3,
}; };
enum hinic_media_type {
HINIC_MEDIA_UNKNOWN = 0,
};
enum hinic_l2type { enum hinic_l2type {
HINIC_L2TYPE_ETH = 0, HINIC_L2TYPE_ETH = 0,
}; };
enum hinc_tunnel_l4type {
HINIC_TUNNEL_L4TYPE_UNKNOWN = 0,
};
struct hinic_cmdq_header { struct hinic_cmdq_header {
u32 header_info; u32 header_info;
u32 saved_data; u32 saved_data;
......
...@@ -960,8 +960,6 @@ static void hinic_refresh_nic_cfg(struct hinic_dev *nic_dev) ...@@ -960,8 +960,6 @@ static void hinic_refresh_nic_cfg(struct hinic_dev *nic_dev)
* @in_size: input size * @in_size: input size
* @buf_out: output buffer * @buf_out: output buffer
* @out_size: returned output size * @out_size: returned output size
*
* Return 0 - Success, negative - Failure
**/ **/
static void link_status_event_handler(void *handle, void *buf_in, u16 in_size, static void link_status_event_handler(void *handle, void *buf_in, u16 in_size,
void *buf_out, u16 *out_size) void *buf_out, u16 *out_size)
...@@ -1382,8 +1380,6 @@ static int hinic_probe(struct pci_dev *pdev, ...@@ -1382,8 +1380,6 @@ static int hinic_probe(struct pci_dev *pdev,
return err; return err;
} }
#define HINIC_WAIT_SRIOV_CFG_TIMEOUT 15000
static void wait_sriov_cfg_complete(struct hinic_dev *nic_dev) static void wait_sriov_cfg_complete(struct hinic_dev *nic_dev)
{ {
struct hinic_sriov_info *sriov_info = &nic_dev->sriov_info; struct hinic_sriov_info *sriov_info = &nic_dev->sriov_info;
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
* hinic_rxq_clean_stats - Clean the statistics of specific queue * hinic_rxq_clean_stats - Clean the statistics of specific queue
* @rxq: Logical Rx Queue * @rxq: Logical Rx Queue
**/ **/
void hinic_rxq_clean_stats(struct hinic_rxq *rxq) static void hinic_rxq_clean_stats(struct hinic_rxq *rxq)
{ {
struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats;
......
...@@ -41,8 +41,6 @@ struct hinic_rxq { ...@@ -41,8 +41,6 @@ struct hinic_rxq {
struct napi_struct napi; struct napi_struct napi;
}; };
void hinic_rxq_clean_stats(struct hinic_rxq *rxq);
void hinic_rxq_get_stats(struct hinic_rxq *rxq, struct hinic_rxq_stats *stats); void hinic_rxq_get_stats(struct hinic_rxq *rxq, struct hinic_rxq_stats *stats);
int hinic_init_rxq(struct hinic_rxq *rxq, struct hinic_rq *rq, int hinic_init_rxq(struct hinic_rxq *rxq, struct hinic_rq *rq,
......
...@@ -24,6 +24,7 @@ MODULE_PARM_DESC(set_vf_link_state, "Set vf link state, 0 represents link auto, ...@@ -24,6 +24,7 @@ MODULE_PARM_DESC(set_vf_link_state, "Set vf link state, 0 represents link auto,
#define HINIC_VLAN_PRIORITY_SHIFT 13 #define HINIC_VLAN_PRIORITY_SHIFT 13
#define HINIC_ADD_VLAN_IN_MAC 0x8000 #define HINIC_ADD_VLAN_IN_MAC 0x8000
#define HINIC_TX_RATE_TABLE_FULL 12 #define HINIC_TX_RATE_TABLE_FULL 12
#define HINIC_MAX_QOS 7
static int hinic_set_mac(struct hinic_hwdev *hwdev, const u8 *mac_addr, static int hinic_set_mac(struct hinic_hwdev *hwdev, const u8 *mac_addr,
u16 vlan_id, u16 func_id) u16 vlan_id, u16 func_id)
...@@ -774,7 +775,7 @@ int hinic_ndo_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, ...@@ -774,7 +775,7 @@ int hinic_ndo_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos,
u16 vlanprio, cur_vlanprio; u16 vlanprio, cur_vlanprio;
sriov_info = &nic_dev->sriov_info; sriov_info = &nic_dev->sriov_info;
if (vf >= sriov_info->num_vfs || vlan > 4095 || qos > 7) if (vf >= sriov_info->num_vfs || vlan >= VLAN_N_VID || qos > HINIC_MAX_QOS)
return -EINVAL; return -EINVAL;
if (vlan_proto != htons(ETH_P_8021Q)) if (vlan_proto != htons(ETH_P_8021Q))
return -EPROTONOSUPPORT; return -EPROTONOSUPPORT;
...@@ -820,7 +821,7 @@ int hinic_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting) ...@@ -820,7 +821,7 @@ int hinic_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting)
cur_trust = nic_io->vf_infos[vf].trust; cur_trust = nic_io->vf_infos[vf].trust;
/* same request, so just return success */ /* same request, so just return success */
if ((setting && cur_trust) || (!setting && !cur_trust)) if (setting == cur_trust)
return 0; return 0;
err = hinic_set_vf_trust(adapter->hwdev, vf, setting); err = hinic_set_vf_trust(adapter->hwdev, vf, setting);
...@@ -940,7 +941,7 @@ int hinic_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting) ...@@ -940,7 +941,7 @@ int hinic_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting)
cur_spoofchk = nic_dev->hwdev->func_to_io.vf_infos[vf].spoofchk; cur_spoofchk = nic_dev->hwdev->func_to_io.vf_infos[vf].spoofchk;
/* same request, so just return success */ /* same request, so just return success */
if ((setting && cur_spoofchk) || (!setting && !cur_spoofchk)) if (setting == cur_spoofchk)
return 0; return 0;
err = hinic_set_vf_spoofchk(sriov_info->hwdev, err = hinic_set_vf_spoofchk(sriov_info->hwdev,
...@@ -1131,8 +1132,8 @@ static void hinic_clear_vf_infos(struct hinic_dev *nic_dev, u16 vf_id) ...@@ -1131,8 +1132,8 @@ static void hinic_clear_vf_infos(struct hinic_dev *nic_dev, u16 vf_id)
hinic_init_vf_infos(&nic_dev->hwdev->func_to_io, HW_VF_ID_TO_OS(vf_id)); hinic_init_vf_infos(&nic_dev->hwdev->func_to_io, HW_VF_ID_TO_OS(vf_id));
} }
static int hinic_deinit_vf_hw(struct hinic_sriov_info *sriov_info, static void hinic_deinit_vf_hw(struct hinic_sriov_info *sriov_info,
u16 start_vf_id, u16 end_vf_id) u16 start_vf_id, u16 end_vf_id)
{ {
struct hinic_dev *nic_dev; struct hinic_dev *nic_dev;
u16 func_idx, idx; u16 func_idx, idx;
...@@ -1145,8 +1146,6 @@ static int hinic_deinit_vf_hw(struct hinic_sriov_info *sriov_info, ...@@ -1145,8 +1146,6 @@ static int hinic_deinit_vf_hw(struct hinic_sriov_info *sriov_info,
HINIC_HW_WQ_PAGE_SIZE); HINIC_HW_WQ_PAGE_SIZE);
hinic_clear_vf_infos(nic_dev, idx); hinic_clear_vf_infos(nic_dev, idx);
} }
return 0;
} }
int hinic_vf_func_init(struct hinic_hwdev *hwdev) int hinic_vf_func_init(struct hinic_hwdev *hwdev)
...@@ -1293,7 +1292,7 @@ int hinic_pci_sriov_disable(struct pci_dev *pdev) ...@@ -1293,7 +1292,7 @@ int hinic_pci_sriov_disable(struct pci_dev *pdev)
return 0; return 0;
} }
int hinic_pci_sriov_enable(struct pci_dev *pdev, int num_vfs) static int hinic_pci_sriov_enable(struct pci_dev *pdev, int num_vfs)
{ {
struct hinic_sriov_info *sriov_info; struct hinic_sriov_info *sriov_info;
int err; int err;
......
...@@ -98,8 +98,6 @@ void hinic_notify_all_vfs_link_changed(struct hinic_hwdev *hwdev, ...@@ -98,8 +98,6 @@ void hinic_notify_all_vfs_link_changed(struct hinic_hwdev *hwdev,
int hinic_pci_sriov_disable(struct pci_dev *dev); int hinic_pci_sriov_disable(struct pci_dev *dev);
int hinic_pci_sriov_enable(struct pci_dev *dev, int num_vfs);
int hinic_vf_func_init(struct hinic_hwdev *hwdev); int hinic_vf_func_init(struct hinic_hwdev *hwdev);
void hinic_vf_func_free(struct hinic_hwdev *hwdev); void hinic_vf_func_free(struct hinic_hwdev *hwdev);
......
...@@ -74,7 +74,7 @@ enum hinic_offload_type { ...@@ -74,7 +74,7 @@ enum hinic_offload_type {
* hinic_txq_clean_stats - Clean the statistics of specific queue * hinic_txq_clean_stats - Clean the statistics of specific queue
* @txq: Logical Tx Queue * @txq: Logical Tx Queue
**/ **/
void hinic_txq_clean_stats(struct hinic_txq *txq) static void hinic_txq_clean_stats(struct hinic_txq *txq)
{ {
struct hinic_txq_stats *txq_stats = &txq->txq_stats; struct hinic_txq_stats *txq_stats = &txq->txq_stats;
...@@ -530,7 +530,7 @@ netdev_tx_t hinic_lb_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -530,7 +530,7 @@ netdev_tx_t hinic_lb_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
} }
process_sq_wqe: process_sq_wqe:
hinic_sq_prepare_wqe(txq->sq, prod_idx, sq_wqe, txq->sges, nr_sges); hinic_sq_prepare_wqe(txq->sq, sq_wqe, txq->sges, nr_sges);
hinic_sq_write_wqe(txq->sq, prod_idx, sq_wqe, skb, wqe_size); hinic_sq_write_wqe(txq->sq, prod_idx, sq_wqe, skb, wqe_size);
flush_skbs: flush_skbs:
...@@ -614,7 +614,7 @@ netdev_tx_t hinic_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -614,7 +614,7 @@ netdev_tx_t hinic_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
} }
process_sq_wqe: process_sq_wqe:
hinic_sq_prepare_wqe(txq->sq, prod_idx, sq_wqe, txq->sges, nr_sges); hinic_sq_prepare_wqe(txq->sq, sq_wqe, txq->sges, nr_sges);
err = hinic_tx_offload(skb, &sq_wqe->task, &sq_wqe->ctrl.queue_info); err = hinic_tx_offload(skb, &sq_wqe->task, &sq_wqe->ctrl.queue_info);
if (err) if (err)
......
...@@ -40,8 +40,6 @@ struct hinic_txq { ...@@ -40,8 +40,6 @@ struct hinic_txq {
struct napi_struct napi; struct napi_struct napi;
}; };
void hinic_txq_clean_stats(struct hinic_txq *txq);
void hinic_txq_get_stats(struct hinic_txq *txq, struct hinic_txq_stats *stats); void hinic_txq_get_stats(struct hinic_txq *txq, struct hinic_txq_stats *stats);
netdev_tx_t hinic_lb_xmit_frame(struct sk_buff *skb, struct net_device *netdev); netdev_tx_t hinic_lb_xmit_frame(struct sk_buff *skb, struct net_device *netdev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment