From: "Dr. David Alan Gilbert" <linux@treblig.org>
To: Jijie Shao <shaojijie@huawei.com>
Cc: salil.mehta@huawei.com, shenjian15@huawei.com,
andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next 1/3] net: hisilicon: hns: Remove unused hns_dsaf_roce_reset
Date: Wed, 18 Dec 2024 16:34:56 +0000 [thread overview]
Message-ID: <Z2L5sDPUyoJa2aXk@gallifrey> (raw)
In-Reply-To: <c350f32a-20f5-4bf3-bc30-36f44b4872a5@huawei.com>
* Jijie Shao (shaojijie@huawei.com) wrote:
>
> on 2024/12/18 8:57, linux@treblig.org wrote:
> > From: "Dr. David Alan Gilbert" <linux@treblig.org>
> >
> > hns_dsaf_roce_reset() has been unused since 2021's
> > commit 38d220882426 ("RDMA/hns: Remove support for HIP06")
> >
> > Remove it.
> >
> > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> > ---
> > .../ethernet/hisilicon/hns/hns_dsaf_main.c | 109 ------------------
> > .../ethernet/hisilicon/hns/hns_dsaf_main.h | 2 -
> > 2 files changed, 111 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
> > index 851490346261..6b6ced37e490 100644
> > --- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
> > +++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
> > @@ -3019,115 +3019,6 @@ static struct platform_driver g_dsaf_driver = {
> > module_platform_driver(g_dsaf_driver);
> > -/**
> > - * hns_dsaf_roce_reset - reset dsaf and roce
> > - * @dsaf_fwnode: Pointer to framework node for the dasf
> > - * @dereset: false - request reset , true - drop reset
> > - * return 0 - success , negative -fail
> > - */
> > -int hns_dsaf_roce_reset(struct fwnode_handle *dsaf_fwnode, bool dereset)
> > -{
> > - struct dsaf_device *dsaf_dev;
> > - struct platform_device *pdev;
> > - u32 mp;
> > - u32 sl;
> > - u32 credit;
> > - int i;
> > - static const u32 port_map[DSAF_ROCE_CREDIT_CHN][DSAF_ROCE_CHAN_MODE_NUM] = {
> > - {DSAF_ROCE_PORT_0, DSAF_ROCE_PORT_0, DSAF_ROCE_PORT_0},
>
> It would be better to delete these roce-related definitions together:
> DSAF_ROCE_PORT_1, DSAF_ROCE_SL_0,DSAF_ROCE_6PORT_MODE and so on
Ah OK, I've sent a V2 with an extra patch to delete those.
> Thanks,
Thanks for the review!
Dave
> Jijie Shao
>
> > - {DSAF_ROCE_PORT_1, DSAF_ROCE_PORT_0, DSAF_ROCE_PORT_0},
> > - {DSAF_ROCE_PORT_2, DSAF_ROCE_PORT_1, DSAF_ROCE_PORT_0},
> > - {DSAF_ROCE_PORT_3, DSAF_ROCE_PORT_1, DSAF_ROCE_PORT_0},
> > - {DSAF_ROCE_PORT_4, DSAF_ROCE_PORT_2, DSAF_ROCE_PORT_1},
> > - {DSAF_ROCE_PORT_4, DSAF_ROCE_PORT_2, DSAF_ROCE_PORT_1},
> > - {DSAF_ROCE_PORT_5, DSAF_ROCE_PORT_3, DSAF_ROCE_PORT_1},
> > - {DSAF_ROCE_PORT_5, DSAF_ROCE_PORT_3, DSAF_ROCE_PORT_1},
> > - };
> > - static const u32 sl_map[DSAF_ROCE_CREDIT_CHN][DSAF_ROCE_CHAN_MODE_NUM] = {
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_0, DSAF_ROCE_SL_0},
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_1, DSAF_ROCE_SL_1},
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_0, DSAF_ROCE_SL_2},
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_1, DSAF_ROCE_SL_3},
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_0, DSAF_ROCE_SL_0},
> > - {DSAF_ROCE_SL_1, DSAF_ROCE_SL_1, DSAF_ROCE_SL_1},
> > - {DSAF_ROCE_SL_0, DSAF_ROCE_SL_0, DSAF_ROCE_SL_2},
> > - {DSAF_ROCE_SL_1, DSAF_ROCE_SL_1, DSAF_ROCE_SL_3},
> > - };
> > -
> > - /* find the platform device corresponding to fwnode */
> > - if (is_of_node(dsaf_fwnode)) {
> > - pdev = of_find_device_by_node(to_of_node(dsaf_fwnode));
> > - } else if (is_acpi_device_node(dsaf_fwnode)) {
> > - pdev = hns_dsaf_find_platform_device(dsaf_fwnode);
> > - } else {
> > - pr_err("fwnode is neither OF or ACPI type\n");
> > - return -EINVAL;
> > - }
> > -
> > - /* check if we were a success in fetching pdev */
> > - if (!pdev) {
> > - pr_err("couldn't find platform device for node\n");
> > - return -ENODEV;
> > - }
> > -
> > - /* retrieve the dsaf_device from the driver data */
> > - dsaf_dev = dev_get_drvdata(&pdev->dev);
> > - if (!dsaf_dev) {
> > - dev_err(&pdev->dev, "dsaf_dev is NULL\n");
> > - put_device(&pdev->dev);
> > - return -ENODEV;
> > - }
> > -
> > - /* now, make sure we are running on compatible SoC */
> > - if (AE_IS_VER1(dsaf_dev->dsaf_ver)) {
> > - dev_err(dsaf_dev->dev, "%s v1 chip doesn't support RoCE!\n",
> > - dsaf_dev->ae_dev.name);
> > - put_device(&pdev->dev);
> > - return -ENODEV;
> > - }
> > -
> > - /* do reset or de-reset according to the flag */
> > - if (!dereset) {
> > - /* reset rocee-channels in dsaf and rocee */
> > - dsaf_dev->misc_op->hns_dsaf_srst_chns(dsaf_dev, DSAF_CHNS_MASK,
> > - false);
> > - dsaf_dev->misc_op->hns_dsaf_roce_srst(dsaf_dev, false);
> > - } else {
> > - /* configure dsaf tx roce correspond to port map and sl map */
> > - mp = dsaf_read_dev(dsaf_dev, DSAF_ROCE_PORT_MAP_REG);
> > - for (i = 0; i < DSAF_ROCE_CREDIT_CHN; i++)
> > - dsaf_set_field(mp, 7 << i * 3, i * 3,
> > - port_map[i][DSAF_ROCE_6PORT_MODE]);
> > - dsaf_set_field(mp, 3 << i * 3, i * 3, 0);
> > - dsaf_write_dev(dsaf_dev, DSAF_ROCE_PORT_MAP_REG, mp);
> > -
> > - sl = dsaf_read_dev(dsaf_dev, DSAF_ROCE_SL_MAP_REG);
> > - for (i = 0; i < DSAF_ROCE_CREDIT_CHN; i++)
> > - dsaf_set_field(sl, 3 << i * 2, i * 2,
> > - sl_map[i][DSAF_ROCE_6PORT_MODE]);
> > - dsaf_write_dev(dsaf_dev, DSAF_ROCE_SL_MAP_REG, sl);
> > -
> > - /* de-reset rocee-channels in dsaf and rocee */
> > - dsaf_dev->misc_op->hns_dsaf_srst_chns(dsaf_dev, DSAF_CHNS_MASK,
> > - true);
> > - msleep(SRST_TIME_INTERVAL);
> > - dsaf_dev->misc_op->hns_dsaf_roce_srst(dsaf_dev, true);
> > -
> > - /* enable dsaf channel rocee credit */
> > - credit = dsaf_read_dev(dsaf_dev, DSAF_SBM_ROCEE_CFG_REG_REG);
> > - dsaf_set_bit(credit, DSAF_SBM_ROCEE_CFG_CRD_EN_B, 0);
> > - dsaf_write_dev(dsaf_dev, DSAF_SBM_ROCEE_CFG_REG_REG, credit);
> > -
> > - dsaf_set_bit(credit, DSAF_SBM_ROCEE_CFG_CRD_EN_B, 1);
> > - dsaf_write_dev(dsaf_dev, DSAF_SBM_ROCEE_CFG_REG_REG, credit);
> > - }
> > -
> > - put_device(&pdev->dev);
> > -
> > - return 0;
> > -}
> > -EXPORT_SYMBOL(hns_dsaf_roce_reset);
> > -
> > MODULE_LICENSE("GPL");
> > MODULE_AUTHOR("Huawei Tech. Co., Ltd.");
> > MODULE_DESCRIPTION("HNS DSAF driver");
> > diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
> > index 0eb03dff1a8b..c90f41c75500 100644
> > --- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
> > +++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
> > @@ -463,6 +463,4 @@ int hns_dsaf_clr_mac_mc_port(struct dsaf_device *dsaf_dev,
> > u8 mac_id, u8 port_num);
> > int hns_dsaf_wait_pkt_clean(struct dsaf_device *dsaf_dev, int port);
> > -int hns_dsaf_roce_reset(struct fwnode_handle *dsaf_fwnode, bool dereset);
> > -
> > #endif /* __HNS_DSAF_MAIN_H__ */
>
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux | Happy \
\ dave @ treblig.org | | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
next prev parent reply other threads:[~2024-12-18 16:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-18 0:57 [PATCH net-next 0/3] hisilicon hns deadcoding linux
2024-12-18 0:57 ` [PATCH net-next 1/3] net: hisilicon: hns: Remove unused hns_dsaf_roce_reset linux
2024-12-18 11:56 ` Jijie Shao
2024-12-18 16:34 ` Dr. David Alan Gilbert [this message]
2024-12-18 0:57 ` [PATCH net-next 2/3] net: hisilicon: hns: Remove unused hns_rcb_start linux
2024-12-18 11:58 ` Jijie Shao
2024-12-18 0:57 ` [PATCH net-next 3/3] net: hisilicon: hns: Remove reset helpers linux
2024-12-18 12:01 ` Jijie Shao
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=Z2L5sDPUyoJa2aXk@gallifrey \
--to=linux@treblig.org \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=salil.mehta@huawei.com \
--cc=shaojijie@huawei.com \
--cc=shenjian15@huawei.com \
/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: link
Be 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.