usb: musb: sunxi: Explicitly release USB PHY on exit
This fixes a kernel oops when unloading the driver due to usb_put_phy being called after usb_phy_generic_unregister when the device is detached. Calling usb_phy_generic_unregister causes x->dev->driver to be NULL in usb_put_phy and results in a NULL pointer dereference. Cc: stable@vger.kernel.org # v4.3+ Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Bin Liu <b-liu@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
445ef61543
commit
6ed05c68cb
|
@ -297,6 +297,8 @@ static int sunxi_musb_exit(struct musb *musb)
|
||||||
if (test_bit(SUNXI_MUSB_FL_HAS_SRAM, &glue->flags))
|
if (test_bit(SUNXI_MUSB_FL_HAS_SRAM, &glue->flags))
|
||||||
sunxi_sram_release(musb->controller->parent);
|
sunxi_sram_release(musb->controller->parent);
|
||||||
|
|
||||||
|
devm_usb_put_phy(glue->dev, glue->xceiv);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue