From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from canpmsgout05.his.huawei.com (canpmsgout05.his.huawei.com [113.46.200.220]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6E1E433987; Wed, 8 Apr 2026 04:03:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=113.46.200.220 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775620998; cv=none; b=DwTcneLLcKiODC5ekT8Hvpy7F7tZesShCa+ecRRpp6fwn3OdbO48TS0/cSfZHUt2dkLoqhZXNYyPaw8BTwD+vd8+bG6m+ZDdXy/Whzpj/8p3dcEeITixD5m0m2Jizn5f8XiPA5PfNlz9525iOCHPklXD1NyDVnpfyPzklY3JcO0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775620998; c=relaxed/simple; bh=T7PqZWjXXSTCJTo/UPtT0uw3uiznBpLrLtDtMDgbyMM=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=TMeq2i85nWT5UjFeIfL0v5M2GkACVLDJBFpLltvWJv2May+U5M+Ikk+jsGydTZgMr4mVdJbkXxIU7EQcK065L0pPGSqbjDe6lnQ6Sf3j/LUFVsEH+exbSHcAlD5GyTrUIfgSr31W9Oqsjqtu7r6h1jptV/Vac3uaE4ISnUa0/t8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=huawei.com; spf=pass smtp.mailfrom=huawei.com; dkim=pass (1024-bit key) header.d=huawei.com header.i=@huawei.com header.b=hpMY1Zpm; arc=none smtp.client-ip=113.46.200.220 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=huawei.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=huawei.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=huawei.com header.i=@huawei.com header.b="hpMY1Zpm" dkim-signature: v=1; a=rsa-sha256; d=huawei.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=Rh32Zahn+h0ulk0SxlBgnWDJnxGZmJC5VQNbnw0UmmU=; b=hpMY1ZpmhhxSDh8kDNoTbA+kLIN9dgbodgjrriuqJ7S0xCT4KP8PV1ORWiNwB33bobTYPfXmr wRdpbhWDCf+XRmVN/9GKVaAmhxk4SCqFuTgp6CpEpgJay+bcV3yn6FTRd+GJ3QjB0gSZdFoy132 irurw0Y/bUOPkMaxP2UbyPI= Received: from mail.maildlp.com (unknown [172.19.163.104]) by canpmsgout05.his.huawei.com (SkyGuard) with ESMTPS id 4fr8QB4yMHz12LCq; Wed, 8 Apr 2026 11:56:50 +0800 (CST) Received: from kwepemf100013.china.huawei.com (unknown [7.202.181.12]) by mail.maildlp.com (Postfix) with ESMTPS id CA0924056A; Wed, 8 Apr 2026 12:03:12 +0800 (CST) Received: from DESKTOP-62GVMTR.china.huawei.com (10.174.189.124) by kwepemf100013.china.huawei.com (7.202.181.12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.36; Wed, 8 Apr 2026 12:03:11 +0800 From: Fan Gong To: Fan Gong , Zhu Yikai , , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Andrew Lunn , Ioana Ciornei , Mohsin Bashir CC: , , luosifu , Xin Guo , Zhou Shuai , Wu Like , Shi Jing , Zheng Jiezhen , Maxime Chevallier Subject: [PATCH net-next v04 0/6] net: hinic3: PF initialization Date: Wed, 8 Apr 2026 12:03:00 +0800 Message-ID: X-Mailer: git-send-email 2.51.0.windows.1 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: kwepems200002.china.huawei.com (7.221.188.68) To kwepemf100013.china.huawei.com (7.202.181.12) This is [3/3] part of hinic3 Ethernet driver second submission. With this patch hinic3 becomes a complete Ethernet driver with pf and vf. Add 20 ethtool ops for information of queue, rss, coalesce and eth data. Add MTU size validation Config netdev watchdog timeout. Remove unneed coalesce parameters. Changes: PATCH 03 V01: https://lore.kernel.org/netdev/cover.1773387649.git.zhuyikai1@h-partners.com/ * Add rmon/pause/phy/mac/ctrl stats (Ioana Ciornei) PATCH 03 V02: https://lore.kernel.org/netdev/cover.1774684571.git.zhuyikai1@h-partners.com/ * Modify "return -EINVAL" intension problem (AI review) * Use le16_to_cpu for rss_indir pair.out->buf (AI review) * Use u32 instead of int in coalesce_limits to avoid overflow (AI review) * Remove redundant u64_stats_update_begin/end when reading stats without concurrent reader (AI review) * Modify nic_dev->stats.syncp logic (AI review) * Complete rxq/txq stats stats fileds in hinic3_rx/txq_get_stats (AI review) * Remove statistics values in rtnl_link_stats64 from ethtool statistics values (AI review) * Add channel_cfg_lock & channel_res_lock to protect resources access (AI review) * Remove OutOfRangeLengthField, FrameToolong and InRangeLengthErrors (Ioana Ciornei) * Remove redundant mtu commit (Maxime Chevialler) PATCH 03 V03: https://lore.kernel.org/netdev/cover.1774940117.git.zhuyikai1@h-partners.com/ * Change unnedd to unneeded (AI review) * Remove packets,bytes,errors and dropped in hinic3_rx/tx_queue_stats (AI review) * Remove duplicated entried in hinic3_port_stats[] (AI review) * change stats_info.head.status to ps->head.status (AI review) PATCH 03 V04: * Remove restore_drop_sge in hinic3_rx_queue_stats (AI review) * Remove hinic3_nic_stats (AI review) * Use old_q_param to store old config and use it in error handling (Mohsin Bashir) * Add netdev_info to inform the user that depth is trimmed (Mohsin Bashir) * Remove const in hinic3_get_qp_stats_strings parameters (Mohsin Bashir) * Change EOPNOTSUPP to ERANGE in is_coalesce_exceed_limit (Mohsin Bashir) * Update nic_dev->rss_type after hinic3_set_rss_type (Mohsin Bashir) * Modify MGMT_STATUS_CMD_UNSUPPORTED to EOPNOTSUPP for complying with the error code specifications (Mohsin Bashir) Fan Gong (6): hinic3: Add ethtool queue ops hinic3: Add ethtool statistic ops hinic3: Add ethtool coalesce ops hinic3: Add ethtool rss ops hinic3: Configure netdev->watchdog_timeo to set nic tx timeout hinic3: Remove unneeded coalesce parameters .../ethernet/huawei/hinic3/hinic3_ethtool.c | 827 +++++++++++++++++- .../ethernet/huawei/hinic3/hinic3_hw_intf.h | 13 +- .../net/ethernet/huawei/hinic3/hinic3_irq.c | 16 +- .../net/ethernet/huawei/hinic3/hinic3_main.c | 15 + .../huawei/hinic3/hinic3_mgmt_interface.h | 39 + .../huawei/hinic3/hinic3_netdev_ops.c | 103 ++- .../ethernet/huawei/hinic3/hinic3_nic_cfg.c | 64 ++ .../ethernet/huawei/hinic3/hinic3_nic_cfg.h | 109 +++ .../ethernet/huawei/hinic3/hinic3_nic_dev.h | 16 + .../ethernet/huawei/hinic3/hinic3_nic_io.h | 4 + .../net/ethernet/huawei/hinic3/hinic3_rss.c | 487 ++++++++++- .../net/ethernet/huawei/hinic3/hinic3_rss.h | 19 + .../net/ethernet/huawei/hinic3/hinic3_rx.c | 59 +- .../net/ethernet/huawei/hinic3/hinic3_rx.h | 18 +- .../net/ethernet/huawei/hinic3/hinic3_tx.c | 71 +- .../net/ethernet/huawei/hinic3/hinic3_tx.h | 2 + 16 files changed, 1835 insertions(+), 27 deletions(-) base-commit: 8e7adcf81564a3fe886a6270eea7558f063e5538 -- 2.43.0