All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] Port several ACPI patches from Linux
@ 2016-01-07  7:39 Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 1/8] ACPI 5.0: Add new/changed tables to headers Shannon Zhao
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Shannon Zhao <shannon.zhao@linaro.org>

These patches add some changes of ACPI 5.0, 5.1 and 6.0. They are part
of the previous patch set I sent which adds ACPI support for arm64 on
Xen[1]. Split them as an individual set for convenient reviewing.

Thanks,
Shannon
[1] http://lists.xenproject.org/archives/html/xen-devel/2015-11/msg01831.html

Bob Moore (3):
  ACPI 5.0: Add new/changed tables to headers
  ACPICA: ACPI 6.0: Add changes for MADT table.
  ACPICA: ACPI 6.0: Add support for STAO table

Graeme Gregory (1):
  ACPICA/ARM: ACPI 5.1: Update for FADT changes.

Hanjun Guo (2):
  ACPICA: ACPI 6.0: Add values for MADT GIC version field
  ACPICA: Headers: Add GTDT flag definitions for the timer subtable.

Tomasz Nowicki (2):
  ACPICA/ARM: ACPI 5.1: Update for MADT changes.
  ACPICA/ARM: ACPI 5.1: Update for GTDT table changes.

 xen/include/acpi/actbl.h  |  12 +++--
 xen/include/acpi/actbl1.h |  94 +++++++++++++++++++++++++++++++++++++-
 xen/include/acpi/actbl3.h | 114 ++++++++++++++++++++++++++++++++++++++++------
 3 files changed, 200 insertions(+), 20 deletions(-)

-- 
2.0.4

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

* [PATCH v4 1/8] ACPI 5.0: Add new/changed tables to headers
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 2/8] ACPICA/ARM: ACPI 5.1: Update for MADT changes Shannon Zhao
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Bob Moore <robert.moore@intel.com>

Adds new file, actbl3.h

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
[Linux commit c5bd6537329e66a8b36234f19a36d94b72d07394]
[only port changes of Generic Interrupt and Generic Distributor, other
changes already exist]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
---
 xen/include/acpi/actbl1.h | 31 +++++++++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/xen/include/acpi/actbl1.h b/xen/include/acpi/actbl1.h
index 9311e3a..ca13bc1 100644
--- a/xen/include/acpi/actbl1.h
+++ b/xen/include/acpi/actbl1.h
@@ -639,7 +639,9 @@ enum acpi_madt_type {
 	ACPI_MADT_TYPE_INTERRUPT_SOURCE = 8,
 	ACPI_MADT_TYPE_LOCAL_X2APIC = 9,
 	ACPI_MADT_TYPE_LOCAL_X2APIC_NMI = 10,
-	ACPI_MADT_TYPE_RESERVED = 11	/* 11 and greater are reserved */
+	ACPI_MADT_TYPE_GENERIC_INTERRUPT = 11,
+	ACPI_MADT_TYPE_GENERIC_DISTRIBUTOR = 12,
+	ACPI_MADT_TYPE_RESERVED = 13	/* 13 and greater are reserved */
 };
 
 /*
@@ -760,11 +762,36 @@ struct acpi_madt_local_x2apic_nmi {
 	u8 reserved[3];
 };
 
+/* 11: Generic Interrupt (ACPI 5.0) */
+
+struct acpi_madt_generic_interrupt {
+	struct acpi_subtable_header header;
+	u16 reserved;		/* Reserved - must be zero */
+	u32 gic_id;
+	u32 uid;
+	u32 flags;
+	u32 parking_version;
+	u32 performance_interrupt;
+	u64 parked_address;
+	u64 base_address;
+};
+
+/* 12: Generic Distributor (ACPI 5.0) */
+
+struct acpi_madt_generic_distributor {
+	struct acpi_subtable_header header;
+	u16 reserved;		/* Reserved - must be zero */
+	u32 gic_id;
+	u64 base_address;
+	u32 global_irq_base;
+	u32 reserved2;		/* Reserved - must be zero */
+};
+
 /*
  * Common flags fields for MADT subtables
  */
 
-/* MADT Local APIC flags (lapic_flags) */
+/* MADT Local APIC flags (lapic_flags) and GIC flags */
 
 #define ACPI_MADT_ENABLED           (1)	/* 00: Processor is usable if set */
 
-- 
2.0.4

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

* [PATCH v4 2/8] ACPICA/ARM: ACPI 5.1: Update for MADT changes.
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 1/8] ACPI 5.0: Add new/changed tables to headers Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 3/8] ACPICA: ACPI 6.0: Add changes for MADT table Shannon Zhao
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Tomasz Nowicki <tomasz.nowicki@linaro.org>

New subtables and changes to other subtables. Tomasz Nowicki.

Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit d0c383e48d1b6cdc39cf9cc2f082bbb6f3c28b89]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl1.h | 44 +++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 41 insertions(+), 3 deletions(-)

diff --git a/xen/include/acpi/actbl1.h b/xen/include/acpi/actbl1.h
index ca13bc1..e28853e 100644
--- a/xen/include/acpi/actbl1.h
+++ b/xen/include/acpi/actbl1.h
@@ -641,7 +641,9 @@ enum acpi_madt_type {
 	ACPI_MADT_TYPE_LOCAL_X2APIC_NMI = 10,
 	ACPI_MADT_TYPE_GENERIC_INTERRUPT = 11,
 	ACPI_MADT_TYPE_GENERIC_DISTRIBUTOR = 12,
-	ACPI_MADT_TYPE_RESERVED = 13	/* 13 and greater are reserved */
+	ACPI_MADT_TYPE_GENERIC_MSI_FRAME = 13,
+	ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,
+	ACPI_MADT_TYPE_RESERVED = 15	/* 15 and greater are reserved */
 };
 
 /*
@@ -767,15 +769,26 @@ struct acpi_madt_local_x2apic_nmi {
 struct acpi_madt_generic_interrupt {
 	struct acpi_subtable_header header;
 	u16 reserved;		/* Reserved - must be zero */
-	u32 gic_id;
+	u32 cpu_interface_number;
 	u32 uid;
 	u32 flags;
 	u32 parking_version;
 	u32 performance_interrupt;
 	u64 parked_address;
 	u64 base_address;
+	u64 gicv_base_address;
+	u64 gich_base_address;
+	u32 vgic_interrupt;
+	u64 gicr_base_address;
+	u64 arm_mpidr;
 };
 
+/* Masks for Flags field above */
+
+/* ACPI_MADT_ENABLED                    (1)      Processor is usable if set */
+#define ACPI_MADT_PERFORMANCE_IRQ_MODE  (1<<1) /* 01: Performance Interrupt Mode */
+#define ACPI_MADT_VGIC_IRQ_MODE         (1<<2) /* 02: VGIC Maintenance Interrupt mode */
+
 /* 12: Generic Distributor (ACPI 5.0) */
 
 struct acpi_madt_generic_distributor {
@@ -787,11 +800,36 @@ struct acpi_madt_generic_distributor {
 	u32 reserved2;		/* Reserved - must be zero */
 };
 
+/* 13: Generic MSI Frame (ACPI 5.1) */
+
+struct acpi_madt_generic_msi_frame {
+	struct acpi_subtable_header header;
+	u16 reserved;		/* reserved - must be zero */
+	u32 msi_frame_id;
+	u64 base_address;
+	u32 flags;
+	u16 spi_count;
+	u16 spi_base;
+};
+
+/* Masks for Flags field above */
+
+#define ACPI_MADT_OVERRIDE_SPI_VALUES	(1)
+
+/* 14: Generic Redistributor (ACPI 5.1) */
+
+struct acpi_madt_generic_redistributor {
+	struct acpi_subtable_header header;
+	u16 reserved;		/* reserved - must be zero */
+	u64 base_address;
+	u32 length;
+};
+
 /*
  * Common flags fields for MADT subtables
  */
 
-/* MADT Local APIC flags (lapic_flags) and GIC flags */
+/* MADT Local APIC flags */
 
 #define ACPI_MADT_ENABLED           (1)	/* 00: Processor is usable if set */
 
-- 
2.0.4

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

* [PATCH v4 3/8] ACPICA: ACPI 6.0: Add changes for MADT table.
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 1/8] ACPI 5.0: Add new/changed tables to headers Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 2/8] ACPICA/ARM: ACPI 5.1: Update for MADT changes Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 4/8] ACPICA: ACPI 6.0: Add values for MADT GIC version field Shannon Zhao
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Bob Moore <robert.moore@intel.com>

ACPICA commit 02cbb41232bccf7a91967140cab95d5f48291f21

New subtable type. Some additions to existing subtables.

Link: https://github.com/acpica/acpica/commit/02cbb412
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit 0cff8dc0099f6d4f7431181918b37a472bcd1bbb]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl1.h | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/xen/include/acpi/actbl1.h b/xen/include/acpi/actbl1.h
index e28853e..afb1545 100644
--- a/xen/include/acpi/actbl1.h
+++ b/xen/include/acpi/actbl1.h
@@ -643,7 +643,8 @@ enum acpi_madt_type {
 	ACPI_MADT_TYPE_GENERIC_DISTRIBUTOR = 12,
 	ACPI_MADT_TYPE_GENERIC_MSI_FRAME = 13,
 	ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,
-	ACPI_MADT_TYPE_RESERVED = 15	/* 15 and greater are reserved */
+	ACPI_MADT_TYPE_GENERIC_TRANSLATOR = 15,
+	ACPI_MADT_TYPE_RESERVED = 16	/* 16 and greater are reserved */
 };
 
 /*
@@ -764,7 +765,7 @@ struct acpi_madt_local_x2apic_nmi {
 	u8 reserved[3];
 };
 
-/* 11: Generic Interrupt (ACPI 5.0) */
+/* 11: Generic Interrupt (ACPI 5.0 + ACPI 6.0 changes) */
 
 struct acpi_madt_generic_interrupt {
 	struct acpi_subtable_header header;
@@ -781,6 +782,8 @@ struct acpi_madt_generic_interrupt {
 	u32 vgic_interrupt;
 	u64 gicr_base_address;
 	u64 arm_mpidr;
+	u8 efficiency_class;
+	u8 reserved2[3];
 };
 
 /* Masks for Flags field above */
@@ -789,7 +792,7 @@ struct acpi_madt_generic_interrupt {
 #define ACPI_MADT_PERFORMANCE_IRQ_MODE  (1<<1) /* 01: Performance Interrupt Mode */
 #define ACPI_MADT_VGIC_IRQ_MODE         (1<<2) /* 02: VGIC Maintenance Interrupt mode */
 
-/* 12: Generic Distributor (ACPI 5.0) */
+/* 12: Generic Distributor (ACPI 5.0 + ACPI 6.0 changes) */
 
 struct acpi_madt_generic_distributor {
 	struct acpi_subtable_header header;
@@ -797,7 +800,8 @@ struct acpi_madt_generic_distributor {
 	u32 gic_id;
 	u64 base_address;
 	u32 global_irq_base;
-	u32 reserved2;		/* Reserved - must be zero */
+	u8 version;
+	u8 reserved2[3];	/* Reserved - must be zero */
 };
 
 /* 13: Generic MSI Frame (ACPI 5.1) */
@@ -825,6 +829,16 @@ struct acpi_madt_generic_redistributor {
 	u32 length;
 };
 
+/* 15: Generic Translator (ACPI 6.0) */
+
+struct acpi_madt_generic_translator {
+	struct acpi_subtable_header header;
+	u16 reserved;           /* reserved - must be zero */
+	u32 translation_id;
+	u64 base_address;
+	u32 reserved2;
+};
+
 /*
  * Common flags fields for MADT subtables
  */
-- 
2.0.4

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

* [PATCH v4 4/8] ACPICA: ACPI 6.0: Add values for MADT GIC version field
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
                   ` (2 preceding siblings ...)
  2016-01-07  7:39 ` [PATCH v4 3/8] ACPICA: ACPI 6.0: Add changes for MADT table Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 5/8] ACPICA/ARM: ACPI 5.1: Update for FADT changes Shannon Zhao
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Hanjun Guo <hanjun.guo@linaro.org>

ACPICA commit 4b100dc43e8baee8c8b4891b23bc7ad03eba6a28

Support for the new version field in the generic distributor
subtable. Hanjun Guo <hanjun.guo@linaro.org>

Link: https://github.com/acpica/acpica/commit/4b100dc4
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit a8bd0f07eb594df51845d33f272fb1952fec1a6f]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl1.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/xen/include/acpi/actbl1.h b/xen/include/acpi/actbl1.h
index afb1545..ed5cd2d 100644
--- a/xen/include/acpi/actbl1.h
+++ b/xen/include/acpi/actbl1.h
@@ -804,6 +804,17 @@ struct acpi_madt_generic_distributor {
 	u8 reserved2[3];	/* Reserved - must be zero */
 };
 
+/* Values for Version field above */
+
+enum acpi_madt_gic_version {
+	ACPI_MADT_GIC_VERSION_NONE = 0,
+	ACPI_MADT_GIC_VERSION_V1 = 1,
+	ACPI_MADT_GIC_VERSION_V2 = 2,
+	ACPI_MADT_GIC_VERSION_V3 = 3,
+	ACPI_MADT_GIC_VERSION_V4 = 4,
+	ACPI_MADT_GIC_VERSION_RESERVED = 5      /* 5 and greater are reserved */
+};
+
 /* 13: Generic MSI Frame (ACPI 5.1) */
 
 struct acpi_madt_generic_msi_frame {
-- 
2.0.4

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

* [PATCH v4 5/8] ACPICA/ARM: ACPI 5.1: Update for FADT changes.
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
                   ` (3 preceding siblings ...)
  2016-01-07  7:39 ` [PATCH v4 4/8] ACPICA: ACPI 6.0: Add values for MADT GIC version field Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 6/8] ACPICA/ARM: ACPI 5.1: Update for GTDT table changes Shannon Zhao
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Graeme Gregory <graeme.gregory@linaro.org>

Adds ARM flags and FADT minor revision. Graeme Gregory.

Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit 9eb1105babb8948c402ff785f5b43e35f79c0a0c]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl.h | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/xen/include/acpi/actbl.h b/xen/include/acpi/actbl.h
index 401bc9d..3079176 100644
--- a/xen/include/acpi/actbl.h
+++ b/xen/include/acpi/actbl.h
@@ -244,7 +244,8 @@ struct acpi_table_fadt {
 	u32 flags;		/* Miscellaneous flag bits (see below for individual flags) */
 	struct acpi_generic_address reset_register;	/* 64-bit address of the Reset register */
 	u8 reset_value;		/* Value to write to the reset_register port to reset the system */
-	u8 reserved4[3];	/* Reserved, must be zero */
+	u16 arm_boot_flags;     /* ARM-Specific Boot Flags (see below for individual flags) (ACPI 5.1) */
+	u8 minor_revision;      /* FADT Minor Revision (ACPI 5.1) */
 	u64 Xfacs;		/* 64-bit physical address of FACS */
 	u64 Xdsdt;		/* 64-bit physical address of DSDT */
 	struct acpi_generic_address xpm1a_event_block;	/* 64-bit Extended Power Mgt 1a Event Reg Blk address */
@@ -260,7 +261,7 @@ struct acpi_table_fadt {
 	u64 hypervisor_id;      /* Hypervisor Vendor ID (ACPI 6.0) */
 };
 
-/* Masks for FADT Boot Architecture Flags (boot_flags) */
+/* Masks for FADT IA-PC Boot Architecture Flags (boot_flags) */
 
 #define ACPI_FADT_LEGACY_DEVICES    (1)  	/* 00: [V2] System has LPC or ISA bus devices */
 #define ACPI_FADT_8042              (1<<1)	/* 01: [V3] System has an 8042 controller on port 60/64 */
@@ -271,6 +272,11 @@ struct acpi_table_fadt {
 
 #define FADT2_REVISION_ID               3
 
+/* Masks for FADT ARM Boot Architecture Flags (arm_boot_flags) ACPI 5.1 */
+
+#define ACPI_FADT_PSCI_COMPLIANT    (1)        /* 00:  [V5+] PSCI 0.2+ is implemented */
+#define ACPI_FADT_PSCI_USE_HVC      (1<<1)     /* 01:  [V5+] HVC must be used instead of SMC as the PSCI conduit */
+
 /* Masks for FADT flags */
 
 #define ACPI_FADT_WBINVD            (1)	/* 00: [V1] The wbinvd instruction works properly */
@@ -347,7 +353,7 @@ enum acpi_prefered_pm_profiles {
  *     FADT V6 size: 0x114
  */
 #define ACPI_FADT_V1_SIZE       (u32) (ACPI_FADT_OFFSET (flags) + 4)
-#define ACPI_FADT_V2_SIZE       (u32) (ACPI_FADT_OFFSET (reserved4[0]) + 3)
+#define ACPI_FADT_V2_SIZE       (u32) (ACPI_FADT_OFFSET (minor_revision) + 1)
 #define ACPI_FADT_V3_SIZE       (u32) (ACPI_FADT_OFFSET (sleep_control))
 #define ACPI_FADT_V5_SIZE       (u32) (ACPI_FADT_OFFSET (hypervisor_id))
 #define ACPI_FADT_V6_SIZE       (u32) (sizeof (struct acpi_table_fadt))
-- 
2.0.4

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

* [PATCH v4 6/8] ACPICA/ARM: ACPI 5.1: Update for GTDT table changes.
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
                   ` (4 preceding siblings ...)
  2016-01-07  7:39 ` [PATCH v4 5/8] ACPICA/ARM: ACPI 5.1: Update for FADT changes Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 7/8] ACPICA: Headers: Add GTDT flag definitions for the timer subtable Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 8/8] ACPICA: ACPI 6.0: Add support for STAO table Shannon Zhao
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Tomasz Nowicki <tomasz.nowicki@linaro.org>

New fields and new subtables. Tomasz Nowicki.

Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit 54ea4247d389059674aaacad7af224459b135fb9]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl3.h | 93 +++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 78 insertions(+), 15 deletions(-)

