public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH edk2-platforms v1 1/1] Platform/ARM: FVP: set IORT RC address limit for FVP RevC
@ 2022-04-27  8:59 Edward Pickup
  2022-04-27 11:36 ` Ard Biesheuvel
  0 siblings, 1 reply; 3+ messages in thread
From: Edward Pickup @ 2022-04-27  8:59 UTC (permalink / raw)
  To: devel; +Cc: sami.mujawar, ardb+tianocore, thomas.abraham, nd

When booting Linux on FVP RevC, Linux reports the following error:

ACPI: IORT: [Firmware Bug]: Root complex missing memory address limit

This issue is due to the RC Address Limit not being configured in the
configuration manager for the platform.

The default model parameter is configured to 32, so set this in the
configuration manager, fixing the error.

Signed-off-by: Edward Pickup <edward.pickup@arm.com>
---

The changes can be seen at https://github.com/edpickup/edk2-platforms/tree/1700_fix_IORT_RC_Addr_Limit_v1

 Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
index 776dec999eb1ef47910835987fa4dae1b69c52fd..560937d7a3addee729148fd6deab2eb82fced9e2 100644
--- a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
+++ b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
@@ -312,7 +312,9 @@ EDKII_PLATFORM_REPOSITORY_INFO VExpressPlatRepositoryInfo = {
     // ATS attributes
     EFI_ACPI_IORT_ROOT_COMPLEX_ATS_UNSUPPORTED,
     // PCI segment number
-    0
+    0,
+    // Memory Address Size Limit
+    32
   },

   // Array of Device ID mappings
--
Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH edk2-platforms v1 1/1] Platform/ARM: FVP: set IORT RC address limit for FVP RevC
  2022-04-27  8:59 [PATCH edk2-platforms v1 1/1] Platform/ARM: FVP: set IORT RC address limit for FVP RevC Edward Pickup
@ 2022-04-27 11:36 ` Ard Biesheuvel
  2022-04-28  8:24   ` Edward Pickup
  0 siblings, 1 reply; 3+ messages in thread
From: Ard Biesheuvel @ 2022-04-27 11:36 UTC (permalink / raw)
  To: Edward Pickup
  Cc: edk2-devel-groups-io, Sami Mujawar, Ard Biesheuvel,
	Thomas Abraham, nd

Hello Edward,

Thanks for the patch.

On Wed, 27 Apr 2022 at 10:59, Edward Pickup <edward.pickup@arm.com> wrote:
>
> When booting Linux on FVP RevC, Linux reports the following error:
>
> ACPI: IORT: [Firmware Bug]: Root complex missing memory address limit
>
> This issue is due to the RC Address Limit not being configured in the
> configuration manager for the platform.
>
> The default model parameter is configured to 32, so set this in the
> configuration manager, fixing the error.
>

Why is 32 a suitable value? I would not expect emulated IP to have
such a limitation.


> Signed-off-by: Edward Pickup <edward.pickup@arm.com>
> ---
>
> The changes can be seen at https://github.com/edpickup/edk2-platforms/tree/1700_fix_IORT_RC_Addr_Limit_v1
>
>  Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
> index 776dec999eb1ef47910835987fa4dae1b69c52fd..560937d7a3addee729148fd6deab2eb82fced9e2 100644
> --- a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
> +++ b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
> @@ -312,7 +312,9 @@ EDKII_PLATFORM_REPOSITORY_INFO VExpressPlatRepositoryInfo = {
>      // ATS attributes
>      EFI_ACPI_IORT_ROOT_COMPLEX_ATS_UNSUPPORTED,
>      // PCI segment number
> -    0
> +    0,
> +    // Memory Address Size Limit
> +    32
>    },
>
>    // Array of Device ID mappings
> --
> Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")
>
> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH edk2-platforms v1 1/1] Platform/ARM: FVP: set IORT RC address limit for FVP RevC
  2022-04-27 11:36 ` Ard Biesheuvel
@ 2022-04-28  8:24   ` Edward Pickup
  0 siblings, 0 replies; 3+ messages in thread
From: Edward Pickup @ 2022-04-28  8:24 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: edk2-devel-groups-io, Sami Mujawar, Ard Biesheuvel,
	Thomas Abraham, nd

Hello Collin, thank you for your comments

On 27/04/2022 12:36, Ard Biesheuvel wrote:
> Hello Edward,
>
> Thanks for the patch.
>
> On Wed, 27 Apr 2022 at 10:59, Edward Pickup <edward.pickup@arm.com> wrote:
>> When booting Linux on FVP RevC, Linux reports the following error:
>>
>> ACPI: IORT: [Firmware Bug]: Root complex missing memory address limit
>>
>> This issue is due to the RC Address Limit not being configured in the
>> configuration manager for the platform.
>>
>> The default model parameter is configured to 32, so set this in the
>> configuration manager, fixing the error.
>>
> Why is 32 a suitable value? I would not expect emulated IP to have
> such a limitation.
>
After some internal discussions there was a miscommunication here. There 
is not a limit here, and the correct value should be 64. I will prepare 
a v2 patch with this change and send it out later today.
>> Signed-off-by: Edward Pickup <edward.pickup@arm.com>
>> ---
>>
>> The changes can be seen at https://github.com/edpickup/edk2-platforms/tree/1700_fix_IORT_RC_Addr_Limit_v1
>>
>>   Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
>> index 776dec999eb1ef47910835987fa4dae1b69c52fd..560937d7a3addee729148fd6deab2eb82fced9e2 100644
>> --- a/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
>> +++ b/Platform/ARM/VExpressPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c
>> @@ -312,7 +312,9 @@ EDKII_PLATFORM_REPOSITORY_INFO VExpressPlatRepositoryInfo = {
>>       // ATS attributes
>>       EFI_ACPI_IORT_ROOT_COMPLEX_ATS_UNSUPPORTED,
>>       // PCI segment number
>> -    0
>> +    0,
>> +    // Memory Address Size Limit
>> +    32
>>     },
>>
>>     // Array of Device ID mappings
>> --
>> Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")
>>
>> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-04-28  8:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-27  8:59 [PATCH edk2-platforms v1 1/1] Platform/ARM: FVP: set IORT RC address limit for FVP RevC Edward Pickup
2022-04-27 11:36 ` Ard Biesheuvel
2022-04-28  8:24   ` Edward Pickup

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox