Merge ~ondrak/ubuntu/+source/linux/+git/xenial:adding-pi3bp-support into ~ubuntu-kernel/ubuntu/+source/linux/+git/xenial:raspi2

Proposed by Ondrej Kubik on 2018-05-23
Status: Needs review
Proposed branch: ~ondrak/ubuntu/+source/linux/+git/xenial:adding-pi3bp-support
Merge into: ~ubuntu-kernel/ubuntu/+source/linux/+git/xenial:raspi2
Diff against target: 314 lines (+262/-0)
5 files modified
arch/arm/boot/dts/Makefile (+1/-0)
arch/arm/boot/dts/bcm2710-rpi-3-b-plus.dts (+215/-0)
arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi (+36/-0)
arch/arm/boot/dts/overlays/README (+8/-0)
snapcraft.yaml (+2/-0)
Reviewer Review Type Date Requested Status
Paolo Pisati 2018-05-23 Disapprove on 2018-05-24
Review via email: mp+346764@code.launchpad.net

Commit message

Adding Raspberry 3 B plus support
- adding dts files for Pi 3 B plus
- updating config to build in Pi3 B plus LAN driver and serial dev bus

To post a comment you must log in.
Paolo Pisati (p-pisati) wrote :

I don't have write access to the kernel repository, only the stable team has it: resend it to the ubuntu kernel ml for review.

Plus, it's missing an LP bug and the buglink.

And the config changes, split it into a separate commit and send it against the ubuntu config so we don't have two kernels with two different configs (the ubuntu kernel and the kernel generated by this snapcraft).

review: Disapprove

Unmerged commits

acb9087... by Ondrej Kubik on 2018-04-25

UBUNTU: SAUCE: snapcraft: modifying default config set

Updating default config set to include LAN driver to support Pi 3 B+

Signed-off-by: Ondrej Kubik <email address hidden>

265c687... by Phil Elwell <email address hidden> on 2017-07-21

BCM270X_DT: Add Pi 3 b plus dts files

Adding dts file for Raspberry Pi3 B plus

Signed-off-by: Phil Elwell <email address hidden>
Signed-off-by: Ondrej Kubik <email address hidden>

bb8ed73... by Stefan Bader on 2018-05-09

UBUNTU: Ubuntu-raspi2-4.4.0-1090.98

Signed-off-by: Stefan Bader <email address hidden>

d4a1e57... by Stefan Bader on 2018-05-09

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Stefan Bader <email address hidden>

b067d93... by Stefan Bader on 2018-05-03

UBUNTU: Ubuntu-raspi2-4.4.0-1089.97

c3ba70a... by Stefan Bader on 2018-04-25

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Stefan Bader <email address hidden>

383cc79... by Khaled El Mously on 2018-04-05

UBUNTU: Ubuntu-raspi2-4.4.0-1087.95

Signed-off-by: Khalid Elmously <email address hidden>

67fd96b... by Khaled El Mously on 2018-04-05

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Khalid Elmously <email address hidden>

407d3b1... by Khaled El Mously on 2018-03-14

UBUNTU: Ubuntu-raspi2-4.4.0-1086.94

Signed-off-by: Khalid Elmously <email address hidden>

d101c1c... by Khaled El Mously on 2018-03-14

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Khalid Elmously <email address hidden>

Update scan failed

