Re: [PATCH v1] usb: dwc3: core: Add shutdown callback for dwc3

From: Sai Prakash Ranjan
Date: Tue Mar 30 2021 - 05:56:46 EST


On 2021-03-30 14:37, Greg Kroah-Hartman wrote:
On Tue, Mar 30, 2021 at 02:12:04PM +0530, Sandeep Maheswaram wrote:

On 3/26/2021 7:07 PM, Greg Kroah-Hartman wrote:
> On Wed, Mar 24, 2021 at 12:57:32AM +0530, 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)
> > 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.
> So shouldn't you also remove this from the qcom glue driver at the same
> time? Please submit both as a patch series.
>
> thanks,
>
> greg k-h

Hi Greg,

The qcom glue driver patch is not merged yet. I have just mentioned for it for reference.

You know that we can not add callbacks for no in-kernel user, so what
good is this patch for now?


What in-kernel user? Since when does shutdown callback need an in-kernel
user? When you reboot or shutdown a system, it gets called. The reason
why the shutdown callback is needed is provided in the commit text.

Confused,
Sai Prakash Ranjan

--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation