[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2] arm/gic-v3: Fix ACPI probe fail on GICv4 hardware



Hello Shanker,

On 27/05/16 16:30, Shanker Donthineni wrote:
On 05/27/2016 10:10 AM, Julien Grall wrote:
On 27/05/16 16:00, Shanker Donthineni wrote:
The current driver ACPI probe fails on hardware which has GICv4
version, even though it is fully compatible to GICv3. This patch
fixes the issue by registering the same probe function for GICv4
hardware.

Signed-off-by: Shanker Donthineni <shankerd@xxxxxxxxxxxxxx>
---
Changes since v1:
     - Edit commit text.
     - Fix BUG() in xen/arch/arm/domain.c

Please see my latest comment on the previous version [1].

To go further, the ACPI tables may not represent the actual hardware. It is 
possible to have ACPI tables describing a GICv2 whilst the real hardware is a 
GICv3.

Yes, it is absolutely valid and UEFI firmware can decide what to be exported to 
OS by changing the version number in ACPI MADT table.

On Qualcomm Technologies QDF2XXX platforms, GIC version set to 4.

To be clear, I am not against adding support of GICv4 in Xen. My concern is how the patch add it. Exposing GICv4 beyond the GICv3 driver is not necessary today.

Better to keep as small as possible until we figure out how Xen will support GICv4 features.

I.e, the following the code should be enough.

ACPI_DEVICE_START(acgicv4, "GICv4", DEVICE_GIC)
   .class_type = ACPI_MADT_GIC_VERSION_V4,
   .init = gicv3_acpi_preinit,
ACPI_DEVICE_END


Xen will use the GICv2 driver and not the GICv3. So the helper will return 
GIC_V2 (and not GIC_V3).


The current xen is supporting both the GICv2 and GICv3 for ACPI based boot.

ACPI_DEVICE_START(agicv3, "GICv3", DEVICE_GIC)
         .class_type = ACPI_MADT_GIC_VERSION_V3,
         .init = gicv3_acpi_preinit,
ACPI_DEVICE_END

ACPI_DEVICE_START(agicv2, "GICv2", DEVICE_GIC)
         .class_type = ACPI_MADT_GIC_VERSION_V2,
         .init = gicv2_acpi_preinit,
ACPI_DEVICE_END

Regards,

--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.