lkml.org 
[lkml]   [2016]   [Feb]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 1/2] ARM: bcm2835: dt: Add the ethernet to the device trees
Date
The hub and the ethernet in its port 1 are hardwired on the board.

Compared to the adapters that can be plugged into the USB ports, this
one has no serial EEPROM to store its MAC. Nevertheless, the Raspberry Pi
has the MAC address for this adapter in its ROM, accessible from its
firmware.

U-Boot can read out the address and set the local-mac-address property of the
node with "ethernet" alias. Let's add the node so that U-Boot can do its
business.

Model B rev2 and Model B+ entries were verified by me, the hierarchy and
pid/vid pair for the Version 2 was provided by Olivier Blin. Original
Model B is a blind short, though very likely correct.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
Changes since v1:
- s/@01/@1/ for ethernet and the hub
- Corrected the vid/pid pairs for hub and ethernet
- Added Model B rev2 and version 2 board changes
- Fixed a missing semicolon typo

arch/arm/boot/dts/bcm2835-rpi-b-plus.dts | 18 ++++++++++++++++++
arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts | 18 ++++++++++++++++++
arch/arm/boot/dts/bcm2835-rpi-b.dts | 18 ++++++++++++++++++
arch/arm/boot/dts/bcm2836-rpi-2-b.dts | 18 ++++++++++++++++++
arch/arm/boot/dts/bcm283x.dtsi | 4 +++-
5 files changed, 75 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
index ef54050..983353f 100644
--- a/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
+++ b/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
@@ -6,6 +6,10 @@
compatible = "raspberrypi,model-b-plus", "brcm,bcm2835";
model = "Raspberry Pi Model B+";

+ aliases {
+ ethernet = &ethernet;
+ };
+
leds {
act {
gpios = <&gpio 47 0>;
@@ -29,3 +33,17 @@
brcm,function = <BCM2835_FSEL_ALT0>;
};
};
+
+&usb {
+ usb1@1 {
+ compatible = "usb0424,9514";
+ reg = <01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet: usbether@1 {
+ compatible = "usb0424,ec00";
+ reg = <01>;
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts b/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
index 86f1f2f..4b695a0 100644
--- a/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
+++ b/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
@@ -6,6 +6,10 @@
compatible = "raspberrypi,model-b-rev2", "brcm,bcm2835";
model = "Raspberry Pi Model B rev2";

+ aliases {
+ ethernet = &ethernet;
+ };
+
leds {
act {
gpios = <&gpio 16 1>;
@@ -22,3 +26,17 @@
brcm,function = <BCM2835_FSEL_ALT2>;
};
};
+
+&usb {
+ usb1@1 {
+ compatible = "usb0424,9512";
+ reg = <01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet: usbether@1 {
+ compatible = "usb0424,ec00";
+ reg = <01>;
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/bcm2835-rpi-b.dts b/arch/arm/boot/dts/bcm2835-rpi-b.dts
index 4859e9d..749648e 100644
--- a/arch/arm/boot/dts/bcm2835-rpi-b.dts
+++ b/arch/arm/boot/dts/bcm2835-rpi-b.dts
@@ -6,6 +6,10 @@
compatible = "raspberrypi,model-b", "brcm,bcm2835";
model = "Raspberry Pi Model B";

+ aliases {
+ ethernet = &ethernet;
+ };
+
leds {
act {
gpios = <&gpio 16 1>;
@@ -16,3 +20,17 @@
&gpio {
pinctrl-0 = <&gpioout &alt0 &alt3>;
};
+
+&usb {
+ usb1@1 {
+ compatible = "usb0424,9512";
+ reg = <01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet: usbether@1 {
+ compatible = "usb0424,ec00";
+ reg = <01>;
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
index ff94666..2bc1a96 100644
--- a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
+++ b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
@@ -10,6 +10,10 @@
reg = <0 0x40000000>;
};

+ aliases {
+ ethernet = &ethernet;
+ };
+
leds {
act {
gpios = <&gpio 47 0>;
@@ -33,3 +37,17 @@
brcm,function = <BCM2835_FSEL_ALT0>;
};
};
+
+&usb {
+ usb1@1 {
+ compatible = "usb0424,9514";
+ reg = <01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet: usbether@1 {
+ compatible = "usb0424,ec00";
+ reg = <01>;
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
index 971e741..bc5fde1 100644
--- a/arch/arm/boot/dts/bcm283x.dtsi
+++ b/arch/arm/boot/dts/bcm283x.dtsi
@@ -187,10 +187,12 @@
status = "disabled";
};

- usb@7e980000 {
+ usb: usb@7e980000 {
compatible = "brcm,bcm2835-usb";
reg = <0x7e980000 0x10000>;
interrupts = <1 9>;
+ #address-cells = <1>;
+ #size-cells = <0>;
};
};

--
2.5.0
\
 
 \ /
  Last update: 2016-02-04 08:41    [W:1.667 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site