summaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
authorJeremy Linton <jeremy.linton@arm.com>2019-03-01 19:52:21 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-03-11 12:14:57 +0100
commit4909e6df213a7c3e5e282538356f31ab68828793 (patch)
tree405cd897a0d69083e6ca87b9a968238354602b9b /drivers/acpi
parentMerge tag 'acpi-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/raf... (diff)
downloadlinux-4909e6df213a7c3e5e282538356f31ab68828793.tar.xz
linux-4909e6df213a7c3e5e282538356f31ab68828793.zip
ACPI: tables: Simplify PPTT leaf node detection
ACPI 6.3 bumps the PPTT table revision and adds a LEAF_NODE flag. This allows us to avoid a second pass through the table to assure that the node in question is a leaf. Signed-off-by: Jeremy Linton <jeremy.linton@arm.com> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/pptt.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/acpi/pptt.c b/drivers/acpi/pptt.c
index ad31c50de3be..065c4fc245d1 100644
--- a/drivers/acpi/pptt.c
+++ b/drivers/acpi/pptt.c
@@ -209,6 +209,9 @@ static int acpi_pptt_leaf_node(struct acpi_table_header *table_hdr,
struct acpi_pptt_processor *cpu_node;
u32 proc_sz;
+ if (table_hdr->revision > 1)
+ return (node->flags & ACPI_PPTT_ACPI_LEAF_NODE);
+
table_end = (unsigned long)table_hdr + table_hdr->length;
node_entry = ACPI_PTR_DIFF(node, table_hdr);
entry = ACPI_ADD_PTR(struct acpi_subtable_header, table_hdr,