At least one of the branches involved have failed to scan. You can manually schedule a rescan if required.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
2index bd963ef..f765350 100644
3--- a/arch/arm/boot/dts/Makefile
4+++ b/arch/arm/boot/dts/Makefile
5@@ -7,6 +7,7 @@ dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rpi-cm.dtb
6 dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-cm.dtb
7 dtb-$(CONFIG_ARCH_BCM2709) += bcm2709-rpi-2-b.dtb
8 dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b.dtb
9+dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b-plus.dtb
10 dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-cm3.dtb
11
12 # Raspberry Pi
13diff --git a/arch/arm/boot/dts/bcm2710-rpi-3-b-plus.dts b/arch/arm/boot/dts/bcm2710-rpi-3-b-plus.dts
14new file mode 100644
15index 0000000..ad5e821
16--- /dev/null
17+++ b/arch/arm/boot/dts/bcm2710-rpi-3-b-plus.dts
18@@ -0,0 +1,215 @@
19+/dts-v1/;
20+
21+#include "bcm2710.dtsi"
22+#include "bcm283x-rpi-lan7515.dtsi"
23+
24+/ {
25+ compatible = "brcm,bcm2710","brcm,bcm2709";
26+ model = "Raspberry Pi 3 Model B+";
27+};
28+
29+&gpio {
30+ sdhost_pins: sdhost_pins {
31+ brcm,pins = <48 49 50 51 52 53>;
32+ brcm,function = <4>; /* alt0 */
33+ };
34+
35+ spi0_pins: spi0_pins {
36+ brcm,pins = <9 10 11>;
37+ brcm,function = <4>; /* alt0 */
38+ };
39+
40+ spi0_cs_pins: spi0_cs_pins {
41+ brcm,pins = <8 7>;
42+ brcm,function = <1>; /* output */
43+ };
44+
45+ i2c0_pins: i2c0 {
46+ brcm,pins = <0 1>;
47+ brcm,function = <4>;
48+ };
49+
50+ i2c1_pins: i2c1 {
51+ brcm,pins = <2 3>;
52+ brcm,function = <4>;
53+ };
54+
55+ i2s_pins: i2s {
56+ brcm,pins = <18 19 20 21>;
57+ brcm,function = <4>; /* alt0 */
58+ };
59+
60+ sdio_pins: sdio_pins {
61+ brcm,pins = <34 35 36 37 38 39>;
62+ brcm,function = <7>; // alt3 = SD1
63+ brcm,pull = <0 2 2 2 2 2>;
64+ };
65+
66+ bt_pins: bt_pins {
67+ brcm,pins = <43>;
68+ brcm,function = <4>; /* alt0:GPCLK2 */
69+ brcm,pull = <0>;
70+ };
71+
72+ uart0_pins: uart0_pins {
73+ brcm,pins = <32 33>;
74+ brcm,function = <7>; /* alt3=UART0 */
75+ brcm,pull = <0 2>;
76+ };
77+
78+ uart1_pins: uart1_pins {
79+ brcm,pins;
80+ brcm,function;
81+ brcm,pull;
82+ };
83+
84+ audio_pins: audio_pins {
85+ brcm,pins = <40 41>;
86+ brcm,function = <4>;
87+ };
88+};
89+
90+&sdhost {
91+ pinctrl-names = "default";
92+ pinctrl-0 = <&sdhost_pins>;
93+ bus-width = <4>;
94+ status = "okay";
95+};
96+
97+&mmc {
98+ pinctrl-names = "default";
99+ pinctrl-0 = <&sdio_pins>;
100+ non-removable;
101+ bus-width = <4>;
102+ status = "okay";
103+ brcm,overclock-50 = <0>;
104+};
105+
106+&soc {
107+ expgpio: expgpio {
108+ compatible = "brcm,bcm2835-expgpio";
109+ gpio-controller;
110+ #gpio-cells = <2>;
111+ firmware = <&firmware>;
112+ status = "okay";
113+ };
114+};
115+
116+&fb {
117+ status = "okay";
118+};
119+
120+&uart0 {
121+ pinctrl-names = "default";
122+ pinctrl-0 = <&uart0_pins &bt_pins>;
123+ status = "okay";
124+};
125+
126+&uart1 {
127+ pinctrl-names = "default";
128+ pinctrl-0 = <&uart1_pins>;
129+ status = "okay";
130+};
131+
132+&spi0 {
133+ pinctrl-names = "default";
134+ pinctrl-0 = <&spi0_pins &spi0_cs_pins>;
135+ cs-gpios = <&gpio 8 1>, <&gpio 7 1>;
136+
137+ spidev0: spidev@0{
138+ compatible = "spidev";
139+ reg = <0>; /* CE0 */
140+ #address-cells = <1>;
141+ #size-cells = <0>;
142+ spi-max-frequency = <500000>;
143+ };
144+
145+ spidev1: spidev@1{
146+ compatible = "spidev";
147+ reg = <1>; /* CE1 */
148+ #address-cells = <1>;
149+ #size-cells = <0>;
150+ spi-max-frequency = <500000>;
151+ };
152+};
153+
154+&i2c0 {
155+ pinctrl-names = "default";
156+ pinctrl-0 = <&i2c0_pins>;
157+ clock-frequency = <100000>;
158+};
159+
160+&i2c1 {
161+ pinctrl-names = "default";
162+ pinctrl-0 = <&i2c1_pins>;
163+ clock-frequency = <100000>;
164+};
165+
166+&i2c2 {
167+ clock-frequency = <100000>;
168+};
169+
170+&i2s {
171+ #sound-dai-cells = <0>;
172+ pinctrl-names = "default";
173+ pinctrl-0 = <&i2s_pins>;
174+};
175+
176+&random {
177+ status = "okay";
178+};
179+
180+&leds {
181+ act_led: act {
182+ label = "led0";
183+ linux,default-trigger = "mmc0";
184+ gpios = <&gpio 29 0>;
185+ };
186+
187+ pwr_led: pwr {
188+ label = "led1";
189+ linux,default-trigger = "default-on";
190+ gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
191+ };
192+};
193+
194+
195+&audio {
196+ pinctrl-names = "default";
197+ pinctrl-0 = <&audio_pins>;
198+};
199+
200+/ {
201+ chosen {
202+ bootargs = "8250.nr_uarts=1";
203+ };
204+};
205+
206+/ {
207+ __overrides__ {
208+ uart0 = <&uart0>,"status";
209+ uart0_clkrate = <&clk_uart0>,"clock-frequency:0";
210+ uart1 = <&uart1>,"status";
211+ i2s = <&i2s>,"status";
212+ spi = <&spi0>,"status";
213+ i2c0 = <&i2c0>,"status";
214+ i2c1 = <&i2c1>,"status";
215+ i2c2_iknowwhatimdoing = <&i2c2>,"status";
216+ i2c0_baudrate = <&i2c0>,"clock-frequency:0";
217+ i2c1_baudrate = <&i2c1>,"clock-frequency:0";
218+ i2c2_baudrate = <&i2c2>,"clock-frequency:0";
219+ core_freq = <&clk_core>,"clock-frequency:0";
220+
221+ act_led_gpio = <&act_led>,"gpios:4";
222+ act_led_activelow = <&act_led>,"gpios:8";
223+ act_led_trigger = <&act_led>,"linux,default-trigger";
224+
225+ audio = <&audio>,"status";
226+ watchdog = <&watchdog>,"status";
227+ random = <&random>,"status";
228+ sd_overclock = <&sdhost>,"brcm,overclock-50:0";
229+ sd_force_pio = <&sdhost>,"brcm,force-pio?";
230+ sd_pio_limit = <&sdhost>,"brcm,pio-limit:0";
231+ sd_debug = <&sdhost>,"brcm,debug";
232+ };
233+};
234diff --git a/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi b/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi
235new file mode 100644
236index 0000000..85f7334
237--- /dev/null
238+++ b/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi
239@@ -0,0 +1,36 @@
240+/ {
241+ aliases {
242+ ethernet = &ethernet;
243+ };
244+};
245+
246+&usb {
247+ usb1@1 {
248+ compatible = "usb424,2514";
249+ reg = <1>;
250+ #address-cells = <1>;
251+ #size-cells = <0>;
252+
253+ usb1_1@1 {
254+ compatible = "usb424,2514";
255+ reg = <1>;
256+ #address-cells = <1>;
257+ #size-cells = <0>;
258+
259+ ethernet: usbether@1 {
260+ compatible = "usb424,7800";
261+ reg = <1>;
262+ microchip,eee-enabled;
263+ microchip,tx-lpi-timer = <600>; /* non-aggressive*/
264+ };
265+ };
266+ };
267+};
268+
269+
270+/ {
271+ __overrides__ {
272+ eee = <&ethernet>,"microchip,eee-enabled?";
273+ tx_lpi_timer = <&ethernet>,"microchip,tx-lpi-timer:0";
274+ };
275+};
276diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
277index 72601f8..8d323b7 100644
278--- a/arch/arm/boot/dts/overlays/README
279+++ b/arch/arm/boot/dts/overlays/README
280@@ -86,6 +86,10 @@ Params:
281 audio Set to "on" to enable the onboard ALSA audio
282 interface (default "off")
283
284+ eee Enable Energy Efficient Ethernet support for
285+ compatible devices (default "on"). See also
286+ "tx_lpi_timer".
287+
288 i2c_arm Set to "on" to enable the ARM's i2c interface
289 (default "off")
290
291@@ -122,6 +126,10 @@ Params:
292
293 sd_debug Enable debug output from SD driver (default off)
294
295+ tx_lpi_timer Set the delay in microseconds between going idle
296+ and entering the low power state (default 600).
297+ Requires EEE to be enabled - see "eee".
298+
299 uart0 Set to "off" to disable uart0 (default "on")
300
301 uart1 Set to "on" or "off" to enable or disable uart1
302diff --git a/snapcraft.yaml b/snapcraft.yaml
303index ab6142a..301e763 100644
304--- a/snapcraft.yaml
305+++ b/snapcraft.yaml
306@@ -17,6 +17,8 @@ parts:
307 kconfigflavour: raspi2
308 kconfigs:
309 - CONFIG_DEBUG_INFO=n
310+ - CONFIG_USB_LAN78XX=y
311+ - CONFIG_SERIAL_DEV_BUS=m
312 kernel-image-target: zImage
313 install: |
314 tar -C $SNAPCRAFT_PART_INSTALL/dtbs -f $SNAPCRAFT_PART_INSTALL/dtbs/overlays.tgz -czv overlays

Subscribers

People subscribed via source and target branches