]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit
drivers: net: cpsw: fix wrong regs access in cpsw_remove
authorGrygorii Strashko <grygorii.strashko@ti.com>
Thu, 28 Jul 2016 17:50:35 +0000 (20:50 +0300)
committerSeth Forshee <seth.forshee@canonical.com>
Thu, 20 Oct 2016 13:06:34 +0000 (08:06 -0500)
commit9c52db0275470704b66153848aec1a20123fb7c9
tree04cf2567ffdafa08c76133438f9e47ac533ed63f
parent4c97299a157e624f5f26137e4107444a1b56167f
drivers: net: cpsw: fix wrong regs access in cpsw_remove

BugLink: http://bugs.launchpad.net/bugs/1625177
The L3 error will be generated and system will crash during unloading
of CPSW driver if CPSW is used as module and ethX devices are down.
This happens because CPSW can be power off by PM runtime now when ethX
devices are down.

Hence, ensure that CPSW powered up by PM runtime before performing any
deinitialization actions which require CPSW registers access. In case
of PM runtime error just leave cpsw_remove() as we can't do anything
anymore.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Reviewed-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 8a0b6dc958fd1037931b0e01ebf266fbe3c09e92)
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
Acked-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
drivers/net/ethernet/ti/cpsw.c