diff --git a/xen/include/acpi/actbl3.h b/xen/include/acpi/actbl3.h
index 8c61b5f..39f1f36 100644
--- a/xen/include/acpi/actbl3.h
+++ b/xen/include/acpi/actbl3.h
@@ -241,33 +241,96 @@ struct acpi_s3pt_suspend {
 
 /*******************************************************************************
  *
- * GTDT - Generic Timer Description Table (ACPI 5.0)
- *        Version 1
+ * GTDT - Generic Timer Description Table (ACPI 5.1)
+ *        Version 2
  *
  ******************************************************************************/
 
 struct acpi_table_gtdt {
 	struct acpi_table_header header;	/* Common ACPI table header */
-	u64 address;
-	u32 flags;
-	u32 secure_pl1_interrupt;
-	u32 secure_pl1_flags;
-	u32 non_secure_pl1_interrupt;
-	u32 non_secure_pl1_flags;
+	u64 counter_block_addresss;
+	u32 reserved;
+	u32 secure_el1_interrupt;
+	u32 secure_el1_flags;
+	u32 non_secure_el1_interrupt;
+	u32 non_secure_el1_flags;
 	u32 virtual_timer_interrupt;
 	u32 virtual_timer_flags;
-	u32 non_secure_pl2_interrupt;
-	u32 non_secure_pl2_flags;
+	u32 non_secure_el2_interrupt;
+	u32 non_secure_el2_flags;
+	u64 counter_read_block_address;
+	u32 platform_timer_count;
+	u32 platform_timer_offset;
 };
 
-/* Values for Flags field above */
+/* Flag Definitions: Timer Block Physical Timers and Virtual timers */
+
+#define ACPI_GTDT_INTERRUPT_MODE        (1)
+#define ACPI_GTDT_INTERRUPT_POLARITY    (1<<1)
+#define ACPI_GTDT_ALWAYS_ON             (1<<2)
+
+/* Common GTDT subtable header */
+
+struct acpi_gtdt_header {
+	u8 type;
+	u16 length;
+};
+
+/* Values for GTDT subtable type above */
+
+enum acpi_gtdt_type {
+	ACPI_GTDT_TYPE_TIMER_BLOCK = 0,
+	ACPI_GTDT_TYPE_WATCHDOG = 1,
+	ACPI_GTDT_TYPE_RESERVED = 2	/* 2 and greater are reserved */
+};
 
-#define ACPI_GTDT_MAPPED_BLOCK_PRESENT      1
+/* GTDT Subtables, correspond to Type in struct acpi_gtdt_header */
+
+/* 0: Generic Timer Block */
+
+struct acpi_gtdt_timer_block {
+	struct acpi_gtdt_header header;
+	u8 reserved;
+	u64 block_address;
+	u32 timer_count;
+	u32 timer_offset;
+};
+
+/* Timer Sub-Structure, one per timer */
+
+struct acpi_gtdt_timer_entry {
+	u8 frame_number;
+	u8 reserved[3];
+	u64 base_address;
+	u64 el0_base_address;
+	u32 timer_interrupt;
+	u32 timer_flags;
+	u32 virtual_timer_interrupt;
+	u32 virtual_timer_flags;
+	u32 common_flags;
+};
+
+/* Flag Definitions: common_flags above */
+
+#define ACPI_GTDT_GT_IS_SECURE_TIMER	(1)
+#define ACPI_GTDT_GT_ALWAYS_ON		(1<<1)
+
+/* 1: SBSA Generic Watchdog Structure */
+
+struct acpi_gtdt_watchdog {
+	struct acpi_gtdt_header header;
+	u8 reserved;
+	u64 refresh_frame_address;
+	u64 control_frame_address;
+	u32 timer_interrupt;
+	u32 timer_flags;
+};
 
-/* Values for all "TimerFlags" fields above */
+/* Flag Definitions: timer_flags above */
 
-#define ACPI_GTDT_INTERRUPT_MODE            1
-#define ACPI_GTDT_INTERRUPT_POLARITY        2
+#define ACPI_GTDT_WATCHDOG_IRQ_MODE         (1)
+#define ACPI_GTDT_WATCHDOG_IRQ_POLARITY     (1<<1)
+#define ACPI_GTDT_WATCHDOG_SECURE           (1<<2)
 
 /*******************************************************************************
  *
-- 
2.0.4

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

* [PATCH v4 7/8] ACPICA: Headers: Add GTDT flag definitions for the timer subtable.
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
                   ` (5 preceding siblings ...)
  2016-01-07  7:39 ` [PATCH v4 6/8] ACPICA/ARM: ACPI 5.1: Update for GTDT table changes Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  2016-01-07  7:39 ` [PATCH v4 8/8] ACPICA: ACPI 6.0: Add support for STAO table Shannon Zhao
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Hanjun Guo <hanjun.guo@linaro.org>

Mostly by Hanjun Guo <hanjun.guo@linaro.org>

Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit 34ea065e5e607dcbb249046c42a491f8b24ad849]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
---
 xen/include/acpi/actbl3.h | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/xen/include/acpi/actbl3.h b/xen/include/acpi/actbl3.h
index 39f1f36..c472045 100644
--- a/xen/include/acpi/actbl3.h
+++ b/xen/include/acpi/actbl3.h
@@ -310,10 +310,15 @@ struct acpi_gtdt_timer_entry {
 	u32 common_flags;
 };
 
+/* Flag Definitions: timer_flags and virtual_timer_flags above */
+
+#define ACPI_GTDT_GT_IRQ_MODE		    (1)
+#define ACPI_GTDT_GT_IRQ_POLARITY	    (1<<1)
+
 /* Flag Definitions: common_flags above */
 
-#define ACPI_GTDT_GT_IS_SECURE_TIMER	(1)
-#define ACPI_GTDT_GT_ALWAYS_ON		(1<<1)
+#define ACPI_GTDT_GT_IS_SECURE_TIMER	    (1)
+#define ACPI_GTDT_GT_ALWAYS_ON		    (1<<1)
 
 /* 1: SBSA Generic Watchdog Structure */
 
-- 
2.0.4

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

* [PATCH v4 8/8] ACPICA: ACPI 6.0: Add support for STAO table
  2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
                   ` (6 preceding siblings ...)
  2016-01-07  7:39 ` [PATCH v4 7/8] ACPICA: Headers: Add GTDT flag definitions for the timer subtable Shannon Zhao
@ 2016-01-07  7:39 ` Shannon Zhao
  7 siblings, 0 replies; 9+ messages in thread
From: Shannon Zhao @ 2016-01-07  7:39 UTC (permalink / raw)
  To: xen-devel
  Cc: julien.grall, stefano.stabellini, shannon.zhao, JBeulich,
	peter.huangpeng

From: Bob Moore <robert.moore@intel.com>

ACPICA commit 532bf402a503061afd9d80a23e1d3c8fd99b052c

_STA override table.

Link: https://github.com/acpica/acpica/commit/532bf402
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Linux commit 37e12657f8922ebc62f696494c56c81db509053e]
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 xen/include/acpi/actbl3.h | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/xen/include/acpi/actbl3.h b/xen/include/acpi/actbl3.h
index c472045..0a67784 100644
--- a/xen/include/acpi/actbl3.h
+++ b/xen/include/acpi/actbl3.h
@@ -68,6 +68,7 @@
 #define ACPI_SIG_PCCT           "PCCT"	/* Platform Communications Channel Table */
 #define ACPI_SIG_PMTT           "PMTT"	/* Platform Memory Topology Table */
 #define ACPI_SIG_RASF           "RASF"	/* RAS Feature table */
+#define ACPI_SIG_STAO           "STAO" /* Status Override table */
 
 #define ACPI_SIG_S3PT           "S3PT"	/* S3 Performance (sub)Table */
 #define ACPI_SIG_PCCS           "PCC"	/* PCC Shared Memory Region */
@@ -618,6 +619,21 @@ enum acpi_rasf_status {
 #define ACPI_RASF_ERROR                 (1<<2)
 #define ACPI_RASF_STATUS                (0x1F<<3)
 
+/*******************************************************************************
+ *
+ * STAO - Status Override Table (_STA override) - ACPI 6.0
+ *        Version 1
+ *
+ * Conforms to "ACPI Specification for Status Override Table"
+ * 6 January 2015
+ *
+ ******************************************************************************/
+
+struct acpi_table_stao {
+	struct acpi_table_header header;	/* Common ACPI table header */
+	u8 ignore_uart;
+};
+
 /* Reset to default packing */
 
 #pragma pack()
-- 
2.0.4

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

end of thread, other threads:[~2016-01-07  7:39 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-07  7:39 [PATCH v4 0/8] Port several ACPI patches from Linux Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 1/8] ACPI 5.0: Add new/changed tables to headers Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 2/8] ACPICA/ARM: ACPI 5.1: Update for MADT changes Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 3/8] ACPICA: ACPI 6.0: Add changes for MADT table Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 4/8] ACPICA: ACPI 6.0: Add values for MADT GIC version field Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 5/8] ACPICA/ARM: ACPI 5.1: Update for FADT changes Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 6/8] ACPICA/ARM: ACPI 5.1: Update for GTDT table changes Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 7/8] ACPICA: Headers: Add GTDT flag definitions for the timer subtable Shannon Zhao
2016-01-07  7:39 ` [PATCH v4 8/8] ACPICA: ACPI 6.0: Add support for STAO table Shannon Zhao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.