[Linaro-uefi,5/6] Platforms/AMD/Overdrive: fix GIC MMIO region sizes

Message ID 20170601094353.16235-6-ard.biesheuvel@linaro.org
State New
Headers show
Series
  • OpenPlatformPkg/AMD updates
Related show

Commit Message

Ard Biesheuvel June 1, 2017, 9:43 a.m.
As reported by Punit, Xen panics in the following way when booted on
Overdrive when using this firmware:

(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) GICv2: Sizes of GICC (0x00000000002000) and GICV (0x00000000010000) don't match
(XEN)
(XEN) ****************************************

This is due to the fact that the MMIO region sizes deviate from the
Linux upstream version of the DTS for no good reason. So fix that.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb | Bin 9357 -> 9357 bytes
 Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts |   4 ++--
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

Leif Lindholm June 1, 2017, 1:45 p.m. | #1
On Thu, Jun 01, 2017 at 09:43:52AM +0000, Ard Biesheuvel wrote:
> As reported by Punit, Xen panics in the following way when booted on
> Overdrive when using this firmware:
> 
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) GICv2: Sizes of GICC (0x00000000002000) and GICV (0x00000000010000) don't match
> (XEN)
> (XEN) ****************************************
> 
> This is due to the fact that the MMIO region sizes deviate from the
> Linux upstream version of the DTS for no good reason. So fix that.
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
But don't we also want a comment from Punit? (added to cc)

> ---
>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb | Bin 9357 -> 9357 bytes
>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts |   4 ++--
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb
> index 7ec1f63aff7805a3db7efc7a9b6e3c04f3c856cd..c8e5fd980bce305186214aab10a7d399faa22500 100644
> GIT binary patch
> delta 31
> fcmeD6?DgERlu?L5fdK>_ih(I0p|E*7<25A!an=T}
> 
> delta 31
> fcmeD6?DgERlu?M00Sq3BL1+d>hRxd<uPFflZgd85
> 
> diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
> index c896bba18056..4039f666004a 100644
> --- a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
> +++ b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
> @@ -31,8 +31,8 @@
>  		#size-cells = <0x2>;
>  		reg = <0x0 0xe1110000 0x0 0x1000>,
>  		      <0x0 0xe112f000 0x0 0x2000>,
> -		      <0x0 0xe1140000 0x0 0x10000>,
> -		      <0x0 0xe1160000 0x0 0x10000>;
> +		      <0x0 0xe1140000 0x0 0x2000>,
> +		      <0x0 0xe1160000 0x0 0x2000>;
>  		interrupts = <0x1 0x9 0xf04>;
>  		ranges = <0x0 0x0 0x0 0xe1100000 0x0 0x100000>;
>  		linux,phandle = <0x1>;
> -- 
> 2.9.3
>
Punit Agrawal June 5, 2017, 1:10 p.m. | #2
Leif Lindholm <leif.lindholm@linaro.org> writes:

> On Thu, Jun 01, 2017 at 09:43:52AM +0000, Ard Biesheuvel wrote:
>> As reported by Punit, Xen panics in the following way when booted on
>> Overdrive when using this firmware:
>> 
>> (XEN) ****************************************
>> (XEN) Panic on CPU 0:
>> (XEN) GICv2: Sizes of GICC (0x00000000002000) and GICV (0x00000000010000) don't match
>> (XEN)
>> (XEN) ****************************************
>> 
>> This is due to the fact that the MMIO region sizes deviate from the
>> Linux upstream version of the DTS for no good reason. So fix that.
>> 
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>
> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
> But don't we also want a comment from Punit? (added to cc)
>
>> ---
>>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb | Bin 9357 -> 9357 bytes
>>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts |   4 ++--
>>  2 files changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb
>> index 7ec1f63aff7805a3db7efc7a9b6e3c04f3c856cd..c8e5fd980bce305186214aab10a7d399faa22500 100644
>> GIT binary patch
>> delta 31
>> fcmeD6?DgERlu?L5fdK>_ih(I0p|E*7<25A!an=T}
>> 
>> delta 31
>> fcmeD6?DgERlu?M00Sq3BL1+d>hRxd<uPFflZgd85
>> 
>> diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
>> index c896bba18056..4039f666004a 100644
>> --- a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
>> +++ b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
>> @@ -31,8 +31,8 @@
>>  		#size-cells = <0x2>;
>>  		reg = <0x0 0xe1110000 0x0 0x1000>,
>>  		      <0x0 0xe112f000 0x0 0x2000>,
>> -		      <0x0 0xe1140000 0x0 0x10000>,
>> -		      <0x0 0xe1160000 0x0 0x10000>;
>> +		      <0x0 0xe1140000 0x0 0x2000>,
>> +		      <0x0 0xe1160000 0x0 0x2000>;
>>  		interrupts = <0x1 0x9 0xf04>;
>>  		ranges = <0x0 0x0 0x0 0xe1100000 0x0 0x100000>;
>>  		linux,phandle = <0x1>;
>> -- 
>> 2.9.3
>> 

Overriding the device tree with one containing a similar change made Xen
boot for me.

Acked-by: Punit Agrawal <punit.agrawal@arm.com>

Thanks!

Patch hide | download patch | download mbox

diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb
index 7ec1f63aff7805a3db7efc7a9b6e3c04f3c856cd..c8e5fd980bce305186214aab10a7d399faa22500 100644
GIT binary patch
delta 31
fcmeD6?DgERlu?L5fdK>_ih(I0p|E*7<25A!an=T}

delta 31
fcmeD6?DgERlu?M00Sq3BL1+d>hRxd<uPFflZgd85

diff --git a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
index c896bba18056..4039f666004a 100644
--- a/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
+++ b/Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts
@@ -31,8 +31,8 @@ 
 		#size-cells = <0x2>;
 		reg = <0x0 0xe1110000 0x0 0x1000>,
 		      <0x0 0xe112f000 0x0 0x2000>,
-		      <0x0 0xe1140000 0x0 0x10000>,
-		      <0x0 0xe1160000 0x0 0x10000>;
+		      <0x0 0xe1140000 0x0 0x2000>,
+		      <0x0 0xe1160000 0x0 0x2000>;
 		interrupts = <0x1 0x9 0xf04>;
 		ranges = <0x0 0x0 0x0 0xe1100000 0x0 0x100000>;
 		linux,phandle = <0x1>;