Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Oct 2017 15:46:11 +0000 (UTC)
From:      Andrew Turner <andrew@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r324368 - head/sys/dev/psci
Message-ID:  <201710061546.v96FkBbU033046@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: andrew
Date: Fri Oct  6 15:46:11 2017
New Revision: 324368
URL: https://svnweb.freebsd.org/changeset/base/324368

Log:
  Also handle psci 1.0. This can be seen as a bug fix update for the 0.2
  specification we already support, with the only changes in functions we
  don't currently use.
  
  Sponsored by:	DARPA, AFRL

Modified:
  head/sys/dev/psci/psci.c

Modified: head/sys/dev/psci/psci.c
==============================================================================
--- head/sys/dev/psci/psci.c	Fri Oct  6 15:09:28 2017	(r324367)
+++ head/sys/dev/psci/psci.c	Fri Oct  6 15:46:11 2017	(r324368)
@@ -97,6 +97,7 @@ struct psci_softc *psci_softc = NULL;
 
 #ifdef FDT
 static struct ofw_compat_data compat_data[] = {
+	{"arm,psci-1.0",        (uintptr_t)psci_v0_2_init},
 	{"arm,psci-0.2",        (uintptr_t)psci_v0_2_init},
 	{"arm,psci",            (uintptr_t)psci_v0_1_init},
 	{NULL,                  0}
@@ -332,9 +333,11 @@ psci_fdt_callfn(psci_callfn_t *callfn)
 	phandle_t node;
 
 	node = ofw_bus_find_compatible(OF_peer(0), "arm,psci-0.2");
-	if (node == 0)
-		/* TODO: Handle psci 0.1 */
-		return (PSCI_MISSING);
+	if (node == 0) {
+		node = ofw_bus_find_compatible(OF_peer(0), "arm,psci-1.0");
+		if (node == 0)
+			return (PSCI_MISSING);
+	}
 
 	*callfn = psci_fdt_get_callfn(node);
 	return (0);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201710061546.v96FkBbU033046>