Page MenuHomeFreeBSD

D12360.id33080.diff
No OneTemporary

D12360.id33080.diff

Index: sys/arm/broadcom/bcm2835/bcm2835_machdep.c
===================================================================
--- sys/arm/broadcom/bcm2835/bcm2835_machdep.c
+++ sys/arm/broadcom/bcm2835/bcm2835_machdep.c
@@ -133,7 +133,8 @@
PLATFORMMETHOD_END,
};
-FDT_PLATFORM_DEF(bcm2835, "bcm2835", 0, "raspberrypi,model-b", 100);
+FDT_PLATFORM_DEF2(bcm2835, bcm2835_legacy, "bcm2835 (legacy)", 0, "raspberrypi,model-b", 100);
+FDT_PLATFORM_DEF2(bcm2835, bcm2835, "bcm2835", 0, "brcm,bcm2835", 100);
#endif
#ifdef SOC_BCM2836
@@ -149,5 +150,6 @@
PLATFORMMETHOD_END,
};
-FDT_PLATFORM_DEF(bcm2836, "bcm2836", 0, "brcm,bcm2709", 100);
+FDT_PLATFORM_DEF2(bcm2836, bcm2836_legacy, "bcm2836 (legacy)", 0, "brcm,bcm2709", 100);
+FDT_PLATFORM_DEF2(bcm2836, bcm2836, "bcm2836", 0, "brcm,bcm2836", 100);
#endif
Index: sys/arm/broadcom/bcm2835/bcm2835_rng.c
===================================================================
--- sys/arm/broadcom/bcm2835/bcm2835_rng.c
+++ sys/arm/broadcom/bcm2835/bcm2835_rng.c
@@ -109,6 +109,12 @@
long sc_underrun;
};
+static struct ofw_compat_data compat_data[] = {
+ {"broadcom,bcm2835-rng", 1},
+ {"brcm,bcm2835-rng", 1},
+ {NULL, 0}
+};
+
static __inline void
bcm2835_rng_stat_inc_underrun(struct bcm2835_rng_softc *sc)
{
@@ -364,7 +370,7 @@
if (!ofw_bus_status_okay(dev))
return (ENXIO);
- if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-rng"))
+ if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
return (ENXIO);
device_set_desc(dev, "Broadcom BCM2835 RNG");
Index: sys/boot/fdt/dts/arm/rpi.dts
===================================================================
--- sys/boot/fdt/dts/arm/rpi.dts
+++ sys/boot/fdt/dts/arm/rpi.dts
@@ -30,8 +30,7 @@
/ {
model = "Raspberry Pi (BCM2835)";
- compatible = "raspberrypi,model-a", "raspberrypi,model-b",
- "broadcom,bcm2835-vc", "broadcom,bcm2708-vc";
+ compatible = "brcm,bcm2835";
memreserve = <0x08000000 0x08000000>; /* Set by VideoCore */
Index: sys/boot/fdt/dts/arm/rpi2.dts
===================================================================
--- sys/boot/fdt/dts/arm/rpi2.dts
+++ sys/boot/fdt/dts/arm/rpi2.dts
@@ -30,7 +30,7 @@
/ {
model = "Raspberry Pi 2 Model B";
- compatible = "brcm,bcm2709";
+ compatible = "brcm,bcm2836";
memreserve = <0x08000000 0x08000000>; /* Set by VideoCore */
Index: sys/dev/usb/net/if_smsc.c
===================================================================
--- sys/dev/usb/net/if_smsc.c
+++ sys/dev/usb/net/if_smsc.c
@@ -1568,8 +1568,9 @@
/* Traverse through entire tree to find usb ethernet nodes. */
for (node = OF_child(start); node != 0; node = OF_peer(node)) {
- if (ofw_bus_node_is_compatible(node, "net,ethernet") &&
- ofw_bus_node_is_compatible(node, "usb,device"))
+ if ((ofw_bus_node_is_compatible(node, "net,ethernet") &&
+ ofw_bus_node_is_compatible(node, "usb,device")) ||
+ ofw_bus_node_is_compatible(node, "usb424,ec00"))
return (node);
child = smsc_fdt_find_eth_node(node);
if (child != -1)

File Metadata

Mime Type
text/plain
Expires
Thu, Oct 23, 1:59 AM (3 h, 25 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24078059
Default Alt Text
D12360.id33080.diff (2 KB)

Event Timeline