diff mbox series

[net,v2] net: dsa: lantiq_gswip: Add 200ms assert delay

Message ID 20210912115807.3903-1-olek2@wp.pl (mailing list archive)
State Accepted
Commit 111b64e35ea03d58c882832744f571a88bb2e2e2
Delegated to: Netdev Maintainers
Headers show
Series [net,v2] net: dsa: lantiq_gswip: Add 200ms assert delay | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for net
netdev/subject_prefix success Link
netdev/cc_maintainers success CCed 9 of 9 maintainers
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 12 lines checked
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/header_inline success Link

Commit Message

Aleksander Jan Bajkowski Sept. 12, 2021, 11:58 a.m. UTC
The delay is especially needed by the xRX300 and xRX330 SoCs. Without
this patch, some phys are sometimes not properly detected.

The patch was tested on BT Home Hub 5A and D-Link DWR-966.

Fixes: a09d042b0862 ("net: dsa: lantiq: allow to use all GPHYs on xRX300 and xRX330")
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
 drivers/net/dsa/lantiq_gswip.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Hauke Mehrtens Sept. 12, 2021, 12:14 p.m. UTC | #1
On 9/12/21 1:58 PM, Aleksander Jan Bajkowski wrote:
> The delay is especially needed by the xRX300 and xRX330 SoCs. Without
> this patch, some phys are sometimes not properly detected.
> 
> The patch was tested on BT Home Hub 5A and D-Link DWR-966.
> 
> Fixes: a09d042b0862 ("net: dsa: lantiq: allow to use all GPHYs on xRX300 and xRX330")
> Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

Acked-by: Hauke Mehrtens <hauke@hauke-m.de>

> ---
>   drivers/net/dsa/lantiq_gswip.c | 6 ++++++
>   1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/net/dsa/lantiq_gswip.c b/drivers/net/dsa/lantiq_gswip.c
> index 64d6dfa83122..267324889dd6 100644
> --- a/drivers/net/dsa/lantiq_gswip.c
> +++ b/drivers/net/dsa/lantiq_gswip.c
> @@ -1885,6 +1885,12 @@ static int gswip_gphy_fw_load(struct gswip_priv *priv, struct gswip_gphy_fw *gph
>   
>   	reset_control_assert(gphy_fw->reset);
>   
> +	/* The vendor BSP uses a 200ms delay after asserting the reset line.
> +	 * Without this some users are observing that the PHY is not coming up
> +	 * on the MDIO bus.
> +	 */
> +	msleep(200);
> +
>   	ret = request_firmware(&fw, gphy_fw->fw_name, dev);
>   	if (ret) {
>   		dev_err(dev, "failed to load firmware: %s, error: %i\n",
>
patchwork-bot+netdevbpf@kernel.org Sept. 13, 2021, 12:10 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Sun, 12 Sep 2021 13:58:07 +0200 you wrote:
> The delay is especially needed by the xRX300 and xRX330 SoCs. Without
> this patch, some phys are sometimes not properly detected.
> 
> The patch was tested on BT Home Hub 5A and D-Link DWR-966.
> 
> Fixes: a09d042b0862 ("net: dsa: lantiq: allow to use all GPHYs on xRX300 and xRX330")
> Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> 
> [...]

Here is the summary with links:
  - [net,v2] net: dsa: lantiq_gswip: Add 200ms assert delay
    https://git.kernel.org/netdev/net/c/111b64e35ea0

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/drivers/net/dsa/lantiq_gswip.c b/drivers/net/dsa/lantiq_gswip.c
index 64d6dfa83122..267324889dd6 100644
--- a/drivers/net/dsa/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq_gswip.c
@@ -1885,6 +1885,12 @@  static int gswip_gphy_fw_load(struct gswip_priv *priv, struct gswip_gphy_fw *gph
 
 	reset_control_assert(gphy_fw->reset);
 
+	/* The vendor BSP uses a 200ms delay after asserting the reset line.
+	 * Without this some users are observing that the PHY is not coming up
+	 * on the MDIO bus.
+	 */
+	msleep(200);
+
 	ret = request_firmware(&fw, gphy_fw->fw_name, dev);
 	if (ret) {
 		dev_err(dev, "failed to load firmware: %s, error: %i\n",