Thread (129 messages) 129 messages, 17 authors, 2014-08-21

[PATCH 06/19] ARM64 / ACPI: Parse FADT table to get PSCI flags for PSCI init

From: graeme.gregory at linaro.org <hidden>
Date: 2014-08-20 15:44:05
Also in: linux-acpi, lkml

On Wed, Aug 20, 2014 at 04:29:44PM +0100, Catalin Marinas wrote:
On Wed, Aug 20, 2014 at 04:00:28PM +0100, Grant Likely wrote:
quoted
On Thu, 24 Jul 2014 21:00:12 +0800, Hanjun Guo [off-list ref] wrote:
quoted
@@ -345,13 +378,19 @@ int __init psci_init(void)
 	const struct of_device_id *matched_np;
 	psci_initcall_t init_fn;
 
-	np = of_find_matching_node_and_match(NULL, psci_of_match, &matched_np);
+	if (acpi_disabled) {
+		np = of_find_matching_node_and_match(NULL,
+				psci_of_match, &matched_np);
 
-	if (!np)
-		return -ENODEV;
+		if (!np)
+			return -ENODEV;
+
+		init_fn = (psci_initcall_t)matched_np->data;
+
+		return init_fn(np);
+	}
 
-	init_fn = (psci_initcall_t)matched_np->data;
-	return init_fn(np);
+	return psci_0_2_init_acpi();
 }
So, while the functionality is sound, this is kind of a stinky diff. The
ACPI path should not push the OF code into a sub branch. Make it look
like this instead (with the advantage that the diff will be simpler):

+	if (IS_ENABLED(CONFIG_ACPI) && !acpi_disabled)
+		return psci_0_2_init_acpi();
Minor point: we should define acpi_disabled to 1 when !CONFIG_ACPI and
avoid additional IS_ENABLED(CONFIG_ACPI) checks (unless already don this
way).
This is the default behaviour already.

Graeme
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help