lkml.org 
[lkml]   [2021]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v1] usb: dwc3: core: Add shutdown callback for dwc3
    From
    Date
    Hello!

    On 23.03.2021 22:27, Sandeep Maheswaram wrote:

    > This patch adds a shutdown callback to USB DWC core driver to ensure that
    > it is properly shutdown in reboot/shutdown path. This is required
    > where SMMU address translation is enabled like on SC7180
    > SoC and few others. If the hardware is still accessing memory after
    > SMMU translation is disabled as part of SMMU shutdown callback in
    > system reboot or shutdown path, then IOVAs(I/O virtual address)

    Space before (, please.

    > which it was using will go on the bus as the physical addresses which
    > might result in unknown crashes (NoC/interconnect errors).
    >
    > Previously this was added in dwc3 qcom glue driver.
    > https://patchwork.kernel.org/project/linux-arm-msm/list/?series=382449
    > But observed kernel panic as glue driver shutdown getting called after
    > iommu shutdown. As we are adding iommu nodes in dwc core node
    > in device tree adding shutdown callback in core driver seems correct.
    >
    > Signed-off-by: Sandeep Maheswaram <sanm@codeaurora.org>
    > ---
    > drivers/usb/dwc3/core.c | 26 +++++++++++++++++++-------
    > 1 file changed, 19 insertions(+), 7 deletions(-)
    >
    > diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
    > index 94fdbe5..777b2b5 100644
    > --- a/drivers/usb/dwc3/core.c
    > +++ b/drivers/usb/dwc3/core.c
    [...]
    > @@ -1976,6 +1987,7 @@ MODULE_DEVICE_TABLE(acpi, dwc3_acpi_match);
    > static struct platform_driver dwc3_driver = {
    > .probe = dwc3_probe,
    > .remove = dwc3_remove,
    > + .shutdown = dwc3_shutdown,

    Please indent = with tabs as above and below.

    > .driver = {
    > .name = "dwc3",
    > .of_match_table = of_match_ptr(of_dwc3_match),

    MBR, Sergei

    \
     
     \ /
      Last update: 2021-03-24 10:40    [W:3.091 / U:0.564 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site