From: Shaozhengchao <shaozhengchao(a)huawei.com>
commit 89b31b95cfaa65c48b3b9a0ebeb36b936ea194d4 openEuler-1.0
driver inclusion
category:bugfix
bugzilla:4472
CVE:NA
-----------------------------------------------------------------------
modify comment
Signed-off-by: Shaozhengchao <shaozhengchao(a)huawei.com>
Reviewed-by: Luoshaokai <luoshaokai(a)huawei.com>
Reviewed-by: Yang Yingliang <yangyingliang(a)huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang(a)huawei.com>
Signed-off-by: Xin Hao <haoxing990(a)gmail.com>
---
.../net/ethernet/huawei/hinic/hinic_api_cmd.c | 6 ++-
.../net/ethernet/huawei/hinic/hinic_cmdq.c | 1 -
.../ethernet/huawei/hinic/hinic_dbgtool_knl.c | 12 ++++-
drivers/net/ethernet/huawei/hinic/hinic_dcb.c | 1 -
drivers/net/ethernet/huawei/hinic/hinic_eqs.c | 37 ++++++++--------
.../net/ethernet/huawei/hinic/hinic_ethtool.c | 4 +-
drivers/net/ethernet/huawei/hinic/hinic_hw.h | 9 ----
.../net/ethernet/huawei/hinic/hinic_hw_mgmt.h | 2 -
.../net/ethernet/huawei/hinic/hinic_hwdev.c | 10 ++---
.../net/ethernet/huawei/hinic/hinic_hwif.c | 20 ++++++---
drivers/net/ethernet/huawei/hinic/hinic_lld.c | 9 +---
.../net/ethernet/huawei/hinic/hinic_main.c | 4 --
.../net/ethernet/huawei/hinic/hinic_mbox.c | 44 ++++++++-----------
.../net/ethernet/huawei/hinic/hinic_mgmt.c | 17 ++++---
.../ethernet/huawei/hinic/hinic_msix_attr.c | 18 ++++----
.../huawei/hinic/hinic_multi_host_mgmt.c | 2 -
.../net/ethernet/huawei/hinic/hinic_nictool.c | 1 -
.../net/ethernet/huawei/hinic/hinic_nictool.h | 3 +-
drivers/net/ethernet/huawei/hinic/hinic_rx.c | 1 -
.../ethernet/huawei/hinic/hinic_sml_counter.c | 21 ++++++---
.../net/ethernet/huawei/hinic/hinic_sriov.c | 4 +-
drivers/net/ethernet/huawei/hinic/hinic_tx.c | 2 +-
22 files changed, 108 insertions(+), 120 deletions(-)
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_api_cmd.c
b/drivers/net/ethernet/huawei/hinic/hinic_api_cmd.c
index 6ead68963cf8..a76212ddabcf 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_api_cmd.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_api_cmd.c
@@ -145,6 +145,7 @@ static void dump_api_chain_reg(struct hinic_api_cmd_chain *chain)
/**
* chain_busy - check if the chain is still processing last requests
* @chain: chain to check
+ * Return: 0 - success, negative - failure
**/
static int chain_busy(struct hinic_api_cmd_chain *chain)
{
@@ -192,6 +193,8 @@ static int chain_busy(struct hinic_api_cmd_chain *chain)
/**
* get_cell_data_size - get the data size of specific cell type
* @type: chain type
+ * @cmd_size: the command size
+ * Return: cell_data_size
**/
static u16 get_cell_data_size(enum hinic_api_cmd_chain_type type, u16 cmd_size)
{
@@ -310,7 +313,6 @@ static void prepare_api_cmd(struct hinic_api_cmd_chain *chain,
* @dest: destination node on the card that will receive the command
* @cmd: command data
* @cmd_size: the command size
- * Return: 0 - success, negative - failure
**/
static void prepare_cell(struct hinic_api_cmd_chain *chain,
enum hinic_node_id dest,
@@ -1123,7 +1125,7 @@ static void api_cmd_destroy_chain(struct hinic_api_cmd_chain
*chain)
/**
* hinic_api_cmd_init - Initialize all the API CMD chains
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
* @chain: the API CMD chains that will be initialized
* Return: 0 - success, negative - failure
**/
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_cmdq.c
b/drivers/net/ethernet/huawei/hinic/hinic_cmdq.c
index 3f52123be4af..3d15f2f98002 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_cmdq.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_cmdq.c
@@ -488,7 +488,6 @@ static void cmdq_set_inline_wqe(struct hinic_cmdq_wqe *wqe,
complete_format = COMPLETE_DIRECT;
wqe_scmd->completion.direct_resp = 0;
break;
- /* TODO: ASYNC CMD */
default:
break;
}
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c
b/drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c
index 49be3e06e526..a05ec864ea37 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c
@@ -153,6 +153,7 @@ int hinic_mem_mmap(struct file *filp, struct vm_area_struct *vma)
* dbgtool_knl_api_cmd_read - used for read operations
* @para: the dbgtool parameter
* @g_func_handle_array: global function handle
+ * Return: 0 - success, negative - failure
**/
long dbgtool_knl_api_cmd_read(struct dbgtool_param *para,
void **g_func_handle_array)
@@ -235,6 +236,7 @@ long dbgtool_knl_api_cmd_read(struct dbgtool_param *para,
* dbgtool_knl_api_cmd_write - used for write operations
* @para: the dbgtool parameter
* @g_func_handle_array: global function handle
+ * Return: 0 - success, negative - failure
**/
long dbgtool_knl_api_cmd_write(struct dbgtool_param *para,
void **g_func_handle_array)
@@ -331,6 +333,7 @@ void chipif_get_all_pf_dev_info(struct pf_dev_info *dev_info, int
card_idx,
* dbgtool_knl_pf_dev_info_get - Obtain the pf sdk_info
* @para: the dbgtool parameter
* @g_func_handle_array: global function handle
+ * Return: 0 - success, negative - failure
**/
long dbgtool_knl_pf_dev_info_get(struct dbgtool_param *para,
void **g_func_handle_array)
@@ -388,6 +391,7 @@ long dbgtool_knl_pf_dev_info_get(struct dbgtool_param *para,
* dbgtool_knl_ffm_info_rd - Read ffm information
* @para: the dbgtool parameter
* @dbgtool_info: the dbgtool info
+ * Return: 0 - success, negative - failure
**/
long dbgtool_knl_ffm_info_rd(struct dbgtool_param *para,
struct dbgtool_k_glb_info *dbgtool_info)
@@ -404,7 +408,7 @@ long dbgtool_knl_ffm_info_rd(struct dbgtool_param *para,
/**
* dbgtool_knl_ffm_info_clr - Clear FFM information
- * @para: the dbgtool parameter
+ * @para: unused
* @dbgtool_info: the dbgtool info
**/
long dbgtool_knl_ffm_info_clr(struct dbgtool_param *para,
@@ -421,6 +425,7 @@ long dbgtool_knl_ffm_info_clr(struct dbgtool_param *para,
* dbgtool_knl_msg_to_up - After receiving dbgtool command sends a message to uP
* @para: the dbgtool parameter
* @g_func_handle_array: global function handle
+ * Return: 0 - success, negative - failure
**/
long dbgtool_knl_msg_to_up(struct dbgtool_param *para,
void **g_func_handle_array)
@@ -621,7 +626,9 @@ long dbgtool_knl_unlocked_ioctl(struct file *pfile,
* ffm_intr_msg_record - FFM interruption records sent up
* @handle: the function handle
* @buf_in: the pointer to input buffer
- * @buf_out: the pointer to outputput buffer
+ * @in_size: the input buffer size
+ * @buf_out: the pointer to output buffer
+ * @out_size: the output buffer size
**/
void ffm_intr_msg_record(void *handle, void *buf_in, u16 in_size,
void *buf_out, u16 *out_size)
@@ -717,6 +724,7 @@ static const struct file_operations dbgtool_file_operations = {
* dbgtool_knl_init - dbgtool character device init
* @hwdev: the pointer to hardware device
* @chip_node: the pointer to card node
+ * Return: 0 - success, negative - failure
**/
int dbgtool_knl_init(void *vhwdev, void *chip_node)
{
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_dcb.c
b/drivers/net/ethernet/huawei/hinic/hinic_dcb.c
index 8f80a8f240a3..480d19bbf530 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_dcb.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_dcb.c
@@ -297,7 +297,6 @@ int hinic_setup_tc(struct net_device *netdev, u8 tc)
}
if (tc) {
- /* TODO: verify if num_tc should be power of 2 */
if (tc & (tc - 1)) {
nicif_err(nic_dev, drv, netdev,
"Invalid num_tc: %d, must be power of 2\n",
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_eqs.c
b/drivers/net/ethernet/huawei/hinic/hinic_eqs.c
index 80650f8de8da..3074f8b48fac 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_eqs.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_eqs.c
@@ -303,10 +303,10 @@ static u8 eq_cons_idx_checksum_set(u32 val)
/**
* hinic_aeq_register_hw_cb - register aeq callback for specific event
- * @eqs: pointer to eqs part of the chip
+ * @hwdev: pointer to hw device
* @event: event for the handler
- * @handle: private data will be used by the callback
* @hw_cb: callback function
+ * Return: 0 - success, negative - failure
**/
int hinic_aeq_register_hw_cb(void *hwdev, enum hinic_aeq_type event,
hinic_aeq_hwe_cb hwe_cb)
@@ -328,7 +328,7 @@ EXPORT_SYMBOL(hinic_aeq_register_hw_cb);
/**
* hinic_aeq_unregister_hw_cb - unregister the aeq callback for specific event
- * @eqs: pointer to eqs part of the chip
+ * @hwdev: pointer to hw device
* @event: event for the handler
**/
void hinic_aeq_unregister_hw_cb(void *hwdev, enum hinic_aeq_type event)
@@ -351,10 +351,10 @@ EXPORT_SYMBOL(hinic_aeq_unregister_hw_cb);
/**
* hinic_aeq_register_sw_cb - register aeq callback for sw event
- * @eqs: pointer to eqs part of the chip
- * @handle: private data will be used by the callback
+ * @hwdev: pointer to hw device
* @event: soft event for the handler
* @sw_cb: callback function
+ * Return: 0 - success, negative - failure
**/
int hinic_aeq_register_swe_cb(void *hwdev, enum hinic_aeq_sw_type event,
hinic_aeq_swe_cb aeq_swe_cb)
@@ -376,7 +376,7 @@ EXPORT_SYMBOL(hinic_aeq_register_swe_cb);
/**
* hinic_aeq_unregister_sw_cb - unregister the aeq callback for sw event
- * @eqs: pointer to eqs part of the chip
+ * @hwdev: pointer to hw device
* @event: soft event for the handler
**/
void hinic_aeq_unregister_swe_cb(void *hwdev, enum hinic_aeq_sw_type event)
@@ -399,10 +399,10 @@ EXPORT_SYMBOL(hinic_aeq_unregister_swe_cb);
/**
* hinic_ceq_register_sw_cb - register ceq callback for specific event
- * @ceqs: pointer to eqs part of the chip
+ * @hwdev: pointer to hw device
* @event: event for the handler
- * @handle: private data will be used by the callback
- * @ceq_cb: callback function
+ * @callback: callback function
+ * Return: 0 - success, negative - failure
**/
int hinic_ceq_register_cb(void *hwdev, enum hinic_ceq_event event,
hinic_ceq_event_cb callback)
@@ -424,7 +424,7 @@ EXPORT_SYMBOL(hinic_ceq_register_cb);
/**
* hinic_ceq_unregister_cb - unregister ceq callback for specific event
- * @ceqs: pointer to eqs part of the chip
+ * @hwdev: pointer to hw device
* @event: event for the handler
**/
void hinic_ceq_unregister_cb(void *hwdev, enum hinic_ceq_event event)
@@ -448,7 +448,7 @@ EXPORT_SYMBOL(hinic_ceq_unregister_cb);
/**
* set_eq_cons_idx - write the cons idx to the hw
* @eq: The event queue to update the cons idx for
- * @cons idx: consumer index value
+ * @arm_state: arm state value
**/
static void set_eq_cons_idx(struct hinic_eq *eq, u32 arm_state)
{
@@ -584,6 +584,7 @@ static bool aeq_irq_handler(struct hinic_eq *eq)
/**
* ceq_irq_handler - handler for the ceq event
* @eq: the completion event queue of the event
+ * Return: true - success, false - failure
**/
static bool ceq_irq_handler(struct hinic_eq *eq)
{
@@ -633,6 +634,7 @@ static void reschedule_eq_handler(struct hinic_eq *eq)
/**
* eq_irq_handler - handler for the eq event
* @data: the event queue of the event
+ * Return: true - success, false - failure
**/
static bool eq_irq_handler(void *data)
{
@@ -808,6 +810,7 @@ static int set_ceq_ctrl_reg(struct hinic_hwdev *hwdev, u16 q_id,
/**
* set_eq_ctrls - setting eq's ctrls registers
* @eq: the event queue for setting
+ * Return: 0 - success, negative - failure
**/
static int set_eq_ctrls(struct hinic_eq *eq)
{
@@ -1064,11 +1067,10 @@ static inline u32 get_page_size(struct hinic_eq *eq)
/**
* init_eq - initialize eq
* @eq: the event queue
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
* @q_id: Queue id number
* @q_len: the number of EQ elements
* @type: the type of the event queue, ceq or aeq
- * @page_size: the page size of the event queue
* @entry: msix entry associated with the event queue
* Return: 0 - Success, Negative - failure
**/
@@ -1199,11 +1201,8 @@ static void remove_eq(struct hinic_eq *eq)
/**
* hinic_aeqs_init - init all the aeqs
- * @aeqs: aeqs part of the chip
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
* @num_ceqs: number of AEQs
- * @q_len: number of EQ elements
- * @page_size: the page size of the event queue
* @msix_entries: msix entries associated with the event queues
* Return: 0 - Success, Negative - failure
**/
@@ -1261,7 +1260,7 @@ int hinic_aeqs_init(struct hinic_hwdev *hwdev, u16 num_aeqs,
/**
* hinic_aeqs_free - free all the aeqs
- * @aeqs: aeqs part of the chip
+ * @hwdev: the pointer to hw device
**/
void hinic_aeqs_free(struct hinic_hwdev *hwdev)
{
@@ -1344,7 +1343,7 @@ int hinic_ceqs_init(struct hinic_hwdev *hwdev, u16 num_ceqs,
/**
* hinic_ceqs_free - free all the ceqs
- * @ceqs: ceqs part of the chip
+ * @hwdev: the pointer to hw device
**/
void hinic_ceqs_free(struct hinic_hwdev *hwdev)
{
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_ethtool.c
b/drivers/net/ethernet/huawei/hinic/hinic_ethtool.c
index e563d8aea676..2ee5f57c0600 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_ethtool.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_ethtool.c
@@ -991,7 +991,7 @@ static int hinic_set_ringparam(struct net_device *netdev,
if (new_sq_depth == nic_dev->sq_depth &&
new_rq_depth == nic_dev->rq_depth)
- return 0; /* nothing to do */
+ return 0; /* nothing will do */
if (test_bit(HINIC_BP_ENABLE, &nic_dev->flags) &&
new_rq_depth <= nic_dev->bp_upper_thd) {
@@ -1012,7 +1012,6 @@ static int hinic_set_ringparam(struct net_device *netdev,
nicif_info(nic_dev, drv, netdev, "Restarting netdev\n");
err = hinic_close(netdev);
if (err) {
- /* TODO: how to restore?? */
nicif_err(nic_dev, drv, netdev,
"Failed to close netdev\n");
return -EFAULT;
@@ -1739,7 +1738,6 @@ static int hinic_set_phys_id(struct net_device *netdev,
return 0;
}
#else
-/* TODO: implement */
static int hinic_phys_id(struct net_device *netdev, u32 data)
{
struct hinic_nic_dev *nic_dev = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_hw.h
b/drivers/net/ethernet/huawei/hinic/hinic_hw.h
index 69b069ba0cd3..f6fb9d24de10 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_hw.h
+++ b/drivers/net/ethernet/huawei/hinic/hinic_hw.h
@@ -365,15 +365,6 @@ enum hinic_func_cap {
(!(hinic_get_func_feature_cap(hwdev) & \
HINIC_FUNC_OFFLOAD_OVS_UNSUPP))
-/* chip interface initialization(including allocating system initialization
- * interface control structure, obtained from the space bar or FW interface
- * capabilities, msix initialization, aeqs initialization, pf/up
- * communication module initialization)
- * adapter_hdl: record hinic_pcidev or NDIS_Adapter pointer address
- * pcidev_hdl: record the pcidev or Handler pointer address
- * dev_hdl: record pcidev->dev or Handler pointer which is used to dma address
- * allocation or dev_err print the parameter
- */
int hinic_init_hwdev(struct hinic_init_para *para);
int hinic_set_vf_dev_cap(void *hwdev);
void hinic_free_hwdev(void *hwdev);
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h
b/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h
index f2143c05526e..5f5044ecdec6 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h
+++ b/drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h
@@ -223,11 +223,9 @@ struct rdma_service_cap {
* (1 << (32-ilog2(num_mpt)))-1;
*/
- /* todo: need to check whether related to max_mtt_seg */
u32 num_mtts; /* Number of MTT table (4M),
* is actually MTT seg number
*/
- /* todo: max value needs to be confirmed */
/* MTT table number of Each MTT seg(3)*/
u32 log_mtt_seg;
u32 mtt_entry_sz; /* MTT table size 8B, including 1 PA(64bits)*/
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_hwdev.c
b/drivers/net/ethernet/huawei/hinic/hinic_hwdev.c
index 26939981877c..c358a8363c5e 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_hwdev.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_hwdev.c
@@ -1463,7 +1463,7 @@ static int hinic_pf_rx_tx_flush(struct hinic_hwdev *hwdev)
int err;
int ret = 0;
- /* wait ucode stop I/O */
+ /* wait ucode stop I/O */
msleep(100);
err = wait_cmdq_stop(hwdev);
@@ -1706,7 +1706,7 @@ static int init_ceqs_msix_attr(struct hinic_hwdev *hwdev)
/**
* set_pf_dma_attr_entry - set the dma attributes for entry
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
* @entry_idx: the entry index in the dma table
* @st: PCIE TLP steering tag
* @at: PCIE TLP AT field
@@ -1776,13 +1776,13 @@ static int set_vf_dma_attr_entry(struct hinic_hwdev *hwdev, u8
entry_idx,
/**
* dma_attr_table_init - initialize the the default dma attributes
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
+ * Return: 0 - success, negative - failure
**/
static int dma_attr_table_init(struct hinic_hwdev *hwdev)
{
int err = 0;
- /* TODO: check if set pf dma attr through uP, the same as vf */
if (HINIC_IS_VF(hwdev))
err = set_vf_dma_attr_entry(hwdev, PCIE_MSIX_ATTR_ENTRY,
HINIC_PCIE_ST_DISABLE,
@@ -4429,7 +4429,7 @@ static u8 hinic_get_heartbeat_status(struct hinic_hwdev *hwdev)
sdk_err(hwdev->dev_hdl, "Detect pcie is link down\n");
hinic_set_chip_absent(hwdev);
hinic_force_complete_all(hwdev);
- /* :should notify chiperr to pangea
+ /* should notify chiperr to pangea
* when detecting pcie link down
*/
return 1;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_hwif.c
b/drivers/net/ethernet/huawei/hinic/hinic_hwif.c
index 260c61d19242..53e5daa3a1ea 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_hwif.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_hwif.c
@@ -47,7 +47,7 @@ void hinic_hwif_write_reg(struct hinic_hwif *hwif, u32 reg, u32 val)
/**
* hwif_ready - test if the HW initialization passed
- * @hwif: the hardware interface of a pci function device
+ * @hwdev: the pointer to hw device
* Return: 0 - success, negative - failure
**/
static int hwif_ready(struct hinic_hwdev *hwdev)
@@ -534,8 +534,8 @@ static void __print_selftest_reg(struct hinic_hwdev *hwdev)
/**
* hinic_init_hwif - initialize the hw interface
- * @hwif: the hardware interface of a pci function device
- * @pdev: the pci device that will be part of the hwif struct
+ * @hwdev: the pointer to hw device
+ * @cfg_reg_base: configuration base address
* Return: 0 - success, negative - failure
**/
int hinic_init_hwif(struct hinic_hwdev *hwdev, void *cfg_reg_base,
@@ -604,8 +604,7 @@ int hinic_init_hwif(struct hinic_hwdev *hwdev, void *cfg_reg_base,
/**
* hinic_free_hwif - free the hw interface
- * @hwif: the hardware interface of a pci function device
- * @pdev: the pci device that will be part of the hwif struct
+ * @hwdev: the pointer to hw device
**/
void hinic_free_hwif(struct hinic_hwdev *hwdev)
{
@@ -673,7 +672,10 @@ u16 hinic_global_func_id(void *hwdev)
}
EXPORT_SYMBOL(hinic_global_func_id);
-/*get function id from register,used by sriov hot migration process*/
+/**
+ * get function id from register,used by sriov hot migration process
+ * @hwdev: the pointer to hw device
+ **/
u16 hinic_global_func_id_hw(void *hwdev)
{
u32 addr, attr0;
@@ -755,7 +757,11 @@ void hinic_func_own_free(void *hwdev)
up(&dev->func_sem);
}
-/*get function id, used by sriov hot migratition process.*/
+/**
+ * get function id, used by sriov hot migratition process.
+ * @hwdev: the pointer to hw device
+ * @func_id: function id
+ **/
int hinic_global_func_id_get(void *hwdev, u16 *func_id)
{
struct hinic_hwdev *dev = (struct hinic_hwdev *)hwdev;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_lld.c
b/drivers/net/ethernet/huawei/hinic/hinic_lld.c
index f653694dfbd6..60dccca8f34f 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_lld.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_lld.c
@@ -356,9 +356,6 @@ static void attach_ulds(struct hinic_pcidev *dev)
enum hinic_service_type type;
for (type = SERVICE_T_OVS; type < SERVICE_T_MAX; type++) {
- /* TODO: here need get service feature from hw mgmt,
- * check if this pcie function shuold run the driver
- */
if (g_uld_info[type].probe)
attach_uld(dev, type, &g_uld_info[type]);
}
@@ -536,7 +533,7 @@ int hinic_version_cmp(char *ver1, char *ver2)
int ver1_num, ver2_num;
int split;
- /* To compat older firmware version: B017/B018 */
+ /* To compat older firmware version */
if (ver1[0] == 'B')
return -1;
@@ -1749,8 +1746,6 @@ static void slave_host_mgmt_work(struct work_struct *work)
container_of(work, struct hinic_pcidev, slave_nic_work);
__set_nic_func_state(pci_adapter);
-
- /* TODO: if failed, send message to master host */
}
static void __multi_host_mgmt(struct hinic_pcidev *dev,
@@ -1865,7 +1860,7 @@ static int mapping_bar(struct pci_dev *pdev, struct hinic_pcidev
*pci_adapter)
dwqe_addr = pci_adapter->db_base_phy + HINIC_DB_DWQE_SIZE;
- /* arm do not support call ioremap_wc(), refer to */
+ /* arm do not support call ioremap_wc() */
pci_adapter->dwqe_mapping = __ioremap(dwqe_addr, HINIC_DB_DWQE_SIZE,
__pgprot(PROT_DEVICE_nGnRnE));
if (!pci_adapter->dwqe_mapping) {
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_main.c
b/drivers/net/ethernet/huawei/hinic/hinic_main.c
index a4c9b06a808f..157563a6dcae 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_main.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_main.c
@@ -1260,10 +1260,6 @@ static int hinic_set_mac_addr(struct net_device *netdev, void
*addr)
nicif_info(nic_dev, drv, netdev, "Set new mac address %pM\n",
saddr->sa_data);
- /* TODO: vlan mac address of the device must be modified of kernel
- * larger than 4.7 (not modified mac address of vlan)
- */
-
return 0;
}
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_mbox.c
b/drivers/net/ethernet/huawei/hinic/hinic_mbox.c
index da8d590f1a62..c9d18da19f38 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_mbox.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_mbox.c
@@ -253,11 +253,10 @@ static int send_mbox_to_func(struct hinic_mbox_func_to_func
*func_to_func,
/**
* hinic_register_ppf_mbox_cb - register mbox callback for ppf
- * @func_to_func: pointer to func_to_func part of the chip
+ * @hwdev: the pointer to hw device
* @mod: specific mod that the callback will handle
- * @handle specific mod's private data that will be used in callback
* @callback: callback function
- * Return:
+ * Return: 0 - success, negative - failure
*/
int hinic_register_ppf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod,
@@ -277,11 +276,10 @@ int hinic_register_ppf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_register_pf_mbox_cb - register mbox callback for pf
- * @func_to_func: pointer to func_to_func part of the chip
+ * @hwdev: the pointer to hw device
* @mod: specific mod that the callback will handle
- * @handle specific mod's private data that will be used in callback
* @callback: callback function
- * Return:
+ * Return: 0 - success, negative - failure
*/
int hinic_register_pf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod,
@@ -301,11 +299,10 @@ int hinic_register_pf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_register_vf_mbox_cb - register mbox callback for vf
- * @func_to_func: pointer to func_to_func part of the chip
+ * @hwdev: the pointer to hw device
* @mod: specific mod that the callback will handle
- * @handle specific mod's private data that will be used in callback
* @callback: callback function
- * Return:
+ * Return: 0 - success, negative - failure
*/
int hinic_register_vf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod,
@@ -325,11 +322,10 @@ int hinic_register_vf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_register_ppf_to_pf_mbox_cb - register mbox callback for pf from ppf
- * @func_to_func: pointer to func_to_func part of the chip
- * @mod: specific mod that the callback will handle
- * @handle specific mod's private data that will be used in callback
- * @callback: callback function
- * Return:
+ * @hwdev: the pointer to hw device
+ * @mod: specific mod that the callback will handle
+ * @callback: callback function
+ * Return: 0 - success, negative - failure
*/
int hinic_register_ppf_to_pf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod,
@@ -350,9 +346,8 @@ int hinic_register_ppf_to_pf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_unregister_ppf_mbox_cb - unregister the mbox callback for ppf
- * @func_to_func: pointer to func_to_func part of the chip
- * @mod: specific mod that the callback will handle
- * Return:
+ * @hwdev: the pointer to hw device
+ * @mod: specific mod that the callback will handle
*/
void hinic_unregister_ppf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod)
@@ -370,9 +365,8 @@ void hinic_unregister_ppf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_unregister_ppf_mbox_cb - unregister the mbox callback for pf
- * @func_to_func: pointer to func_to_func part of the chip
- * @mod: specific mod that the callback will handle
- * Return:
+ * @hwdev: the pointer to hw device
+ * @mod: specific mod that the callback will handle
*/
void hinic_unregister_pf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod)
@@ -390,9 +384,8 @@ void hinic_unregister_pf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_unregister_vf_mbox_cb - unregister the mbox callback for vf
- * @func_to_func: pointer to func_to_func part of the chip
- * @mod: specific mod that the callback will handle
- * Return:
+ * @hwdev: the pointer to hw device
+ * @mod: specific mod that the callback will handle
*/
void hinic_unregister_vf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod)
@@ -410,9 +403,8 @@ void hinic_unregister_vf_mbox_cb(struct hinic_hwdev *hwdev,
/**
* hinic_unregister_ppf_mbox_cb - unregister the mbox callback for pf from ppf
- * @func_to_func: pointer to func_to_func part of the chip
- * @mod: specific mod that the callback will handle
- * Return:
+ * @hwdev: the pointer to hw device
+ * @mod: specific mod that the callback will handle
*/
void hinic_unregister_ppf_to_pf_mbox_cb(struct hinic_hwdev *hwdev,
enum hinic_mod_type mod)
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_mgmt.c
b/drivers/net/ethernet/huawei/hinic/hinic_mgmt.c
index 6a2c10923033..d1392fedb4f2 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_mgmt.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_mgmt.c
@@ -83,9 +83,11 @@ static void pf_to_mgmt_send_event_set(struct hinic_msg_pf_to_mgmt
*pf_to_mgmt,
/**
* hinic_register_mgmt_msg_cb - register sync msg handler for a module
- * @pf_to_mgmt: PF to MGMT channel
+ * @hwdev: the pointer to hw device
* @mod: module in the chip that this handler will handle its sync messages
+ * @pri_handle: pri handle function
* @callback: the handler for a sync message that will handle messages
+ * Return: 0 - success, negative - failure
**/
int hinic_register_mgmt_msg_cb(void *hwdev, enum hinic_mod_type mod,
void *pri_handle, hinic_mgmt_msg_cb callback)
@@ -110,7 +112,7 @@ EXPORT_SYMBOL(hinic_register_mgmt_msg_cb);
/**
* hinic_unregister_mgmt_msg_cb - unregister sync msg handler for a module
- * @pf_to_mgmt: PF to MGMT channel
+ * @hwdev: the pointer to hw device
* @mod: module in the chip that this handler will handle its sync messages
**/
void hinic_unregister_mgmt_msg_cb(void *hwdev, enum hinic_mod_type mod)
@@ -217,7 +219,9 @@ static u16 mgmt_msg_len(u16 msg_data_len)
* @header: pointer of the header to prepare
* @msg_len: the length of the message
* @mod: module in the chip that will get the message
+ * @ack_type: message ack type
* @direction: the direction of the original message
+ * @cmd: vmd type
* @msg_id: message id
**/
static void prepare_header(struct hinic_msg_pf_to_mgmt *pf_to_mgmt,
@@ -291,6 +295,7 @@ static void prepare_mgmt_cmd(u8 *mgmt_cmd, u64 *header, const void
*msg,
* @msg: the data of the message
* @msg_len: the length of the message
* @direction: the direction of the original message
+ * @resp_msg_id: msg id to response for
* Return: 0 - success, negative - failure
**/
static int send_msg_to_mgmt_async(struct hinic_msg_pf_to_mgmt *pf_to_mgmt,
@@ -1192,7 +1197,7 @@ static void recv_mgmt_msg_handler(struct hinic_msg_pf_to_mgmt
*pf_to_mgmt,
/**
* hinic_mgmt_msg_aeqe_handler - handler for a mgmt message event
- * @handle: PF to MGMT channel
+ * @hwdev: the pointer to hw device
* @header: the header of the message
* @size: unused
**/
@@ -1298,7 +1303,6 @@ static int alloc_msg_buf(struct hinic_msg_pf_to_mgmt *pf_to_mgmt)
/**
* free_msg_buf - free all the message buffers of PF to MGMT channel
* @pf_to_mgmt: PF to MGMT channel
- * Return: 0 - success, negative - failure
**/
static void free_msg_buf(struct hinic_msg_pf_to_mgmt *pf_to_mgmt)
{
@@ -1312,8 +1316,7 @@ static void free_msg_buf(struct hinic_msg_pf_to_mgmt *pf_to_mgmt)
/**
* hinic_pf_to_mgmt_init - initialize PF to MGMT channel
- * @pf_to_mgmt: PF to MGMT channel
- * @hwif: HW interface the PF to MGMT will use for accessing HW
+ * @hwdev: the pointer to hw device
* Return: 0 - success, negative - failure
**/
int hinic_pf_to_mgmt_init(struct hinic_hwdev *hwdev)
@@ -1369,7 +1372,7 @@ int hinic_pf_to_mgmt_init(struct hinic_hwdev *hwdev)
/**
* hinic_pf_to_mgmt_free - free PF to MGMT channel
- * @pf_to_mgmt: PF to MGMT channel
+ * @hwdev: the pointer to hw device
**/
void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
{
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_msix_attr.c
b/drivers/net/ethernet/huawei/hinic/hinic_msix_attr.c
index df92040bec98..0261e736bb19 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_msix_attr.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_msix_attr.c
@@ -31,9 +31,9 @@
* @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_timer_cfg: replenishing period for low latency credit (unit 8 us)
* @lli_credit_limit: maximum credits for low latency msix messages (unit 8)
- * @resend_timer_cfg: maximum wait for resending msix message
+ * @resend_timer: maximum wait for resending msix message
* (unit coalesc period)
* Return: 0 - success, negative - failure
**/
@@ -65,8 +65,8 @@ int hinic_msix_attr_set(struct hinic_hwif *hwif, u16 msix_index,
* @hwif: the hardware 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)
+ * @coalesc_timer_cfg: coalesc period for interrupt (unit 8 us)
+ * @lli_timer_cfg: replenishing period for low latency credit (unit 8 us)
* @lli_credit_limit: maximum credits for low latency msix messages (unit 8)
* @resend_timer_cfg: maximum wait for resending msix message
* (unit coalesc period)
@@ -98,11 +98,11 @@ int hinic_msix_attr_get(struct hinic_hwif *hwif, u16 msix_index,
* hinic_msix_attr_cnt_set - set message attribute counters of msix entry
* @hwif: the hardware 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 interrupt (unit 8 us)
- * @lli_credit_limit: maximum credits for low latency msix messages (unit 8)
- * @resend_timer_cfg: maximum wait for resending msix message
+ * @lli_timer_cnt: replenishing period for low latency interrupt (unit 8 us)
+ * @lli_credit_cnt: maximum credits for low latency msix messages (unit 8)
+ * @coalesc_timer_cnt: coalesc period for interrupt (unit 8 us)
+ * @pending_cnt: the maximum pending interrupt events (unit 8)
+ * @resend_timer_cnt: maximum wait for resending msix message
* (unit coalesc period)
* Return: 0 - success, negative - failure
**/
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.c
b/drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.c
index aad4b2c38a4b..95ea46abed3d 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.c
@@ -559,7 +559,6 @@ int hinic_ppf_process_mbox_msg(struct hinic_hwdev *hwdev, u16 pf_idx,
u16 vf_id,
bool same_host = false;
int err = -EFAULT;
- /* TODO: receive message from other host? get host id from pf_id */
/* modify same_host according to hinic_get_hw_pf_infos */
switch (hwdev->func_mode) {
@@ -880,7 +879,6 @@ int hinic_multi_host_mgmt_init(struct hinic_hwdev *hwdev)
hwdev->mhost_mgmt->mhost_ppf_idx = 0;
if (IS_BMGW_MASTER_HOST(hwdev) || IS_BMGW_SLAVE_HOST(hwdev)) {
/* fix slave host ppf 6 and host 2 in bmwg mode
- * TODO: get ppf_idx and host_idx according to pf_infos
*/
hwdev->mhost_mgmt->shost_ppf_idx = 6;
hwdev->mhost_mgmt->shost_host_idx = 2;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_nictool.c
b/drivers/net/ethernet/huawei/hinic/hinic_nictool.c
index f82e2be947ee..93e7b5c9539a 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_nictool.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_nictool.c
@@ -262,7 +262,6 @@ static int get_tx_wqe_info(struct hinic_nic_dev *nic_dev,
if (!info || !buf_out || in_size != sizeof(*info))
return -EFAULT;
- /* TODO: change the type of info->q_id */
q_id = (u16)info->q_id;
idx = (u16)info->wqe_id;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_nictool.h
b/drivers/net/ethernet/huawei/hinic/hinic_nictool.h
index 8e848a004d86..cfbe4359c906 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_nictool.h
+++ b/drivers/net/ethernet/huawei/hinic/hinic_nictool.h
@@ -173,7 +173,7 @@ struct hinic_dbg_sq_info {
u16 fi;/* hw_ci */
u32 q_depth;
- u16 pi_reverse;/* TODO: what is this? */
+ u16 pi_reverse;
u16 weqbb_size;
u8 priority;
@@ -182,7 +182,6 @@ struct hinic_dbg_sq_info {
void *slq_handle;
- /* TODO: NIC don't use direct wqe */
struct hinic_tx_hw_page direct_wqe;
struct hinic_tx_hw_page db_addr;
u32 pg_idx;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_rx.c
b/drivers/net/ethernet/huawei/hinic/hinic_rx.c
index 6396fdd6c51e..0564c9efcf16 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_rx.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_rx.c
@@ -966,7 +966,6 @@ static void hinic_maybe_reconfig_rss_indir(struct net_device *netdev)
if (!nic_dev->rss_indir_user)
return;
- /* TODO: if dcb is enabled, user can not config rss indir table */
if (test_bit(HINIC_DCB_ENABLE, &nic_dev->flags))
goto discard_user_rss_indir;
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_sml_counter.c
b/drivers/net/ethernet/huawei/hinic/hinic_sml_counter.c
index 9315aaeb8543..012f8af0fc39 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_sml_counter.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_sml_counter.c
@@ -77,8 +77,9 @@ static void hinic_sml_ctr_write_build_req(chipif_sml_ctr_wr_req_s *msg,
/**
* hinic_sm_ctr_rd32 - small single 32 counter read
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value: read counter value ptr
* Return: 0 - success, negative - failure
@@ -112,8 +113,9 @@ EXPORT_SYMBOL(hinic_sm_ctr_rd32);
/**
* hinic_sm_ctr_rd32_clear - small single 32 counter read and clear to zero
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value: read counter value ptr
* Return: 0 - success, negative - failure
@@ -151,8 +153,9 @@ EXPORT_SYMBOL(hinic_sm_ctr_rd32_clear);
/**
* hinic_sm_ctr_wr32 - small single 32 counter write
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value: write counter value
* Return: 0 - success, negative - failure
@@ -175,8 +178,9 @@ int hinic_sm_ctr_wr32(void *hwdev, u8 node, u8 instance, u32 ctr_id,
u32 value)
/**
* hinic_sm_ctr_rd64 - big counter 64 read
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value: read counter value ptr
* Return: 0 - success, negative - failure
@@ -209,8 +213,9 @@ int hinic_sm_ctr_rd64(void *hwdev, u8 node, u8 instance, u32 ctr_id,
u64 *value)
/**
* hinic_sm_ctr_wr64 - big single 64 counter write
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value: write counter value
* Return: 0 - success, negative - failure
@@ -233,8 +238,9 @@ int hinic_sm_ctr_wr64(void *hwdev, u8 node, u8 instance, u32 ctr_id,
u64 value)
/**
* hinic_sm_ctr_rd64_pair - big pair 128 counter read
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
+ * @instance: instance value
* @ctr_id: counter id
* @value1: read counter value ptr
* @value2: read counter value ptr
@@ -273,9 +279,10 @@ int hinic_sm_ctr_rd64_pair(void *hwdev, u8 node, u8 instance,
/**
* hinic_sm_ctr_wr64_pair - big pair 128 counter write
- * @hwdev: the hardware device
+ * @hwdev: the pointer to hw device
* @node: the node id
* @ctr_id: counter id
+ * @instance: instance value
* @value1: write counter value
* @value2: write counter value
* Return: 0 - success, negative - failure
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_sriov.c
b/drivers/net/ethernet/huawei/hinic/hinic_sriov.c
index ddfa32029206..172f65048117 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_sriov.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_sriov.c
@@ -102,7 +102,7 @@ int hinic_pci_sriov_disable(struct pci_dev *dev)
u16 tmp_vfs;
sriov_info = hinic_get_sriov_info_by_pcidev(dev);
- /* if SR-IOV is already disabled then there is nothing to do */
+ /* if SR-IOV is already disabled then nothing will be done */
if (!sriov_info->sriov_enabled)
return 0;
@@ -376,7 +376,7 @@ int hinic_ndo_get_vf_config(struct net_device *netdev,
* @netdev: network interface device structure
* @vf_id: VF identifier
* @link: required link state
- *
+ * Return: 0 - success, negative - failure
* Set the link state of a specified VF, regardless of physical link state
**/
int hinic_ndo_set_vf_link_state(struct net_device *netdev, int vf_id, int link)
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_tx.c
b/drivers/net/ethernet/huawei/hinic/hinic_tx.c
index 5b205dcb1e80..af51b59d5248 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_tx.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_tx.c
@@ -802,7 +802,7 @@ static netdev_tx_t hinic_send_one_skb(struct sk_buff *skb,
num_sge = skb_nr_frags + 1;
- /* :if skb->len is more than 65536B but num_sge is 1,
+ /* if skb->len is more than 65536B but num_sge is 1,
* driver will drop it
*/
if (unlikely(skb->len > HINIC_GSO_MAX_SIZE && num_sge == 1)) {
--
2.31.0