svn commit: r307088 - head/sys/arm/broadcom/bcm2835
Oleksandr Tymoshenko
gonzo at FreeBSD.org
Wed Oct 12 03:00:44 UTC 2016
Author: gonzo
Date: Wed Oct 12 03:00:42 2016
New Revision: 307088
URL: https://svnweb.freebsd.org/changeset/base/307088
Log:
Add compatible strings used in upstream dts files
Modified:
head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c
head/sys/arm/broadcom/bcm2835/bcm2835_dma.c
head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c Wed Oct 12 02:58:27 2016 (r307087)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_bsc.c Wed Oct 12 03:00:42 2016 (r307088)
@@ -52,6 +52,12 @@ __FBSDID("$FreeBSD$");
#include "iicbus_if.h"
+static struct ofw_compat_data compat_data[] = {
+ {"broadcom,bcm2835-bsc", 1},
+ {"brcm,bcm2708-i2c", 1},
+ {NULL, 0}
+};
+
static void bcm_bsc_intr(void *);
static int bcm_bsc_detach(device_t);
@@ -214,7 +220,7 @@ bcm_bsc_probe(device_t dev)
if (!ofw_bus_status_okay(dev))
return (ENXIO);
- if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-bsc"))
+ if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
return (ENXIO);
device_set_desc(dev, "BCM2708/2835 BSC controller");
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_dma.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_dma.c Wed Oct 12 02:58:27 2016 (r307087)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_dma.c Wed Oct 12 03:00:42 2016 (r307088)
@@ -152,6 +152,12 @@ struct bcm_dma_softc {
static struct bcm_dma_softc *bcm_dma_sc = NULL;
static uint32_t bcm_dma_channel_mask;
+static struct ofw_compat_data compat_data[] = {
+ {"broadcom,bcm2835-dma", 1},
+ {"brcm,bcm2835-dma", 1},
+ {NULL, 0}
+};
+
static void
bcm_dmamap_cb(void *arg, bus_dma_segment_t *segs,
int nseg, int err)
@@ -656,7 +662,7 @@ bcm_dma_probe(device_t dev)
if (!ofw_bus_status_okay(dev))
return (ENXIO);
- if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-dma"))
+ if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
return (ENXIO);
device_set_desc(dev, "BCM2835 DMA Controller");
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Wed Oct 12 02:58:27 2016 (r307087)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Wed Oct 12 03:00:42 2016 (r307088)
@@ -71,6 +71,12 @@ __FBSDID("$FreeBSD$");
static int bcm2835_sdhci_hs = 1;
static int bcm2835_sdhci_pio_mode = 0;
+static struct ofw_compat_data compat_data[] = {
+ {"broadcom,bcm2835-sdhci", 1},
+ {"brcm,bcm2835-mmc", 1},
+ {NULL, 0}
+};
+
TUNABLE_INT("hw.bcm2835.sdhci.hs", &bcm2835_sdhci_hs);
TUNABLE_INT("hw.bcm2835.sdhci.pio_mode", &bcm2835_sdhci_pio_mode);
@@ -126,10 +132,11 @@ bcm_sdhci_probe(device_t dev)
if (!ofw_bus_status_okay(dev))
return (ENXIO);
- if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-sdhci"))
+ if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
return (ENXIO);
device_set_desc(dev, "Broadcom 2708 SDHCI controller");
+
return (BUS_PROBE_DEFAULT);
}
Modified: head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_spi.c Wed Oct 12 02:58:27 2016 (r307087)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_spi.c Wed Oct 12 03:00:42 2016 (r307088)
@@ -56,6 +56,12 @@ __FBSDID("$FreeBSD$");
#include "spibus_if.h"
+static struct ofw_compat_data compat_data[] = {
+ {"broadcom,bcm2835-spi", 1},
+ {"brcm,bcm2835-spi", 1},
+ {NULL, 0}
+};
+
static void bcm_spi_intr(void *);
#ifdef BCM_SPI_DEBUG
@@ -231,7 +237,7 @@ bcm_spi_probe(device_t dev)
if (!ofw_bus_status_okay(dev))
return (ENXIO);
- if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-spi"))
+ if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
return (ENXIO);
device_set_desc(dev, "BCM2708/2835 SPI controller");
More information about the svn-src-head
mailing list