[PATCH 4.9 181/310] net: phy: micrel: Restore led_mode and clk_sel on resume

Naresh Kamboju naresh.kamboju at linaro.org
Thu Apr 19 11:32:19 UTC 2018


On 12 April 2018 at 00:05, Greg Kroah-Hartman
<gregkh at linuxfoundation.org> wrote:
> 4.9-stable review patch.  If anyone has any objections, please let me know.
>
> ------------------
>
> From: Leonard Crestez <leonard.crestez at nxp.com>
>
>
> [ Upstream commit 79e498a9c7da0737829ff864aae44df434105676 ]
>
> These bits seem to be lost after a suspend/resume cycle so just set them
> again. Do this by splitting the handling of these bits into a function
> that is also called on resume.
>
> This patch fixes ethernet suspend/resume on imx6ul-14x14-evk boards.
>
> Signed-off-by: Leonard Crestez <leonard.crestez at nxp.com>
> Reviewed-by: Florian Fainelli <f.fainelli at gmail.com>
> Signed-off-by: David S. Miller <davem at davemloft.net>
> Signed-off-by: Sasha Levin <alexander.levin at microsoft.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> ---
>  drivers/net/phy/micrel.c |   42 ++++++++++++++++++++++++++++--------------
>  1 file changed, 28 insertions(+), 14 deletions(-)

arm32 x15 device booting 4.9 kernel shows kernel warning and
the network is not working on the device.

Linux version 4.9.95-rc1 (buildslave at lkft-01) (gcc version 6.2.1 20161016
 (Linaro GCC 6.2-2016.11) ) #1 SMP Tue Apr 17 19:12:22 UTC 2018

Boot log kernel crash log:
--------------------------
[   13.766589] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   13.805441] net eth0: initializing cpsw version 1.15 (0)
[   13.930334] Unable to handle kernel NULL pointer dereference at
virtual address 00000008
[   13.938486] pgd = ed7987c0
[   13.941221] [00000008] *pgd=ad7f1003, *pmd=fb0b6003
[   13.946163] Internal error: Oops: 207 [#1] SMP ARM
[   13.950976] Modules linked in: snd_soc_simple_card
snd_soc_simple_card_utils snd_soc_core snd_pcm_dmaengine snd_pcm
snd_timer snd soundcore ac97_bus
[   13.964430] CPU: 0 PID: 251 Comm: NetworkManager Not tainted 4.9.95-rc1 #1
[   13.971334] Hardware name: Generic DRA74X (Flattened Device Tree)
[   13.977452] task: ed6ed5c0 task.stack: ec220000
[   13.982009] PC is at kszphy_config_reset+0x1c/0x150
[   13.986909] LR is at kszphy_resume+0x24/0x64
[   13.991198] pc : [<c0b6f680>]    lr : [<c0b6f940>]    psr: 60000013
[   13.991198] sp : ec221920  ip : ec221940  fp : ec22193c
[   14.002723] r10: 00000000  r9 : 00000007  r8 : 00000000
[   14.007969] r7 : ed213000  r6 : 00000000  r5 : ee6fa800  r4 : ed213400
[   14.014523] r3 : 00000001  r2 : 00000000  r1 : 00000110  r0 : ed213400
[   14.021079] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[   14.028245] Control: 30c5387d  Table: ad7987c0  DAC: fffffffd
[   14.034014] Process NetworkManager (pid: 251, stack limit = 0xec220220)
[   14.040655] Stack: (0xec221920 to 0xec222000)
<>
[   14.496761] [<c0b6f680>] (kszphy_config_reset) from [<c0b6f940>]
(kszphy_resume+0x24/0x64)
[   14.505067] [<c0b6f940>] (kszphy_resume) from [<c0b693f8>]
(phy_attach_direct+0xc4/0x1cc)
[   14.513284] [<c0b693f8>] (phy_attach_direct) from [<c0b69600>]
(phy_connect_direct+0x24/0x5c)
[   14.521848] [<c0b69600>] (phy_connect_direct) from [<c0b6968c>]
(phy_connect+0x54/0x88)
[   14.529901] [<c0b6968c>] (phy_connect) from [<c0c0e47c>]
(cpsw_slave_open+0x230/0x294)
[   14.529912] [<c0c0e47c>] (cpsw_slave_open) from [<c0c11634>]
(cpsw_ndo_open+0x4b4/0x618)
[   14.529924] [<c0c11634>] (cpsw_ndo_open) from [<c0deeb64>]
(__dev_open+0xbc/0x124)
[   14.529934] [<c0deeb64>] (__dev_open) from [<c0deee4c>]
(__dev_change_flags+0xa4/0x154)
[   14.529943] [<c0deee4c>] (__dev_change_flags) from [<c0deef24>]
(dev_change_flags+0x28/0x58)
[   14.529953] [<c0deef24>] (dev_change_flags) from [<c0e025f0>]
(do_setlink+0x2f0/0x890)
[   14.529962] [<c0e025f0>] (do_setlink) from [<c0e04554>]
(rtnl_newlink+0x4b0/0x784)
[   14.529970] [<c0e04554>] (rtnl_newlink) from [<c0e04908>]
(rtnetlink_rcv_msg+0xe0/0x1fc)
[   14.529979] [<c0e04908>] (rtnetlink_rcv_msg) from [<c0e1e538>]
(netlink_rcv_skb+0xb0/0xcc)
[   14.529990] [<c0e1e538>] (netlink_rcv_skb) from [<c0e01c1c>]
(rtnetlink_rcv+0x38/0x40)
[   14.529998] [<c0e01c1c>] (rtnetlink_rcv) from [<c0e1de70>]
(netlink_unicast+0x180/0x210)
[   14.530006] [<c0e1de70>] (netlink_unicast) from [<c0e1e29c>]
(netlink_sendmsg+0x2c4/0x380)
[   14.530014] [<c0e1e29c>] (netlink_sendmsg) from [<c0dc8304>]
(sock_sendmsg+0x24/0x34)
[   14.530023] [<c0dc8304>] (sock_sendmsg) from [<c0dc8a70>]
(___sys_sendmsg+0x1e0/0x1f0)
[   14.530035] [<c0dc8a70>] (___sys_sendmsg) from [<c0dc9884>]
(__sys_sendmsg+0x50/0x7c)
[   14.530043] [<c0dc9884>] (__sys_sendmsg) from [<c0dc98c8>]
(SyS_sendmsg+0x18/0x1c)
[   14.530055] [<c0dc98c8>] (SyS_sendmsg) from [<c0408c80>]
(ret_fast_syscall+0x0/0x1c)
[   14.530062] Code: e52de004 e8bd4000 e59062dc e1a04000 (e5d63008)
[   14.530113] ---[ end trace f4394cbc177fdd86 ]---


LAVA job id:
https://lkft.validation.linaro.org/scheduler/job/187429#L3341


More information about the Linux-stable-mirror mailing list