[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b9a066d0-17b5-4da5-9c5d-8fe848e00896@lunn.ch>
Date: Thu, 4 Sep 2025 00:53:27 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Dong Yibo <dong100@...se.com>
Cc: andrew+netdev@...n.ch, davem@...emloft.net, edumazet@...gle.com,
kuba@...nel.org, pabeni@...hat.com, horms@...nel.org,
corbet@....net, gur.stavi@...wei.com, maddy@...ux.ibm.com,
mpe@...erman.id.au, danishanwar@...com, lee@...ger.us,
gongfan1@...wei.com, lorenzo@...nel.org, geert+renesas@...der.be,
Parthiban.Veerasooran@...rochip.com, lukas.bulwahn@...hat.com,
alexanderduyck@...com, richardcochran@...il.com, kees@...nel.org,
gustavoars@...nel.org, rdunlap@...radead.org,
vadim.fedorenko@...ux.dev, netdev@...r.kernel.org,
linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-hardening@...r.kernel.org
Subject: Re: [PATCH net-next v10 5/5] net: rnpgbe: Add register_netdev
> * rnpgbe_add_adapter - Add netdev for this pci_dev
> * @pdev: PCI device information structure
> @@ -78,6 +129,38 @@ static int rnpgbe_add_adapter(struct pci_dev *pdev,
>
> hw->hw_addr = hw_addr;
> info->init(hw);
> + mucse_init_mbx_params_pf(hw);
> + err = hw->ops->echo_fw_status(hw, true, mucse_fw_powerup);
> + if (err) {
> + dev_warn(&pdev->dev, "Send powerup to hw failed %d\n", err);
> + dev_warn(&pdev->dev, "Maybe low performance\n");
> + }
> +
> + err = mucse_mbx_sync_fw(hw);
> + if (err) {
> + dev_err(&pdev->dev, "Sync fw failed! %d\n", err);
> + goto err_free_net;
> + }
The order here seems odd. Don't you want to synchronise the mbox
before you power up? If your are out of sync, the power up could fail,
and you keep in lower power mode?
> + netdev->netdev_ops = &rnpgbe_netdev_ops;
> + netdev->watchdog_timeo = 5 * HZ;
> + err = hw->ops->reset_hw(hw);
> + if (err) {
> + dev_err(&pdev->dev, "Hw reset failed %d\n", err);
> + goto err_free_net;
> + }
> + err = hw->ops->get_perm_mac(hw);
> + if (err == -EINVAL) {
> + dev_warn(&pdev->dev, "Try to use random MAC\n");
> + eth_random_addr(hw->perm_addr);
eth_random_addr() cannot fail. So you don't try to use a random MAC
address, you are using a random MAC address/
Andrew
Powered by blists - more mailing lists