summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-10-26 16:09:59 +0000
committerian <ian@FreeBSD.org>2014-10-26 16:09:59 +0000
commitc7723e1e695129cd0a9cc489407268308cc6dd64 (patch)
treea1c22251845e5e9b27a18493c6401adb3cca733c
parent4666b07fe934c30e4dcb3c0fdf09c91c5ca9fae7 (diff)
downloadFreeBSD-src-c7723e1e695129cd0a9cc489407268308cc6dd64.zip
FreeBSD-src-c7723e1e695129cd0a9cc489407268308cc6dd64.tar.gz
MFC r273590: Accept documented compatible string for PL310 cache controller/
-rw-r--r--sys/arm/arm/pl310.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/arm/arm/pl310.c b/sys/arm/arm/pl310.c
index 76ad17b..b354bf8 100644
--- a/sys/arm/arm/pl310.c
+++ b/sys/arm/arm/pl310.c
@@ -84,6 +84,12 @@ static uint32_t g_ways_assoc;
static struct pl310_softc *pl310_softc;
+static struct ofw_compat_data compat_data[] = {
+ {"arm,pl310", true}, /* Non-standard, FreeBSD. */
+ {"arm,pl310-cache", true},
+ {NULL, false}
+};
+
void
pl310_print_config(struct pl310_softc *sc)
{
@@ -422,8 +428,7 @@ pl310_probe(device_t dev)
if (!ofw_bus_status_okay(dev))
return (ENXIO);
-
- if (!ofw_bus_is_compatible(dev, "arm,pl310"))
+ if (!ofw_bus_search_compatible(dev, compat_data)->ocd_data)
return (ENXIO);
device_set_desc(dev, "PL310 L2 cache controller");
return (0);
OpenPOWER on IntegriCloud