17666d0525
commit 498dbd9aea205db9da674994b74c7bf8e18448bd upstream. Commit 6ed05c68cbca ("usb: musb: sunxi: Explicitly release USB PHY on exit") will cause that usb phy @glue->xceiv is accessed after released. 1) register platform driver @sunxi_musb_driver // get the usb phy @glue->xceiv sunxi_musb_probe() -> devm_usb_get_phy(). 2) register and unregister platform driver @musb_driver musb_probe() -> sunxi_musb_init() use the phy here //the phy is released here musb_remove() -> sunxi_musb_exit() -> devm_usb_put_phy() 3) register @musb_driver again musb_probe() -> sunxi_musb_init() use the phy here but the phy has been released at 2). ... Fixed by reverting the commit, namely, removing devm_usb_put_phy() from sunxi_musb_exit(). Fixes: 6ed05c68cbca ("usb: musb: sunxi: Explicitly release USB PHY on exit") Cc: stable@vger.kernel.org Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com> Link: https://lore.kernel.org/r/20241029-sunxi_fix-v1-1-9431ed2ab826@quicinc.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
---|---|---|
.. | ||
am35x.c | ||
cppi_dma.c | ||
cppi_dma.h | ||
da8xx.c | ||
davinci.c | ||
davinci.h | ||
jz4740.c | ||
Kconfig | ||
Makefile | ||
mediatek.c | ||
musb_core.c | ||
musb_core.h | ||
musb_cppi41.c | ||
musb_debug.h | ||
musb_debugfs.c | ||
musb_dma.h | ||
musb_dsps.c | ||
musb_gadget.c | ||
musb_gadget.h | ||
musb_gadget_ep0.c | ||
musb_host.c | ||
musb_host.h | ||
musb_io.h | ||
musb_regs.h | ||
musb_trace.c | ||
musb_trace.h | ||
musb_virthub.c | ||
musbhsdma.c | ||
omap2430.c | ||
omap2430.h | ||
sunxi.c | ||
tusb6010.c | ||
tusb6010.h | ||
tusb6010_omap.c | ||
ux500.c | ||
ux500_dma.c |