[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190529.132518.1102678070487513053.davem@davemloft.net>
Date: Wed, 29 May 2019 13:25:18 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: yoshihiro.shimoda.uh@...esas.com
Cc: sergei.shtylyov@...entembedded.com, netdev@...r.kernel.org,
linux-renesas-soc@...r.kernel.org
Subject: Re: [PATCH v2] net: sh_eth: fix mdio access in sh_eth_close() for
R-Car Gen2 and RZ/A1 SoCs
From: Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>
Date: Tue, 28 May 2019 13:10:46 +0900
> The sh_eth_close() resets the MAC and then calls phy_stop()
> so that mdio read access result is incorrect without any error
> according to kernel trace like below:
>
> ifconfig-216 [003] .n.. 109.133124: mdio_access: ee700000.ethernet-ffffffff read phy:0x01 reg:0x00 val:0xffff
>
> According to the hardware manual, the RMII mode should be set to 1
> before operation the Ethernet MAC. However, the previous code was not
> set to 1 after the driver issued the soft_reset in sh_eth_dev_exit()
> so that the mdio read access result seemed incorrect. To fix the issue,
> this patch adds a condition and set the RMII mode register in
> sh_eth_dev_exit() for R-Car Gen2 and RZ/A1 SoCs.
>
> Note that when I have tried to move the sh_eth_dev_exit() calling
> after phy_stop() on sh_eth_close(), but it gets worse (kernel panic
> happened and it seems that a register is accessed while the clock is
> off).
>
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>
> ---
> Changes from v1 (https://patchwork.kernel.org/patch/10944265/):
> - Revise the subject, commit log and the comment of the code.
> - Move the RMII setting to right after soft_reset.
Applied, thank you.
Powered by blists - more mailing lists