Messages in this thread | | | Subject | Re: [PATCH 3/3] soc: qcom: mdt_loader: add offset to request_firmware_into_buf | From | Scott Branden <> | Date | Tue, 30 Jul 2019 16:02:40 -0700 |
| |
Hi Bjorn,
On 2019-05-26 10:36 p.m., Bjorn Andersson wrote: > On Thu 23 May 09:56 PDT 2019, Greg Kroah-Hartman wrote: > >> On Thu, May 23, 2019 at 09:41:49AM -0700, Scott Branden wrote: >>> Hi Greg, >>> >>> On 2019-05-22 10:52 p.m., Greg Kroah-Hartman wrote: >>>> On Wed, May 22, 2019 at 07:51:13PM -0700, Scott Branden wrote: >>>>> Adjust request_firmware_into_buf API to allow for portions >>>>> of firmware file to be read into a buffer. mdt_loader still >>>>> retricts request fo whole file read into buffer. >>>>> >>>>> Signed-off-by: Scott Branden <scott.branden@broadcom.com> >>>>> --- >>>>> drivers/soc/qcom/mdt_loader.c | 7 +++++-- >>>>> 1 file changed, 5 insertions(+), 2 deletions(-) >>>>> >>>>> diff --git a/drivers/soc/qcom/mdt_loader.c b/drivers/soc/qcom/mdt_loader.c >>>>> index 1c488024c698..ad20d159699c 100644 >>>>> --- a/drivers/soc/qcom/mdt_loader.c >>>>> +++ b/drivers/soc/qcom/mdt_loader.c >>>>> @@ -172,8 +172,11 @@ static int __qcom_mdt_load(struct device *dev, const struct firmware *fw, >>>>> if (phdr->p_filesz) { >>>>> sprintf(fw_name + fw_name_len - 3, "b%02d", i); >>>>> - ret = request_firmware_into_buf(&seg_fw, fw_name, dev, >>>>> - ptr, phdr->p_filesz); >>>>> + ret = request_firmware_into_buf >>>>> + (&seg_fw, fw_name, dev, >>>>> + ptr, phdr->p_filesz, >>>>> + 0, >>>>> + KERNEL_PREAD_FLAG_WHOLE); >>>> So, all that work in the first 2 patches for no real change at all? Why >>>> are these changes even needed? >>> The first two patches allow partial read of files into memory. >>> >>> Existing kernel drivers haven't need such functionality so, yes, there >>> should be no real change >>> >>> with first two patches other than adding such partial file read support. >>> >>> We have a new driver in development which needs partial read of files >>> supported in the kernel. >> As I said before, I can not take new apis without any in-kernel user. >> So let's wait for your new code that thinks it needs this, and then we >> will be glad to evaluate all of this at that point in time. >> > The .mdt files are ELF files split to avoid having to allocate large > (5-60MB) chunks of temporary firmware buffers while installing the > segments. > > But for multiple reasons it would be nice to be able to load the > non-split ELF files and the proposed interface would allow this. > > So I definitely like the gist of the series. > >> To do so otherwise is to have loads of unused "features" aquiring cruft >> in the kernel source, and you do not want that. >> > Agreed. > > I'll take the opportunity and see if I can implement this (support for > non-split Qualcomm firmware) based on the patches in this series.
I'm back from my leave now.
Have you managed to utilize my partial firmware read in your driver yet?
> > Regards, > Bjorn
| |