Patchwork [1/3] lib: acpi: add ACPI 5.0 GIC and GICD structs to MADT

login
register
mail settings
Submitter Colin King
Date Sept. 18, 2012, 11:22 a.m.
Message ID <1347967380-24722-2-git-send-email-colin.king@canonical.com>
Download mbox | patch
Permalink /patch/184678/
State Accepted
Headers show

Comments

Colin King - Sept. 18, 2012, 11:22 a.m.
From: Colin Ian King <colin.king@canonical.com>

ACPI 5 sections 5.2.12.14 and 5.2.12.15 now include two extra
structures.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 src/lib/include/fwts_acpi.h |   21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
Alex Hung - Sept. 20, 2012, 6:11 a.m.
On 09/18/2012 07:22 PM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> ACPI 5 sections 5.2.12.14 and 5.2.12.15 now include two extra
> structures.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>   src/lib/include/fwts_acpi.h |   21 +++++++++++++++++++++
>   1 file changed, 21 insertions(+)
>
> diff --git a/src/lib/include/fwts_acpi.h b/src/lib/include/fwts_acpi.h
> index ec085aa..2a90158 100644
> --- a/src/lib/include/fwts_acpi.h
> +++ b/src/lib/include/fwts_acpi.h
> @@ -421,6 +421,27 @@ typedef struct {
>   	uint8_t		reserved[3];
>   } __attribute__ ((packed)) fwts_acpi_madt_local_x2apic_nmi;
>
> +/* New in ACPI 5.0, GIC, section 5.2.12.14 */
> +typedef struct {
> +	uint8_t		reserved[2];
> +	uint32_t	gic_id;
> +	uint32_t	processor_uid;
> +	uint32_t	flags;
> +	uint32_t	parking_protocol_version;
> +	uint32_t	performance_interrupt_gsiv;
> +	uint64_t	parked_address;
> +	uint64_t	physical_base_address;
> +} __attribute__ ((packed)) fwts_acpi_madt_gic;
> +
> +/* New in ACPI 5.0, GICD, section 5.2.12.15 */
> +typedef struct {
> +	uint8_t		reserved[2];
> +	uint32_t	gic_id;
> +	uint64_t	physical_base_address;
> +	uint32_t	system_vector_base;
> +	uint32_t	reserved2;
> +} __attribute__ ((packed)) fwts_acpi_madt_gicd;
> +
>   /* From http://www.kuro5hin.org/story/2002/10/27/16622/530,
>      and also http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html */
>   typedef struct {
>

Acked-by: Alex Hung <alex.hung@canonical.com>
Alex Hung - Sept. 20, 2012, 6:14 a.m.
On 09/18/2012 07:22 PM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> ACPI 5 sections 5.2.12.14 and 5.2.12.15 now include two extra
> structures.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>   src/lib/include/fwts_acpi.h |   21 +++++++++++++++++++++
>   1 file changed, 21 insertions(+)
>
> diff --git a/src/lib/include/fwts_acpi.h b/src/lib/include/fwts_acpi.h
> index ec085aa..2a90158 100644
> --- a/src/lib/include/fwts_acpi.h
> +++ b/src/lib/include/fwts_acpi.h
> @@ -421,6 +421,27 @@ typedef struct {
>   	uint8_t		reserved[3];
>   } __attribute__ ((packed)) fwts_acpi_madt_local_x2apic_nmi;
>
> +/* New in ACPI 5.0, GIC, section 5.2.12.14 */
> +typedef struct {
> +	uint8_t		reserved[2];
> +	uint32_t	gic_id;
> +	uint32_t	processor_uid;
> +	uint32_t	flags;
> +	uint32_t	parking_protocol_version;
> +	uint32_t	performance_interrupt_gsiv;
> +	uint64_t	parked_address;
> +	uint64_t	physical_base_address;
> +} __attribute__ ((packed)) fwts_acpi_madt_gic;
> +
> +/* New in ACPI 5.0, GICD, section 5.2.12.15 */
> +typedef struct {
> +	uint8_t		reserved[2];
> +	uint32_t	gic_id;
> +	uint64_t	physical_base_address;
> +	uint32_t	system_vector_base;
> +	uint32_t	reserved2;
> +} __attribute__ ((packed)) fwts_acpi_madt_gicd;
> +
>   /* From http://www.kuro5hin.org/story/2002/10/27/16622/530,
>      and also http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html */
>   typedef struct {
>

Acked-by: Alex Hung <alex.hung@canonical.com>
Keng-Yu Lin - Sept. 20, 2012, 8:22 a.m.
On Tue, Sep 18, 2012 at 7:22 PM, Colin King <colin.king@canonical.com> wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> ACPI 5 sections 5.2.12.14 and 5.2.12.15 now include two extra
> structures.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  src/lib/include/fwts_acpi.h |   21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/src/lib/include/fwts_acpi.h b/src/lib/include/fwts_acpi.h
> index ec085aa..2a90158 100644
> --- a/src/lib/include/fwts_acpi.h
> +++ b/src/lib/include/fwts_acpi.h
> @@ -421,6 +421,27 @@ typedef struct {
>         uint8_t         reserved[3];
>  } __attribute__ ((packed)) fwts_acpi_madt_local_x2apic_nmi;
>
> +/* New in ACPI 5.0, GIC, section 5.2.12.14 */
> +typedef struct {
> +       uint8_t         reserved[2];
> +       uint32_t        gic_id;
> +       uint32_t        processor_uid;
> +       uint32_t        flags;
> +       uint32_t        parking_protocol_version;
> +       uint32_t        performance_interrupt_gsiv;
> +       uint64_t        parked_address;
> +       uint64_t        physical_base_address;
> +} __attribute__ ((packed)) fwts_acpi_madt_gic;
> +
> +/* New in ACPI 5.0, GICD, section 5.2.12.15 */
> +typedef struct {
> +       uint8_t         reserved[2];
> +       uint32_t        gic_id;
> +       uint64_t        physical_base_address;
> +       uint32_t        system_vector_base;
> +       uint32_t        reserved2;
> +} __attribute__ ((packed)) fwts_acpi_madt_gicd;
> +
>  /* From http://www.kuro5hin.org/story/2002/10/27/16622/530,
>     and also http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html */
>  typedef struct {
> --
> 1.7.10.4
>
Acked-by: Keng-Yu Lin <kengyu@canonical.com>

Patch

diff --git a/src/lib/include/fwts_acpi.h b/src/lib/include/fwts_acpi.h
index ec085aa..2a90158 100644
--- a/src/lib/include/fwts_acpi.h
+++ b/src/lib/include/fwts_acpi.h
@@ -421,6 +421,27 @@  typedef struct {
 	uint8_t		reserved[3];
 } __attribute__ ((packed)) fwts_acpi_madt_local_x2apic_nmi;
 
+/* New in ACPI 5.0, GIC, section 5.2.12.14 */
+typedef struct {
+	uint8_t		reserved[2];
+	uint32_t	gic_id;
+	uint32_t	processor_uid;
+	uint32_t	flags;
+	uint32_t	parking_protocol_version;
+	uint32_t	performance_interrupt_gsiv;
+	uint64_t	parked_address;
+	uint64_t	physical_base_address;
+} __attribute__ ((packed)) fwts_acpi_madt_gic;
+
+/* New in ACPI 5.0, GICD, section 5.2.12.15 */
+typedef struct {
+	uint8_t		reserved[2];
+	uint32_t	gic_id;
+	uint64_t	physical_base_address;
+	uint32_t	system_vector_base;
+	uint32_t	reserved2;
+} __attribute__ ((packed)) fwts_acpi_madt_gicd;
+
 /* From http://www.kuro5hin.org/story/2002/10/27/16622/530,
    and also http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html */
 typedef struct {