From: Guangbin Huang <huangguangbin2@huawei.com> To: <davem@davemloft.net>, <kuba@kernel.org>, <catalin.marinas@arm.com>, <will@kernel.org>, <maz@kernel.org>, <mark.rutland@arm.com>, <dbrazdil@google.com>, <qperret@google.com> Cc: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, <lipeng321@huawei.com>, <huangguangbin2@huawei.com> Subject: [PATCH net-next 3/3] net: hns3: add ethtool priv-flag for TX push Date: Tue, 22 Jun 2021 19:11:11 +0800 [thread overview] Message-ID: <1624360271-17525-4-git-send-email-huangguangbin2@huawei.com> (raw) In-Reply-To: <1624360271-17525-1-git-send-email-huangguangbin2@huawei.com> From: Huazhong Tan <tanhuazhong@huawei.com> Add a control private flag in ethtool for enable/disable TX push feature. Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Yufeng Mo <moyufeng@huawei.com> --- drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 + drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 5 ++++- drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 19 ++++++++++++++++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hnae3.h b/drivers/net/ethernet/hisilicon/hns3/hnae3.h index 3979d5d2e842..bebb91f7d9a4 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hnae3.h +++ b/drivers/net/ethernet/hisilicon/hns3/hnae3.h @@ -805,6 +805,7 @@ struct hnae3_roce_private_info { enum hnae3_pflag { HNAE3_PFLAG_LIMIT_PROMISC, + HNAE3_PFLAG_PUSH_ENABLE, HNAE3_PFLAG_MAX }; diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c index 8649bd8e1b57..8ea6ad783e55 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -5132,8 +5132,11 @@ static int hns3_client_init(struct hnae3_handle *handle) if (hnae3_ae_dev_rxd_adv_layout_supported(ae_dev)) set_bit(HNS3_NIC_STATE_RXD_ADV_LAYOUT_ENABLE, &priv->state); - if (test_bit(HNAE3_DEV_SUPPORT_TX_PUSH_B, ae_dev->caps)) + if (test_bit(HNAE3_DEV_SUPPORT_TX_PUSH_B, ae_dev->caps)) { set_bit(HNS3_NIC_STATE_TX_PUSH_ENABLE, &priv->state); + handle->priv_flags |= BIT(HNAE3_PFLAG_PUSH_ENABLE); + set_bit(HNAE3_PFLAG_PUSH_ENABLE, &handle->supported_pflags); + } set_bit(HNS3_NIC_STATE_INITED, &priv->state); diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c index 155a58e11089..0b2557d4441d 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c @@ -423,8 +423,25 @@ static void hns3_update_limit_promisc_mode(struct net_device *netdev, hns3_request_update_promisc_mode(handle); } +static void hns3_update_state(struct net_device *netdev, + enum hns3_nic_state state, bool enable) +{ + struct hns3_nic_priv *priv = netdev_priv(netdev); + + if (enable) + set_bit(state, &priv->state); + else + clear_bit(state, &priv->state); +} + +static void hns3_update_push_state(struct net_device *netdev, bool enable) +{ + hns3_update_state(netdev, HNS3_NIC_STATE_TX_PUSH_ENABLE, enable); +} + static const struct hns3_pflag_desc hns3_priv_flags[HNAE3_PFLAG_MAX] = { - { "limit_promisc", hns3_update_limit_promisc_mode } + { "limit_promisc", hns3_update_limit_promisc_mode }, + { "tx_push_enable", hns3_update_push_state } }; static int hns3_get_sset_count(struct net_device *netdev, int stringset) -- 2.8.1
WARNING: multiple messages have this Message-ID (diff)
From: Guangbin Huang <huangguangbin2@huawei.com> To: <davem@davemloft.net>, <kuba@kernel.org>, <catalin.marinas@arm.com>, <will@kernel.org>, <maz@kernel.org>, <mark.rutland@arm.com>, <dbrazdil@google.com>, <qperret@google.com> Cc: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, <lipeng321@huawei.com>, <huangguangbin2@huawei.com> Subject: [PATCH net-next 3/3] net: hns3: add ethtool priv-flag for TX push Date: Tue, 22 Jun 2021 19:11:11 +0800 [thread overview] Message-ID: <1624360271-17525-4-git-send-email-huangguangbin2@huawei.com> (raw) In-Reply-To: <1624360271-17525-1-git-send-email-huangguangbin2@huawei.com> From: Huazhong Tan <tanhuazhong@huawei.com> Add a control private flag in ethtool for enable/disable TX push feature. Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Yufeng Mo <moyufeng@huawei.com> --- drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 + drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 5 ++++- drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 19 ++++++++++++++++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hnae3.h b/drivers/net/ethernet/hisilicon/hns3/hnae3.h index 3979d5d2e842..bebb91f7d9a4 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hnae3.h +++ b/drivers/net/ethernet/hisilicon/hns3/hnae3.h @@ -805,6 +805,7 @@ struct hnae3_roce_private_info { enum hnae3_pflag { HNAE3_PFLAG_LIMIT_PROMISC, + HNAE3_PFLAG_PUSH_ENABLE, HNAE3_PFLAG_MAX }; diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c index 8649bd8e1b57..8ea6ad783e55 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -5132,8 +5132,11 @@ static int hns3_client_init(struct hnae3_handle *handle) if (hnae3_ae_dev_rxd_adv_layout_supported(ae_dev)) set_bit(HNS3_NIC_STATE_RXD_ADV_LAYOUT_ENABLE, &priv->state); - if (test_bit(HNAE3_DEV_SUPPORT_TX_PUSH_B, ae_dev->caps)) + if (test_bit(HNAE3_DEV_SUPPORT_TX_PUSH_B, ae_dev->caps)) { set_bit(HNS3_NIC_STATE_TX_PUSH_ENABLE, &priv->state); + handle->priv_flags |= BIT(HNAE3_PFLAG_PUSH_ENABLE); + set_bit(HNAE3_PFLAG_PUSH_ENABLE, &handle->supported_pflags); + } set_bit(HNS3_NIC_STATE_INITED, &priv->state); diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c index 155a58e11089..0b2557d4441d 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c @@ -423,8 +423,25 @@ static void hns3_update_limit_promisc_mode(struct net_device *netdev, hns3_request_update_promisc_mode(handle); } +static void hns3_update_state(struct net_device *netdev, + enum hns3_nic_state state, bool enable) +{ + struct hns3_nic_priv *priv = netdev_priv(netdev); + + if (enable) + set_bit(state, &priv->state); + else + clear_bit(state, &priv->state); +} + +static void hns3_update_push_state(struct net_device *netdev, bool enable) +{ + hns3_update_state(netdev, HNS3_NIC_STATE_TX_PUSH_ENABLE, enable); +} + static const struct hns3_pflag_desc hns3_priv_flags[HNAE3_PFLAG_MAX] = { - { "limit_promisc", hns3_update_limit_promisc_mode } + { "limit_promisc", hns3_update_limit_promisc_mode }, + { "tx_push_enable", hns3_update_push_state } }; static int hns3_get_sset_count(struct net_device *netdev, int stringset) -- 2.8.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-06-22 11:14 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-22 11:11 [PATCH net-next 0/3] net: hns3: add support for TX push Guangbin Huang 2021-06-22 11:11 ` Guangbin Huang 2021-06-22 11:11 ` [PATCH net-next 1/3] arm64: barrier: add DGH macros to control memory accesses merging Guangbin Huang 2021-06-22 11:11 ` Guangbin Huang 2021-06-22 12:16 ` Will Deacon 2021-06-22 12:16 ` Will Deacon 2021-06-22 12:32 ` Mark Rutland 2021-06-22 12:32 ` Mark Rutland 2021-06-24 14:18 ` huangguangbin (A) 2021-06-24 14:18 ` huangguangbin (A) 2021-06-24 13:38 ` huangguangbin (A) 2021-06-24 13:38 ` huangguangbin (A) 2021-06-29 11:11 ` Xiongfeng Wang 2021-06-29 11:11 ` Xiongfeng Wang 2021-07-13 7:27 ` Xiongfeng Wang 2021-07-13 7:27 ` Xiongfeng Wang 2021-06-22 11:11 ` [PATCH net-next 2/3] net: hns3: add support for TX push mode Guangbin Huang 2021-06-22 11:11 ` Guangbin Huang 2021-06-22 12:16 ` Will Deacon 2021-06-22 12:16 ` Will Deacon 2021-06-24 14:15 ` huangguangbin (A) 2021-06-24 14:15 ` huangguangbin (A) 2021-06-22 11:11 ` Guangbin Huang [this message] 2021-06-22 11:11 ` [PATCH net-next 3/3] net: hns3: add ethtool priv-flag for TX push Guangbin Huang
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1624360271-17525-4-git-send-email-huangguangbin2@huawei.com \ --to=huangguangbin2@huawei.com \ --cc=catalin.marinas@arm.com \ --cc=davem@davemloft.net \ --cc=dbrazdil@google.com \ --cc=kuba@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=lipeng321@huawei.com \ --cc=mark.rutland@arm.com \ --cc=maz@kernel.org \ --cc=netdev@vger.kernel.org \ --cc=qperret@google.com \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.