Re: [RFC] bus: mhi: core: Load firmware asynchronous

From: Thomas Weißschuh
Date: Tue Dec 14 2021 - 01:32:33 EST


On 2021-12-13 16:07-0800, Hemant Kumar wrote:
> On 12/10/2021 8:16 AM, Thomas Weißschuh wrote:
> > This gives userspace the possibility to provide the firehose bootloader
> > via the sysfs-firmware-API instead of having to modify the global
> > firmware loadpath.
> >
> > Signed-off-by: Thomas Weißschuh <linux@xxxxxxxxxxxxxx>
> >
> > ---
> >
> > Please note that this is not tested yet, as I don't have access to a matching
> > firmware file.
> > This submission is to gather general feedback from the maintainers and then
> > Richard will do the actual testing, while I'll do the development.
> >
> > This patch is should not have any impact beyond moving from request_firmware()
> > to request_firmware_nowait() and the involved code reshuffle.
> what are we achieving by moving to async ver of the firmware load ? MHI boot
> flow can not do anything until BHI load is over. Is the intention eventually
> to enable firmware fallback mechanism and manually load the firmware ?

The goal is to provide the firehose bootloader (qcom/prog_firehose_sdx24.mbn)
via the firmware fallback mechanism when upgrading the firmware on the device
via the firehose protocol.

This bootloader firmware is not part of linux-firmware but provided as part of
each firmware update package, so it is not installed statically on the system.

I will extend the commit message with this information.

PS: The current patch is missing 'return' after calls to
'mhi_fw_load_finish()', this will be corrected in v2.