Recently we found it failed to update firmware through capsule update
mechanism in linux-4.14 and later version.
After some investigation, the reason is firmware expects capsules in a
contiguous virtual space and this assumption is not satisfied in recent
linux versions.
Ge Song (2):
Revert "efi/capsule-loader: Use page addresses rather than struct page
pointers"
efi/capsule-loader: Request a contiguous virtual space for capsules
drivers/firmware/efi/capsule-loader.c | 23 ++++++++++++++---------
drivers/firmware/efi/capsule.c | 7 +++----
include/linux/efi.h | 4 ++--
3 files changed, 19 insertions(+), 15 deletions(-)
--
2.7.4
Please tested-by
Tested on Centiq, applied on v4.15-rc4.
This fixes the regression introduced in 4.13 where the capsule is no longer passed in contiguous virtual memory.
On 12/19/2017 3:49 AM, Ge Song wrote:
> Recently we found it failed to update firmware through capsule update
> mechanism in linux-4.14 and later version.
>
> After some investigation, the reason is firmware expects capsules in a
> contiguous virtual space and this assumption is not satisfied in recent
> linux versions.
>
> Ge Song (2):
> Revert "efi/capsule-loader: Use page addresses rather than struct page
> pointers"
> efi/capsule-loader: Request a contiguous virtual space for capsules
>
> drivers/firmware/efi/capsule-loader.c | 23 ++++++++++++++---------
> drivers/firmware/efi/capsule.c | 7 +++----
> include/linux/efi.h | 4 ++--
> 3 files changed, 19 insertions(+), 15 deletions(-)
>
--
Qualcomm Datacenter Technologies as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the
Code Aurora Forum, a Linux Foundation Collaborative Project.
On 21 December 2017 at 21:47, Richard Ruigrok <[email protected]> wrote:
> Please tested-by
> Tested on Centiq, applied on v4.15-rc4.
> This fixes the regression introduced in 4.13 where the capsule is no longer passed in contiguous virtual memory.
>
> On 12/19/2017 3:49 AM, Ge Song wrote:
>> Recently we found it failed to update firmware through capsule update
>> mechanism in linux-4.14 and later version.
>>
>> After some investigation, the reason is firmware expects capsules in a
>> contiguous virtual space and this assumption is not satisfied in recent
>> linux versions.
>>
>> Ge Song (2):
>> Revert "efi/capsule-loader: Use page addresses rather than struct page
>> pointers"
>> efi/capsule-loader: Request a contiguous virtual space for capsules
>>
Thanks for the patches (and for the tested-by). I will look into this,
but I'd like to try to fix this without breaking the quirk we did for
Quark.
>> drivers/firmware/efi/capsule-loader.c | 23 ++++++++++++++---------
>> drivers/firmware/efi/capsule.c | 7 +++----
>> include/linux/efi.h | 4 ++--
>> 3 files changed, 19 insertions(+), 15 deletions(-)
>>
>
> --
> Qualcomm Datacenter Technologies as an affiliate of Qualcomm Technologies, Inc.
> Qualcomm Technologies, Inc. is a member of the
> Code Aurora Forum, a Linux Foundation Collaborative Project.
>