openwrt/target/linux/bcm27xx/patches-4.19/950-0604-overlays-Rename-pi3-overlays-to-be-less-model-specif.patch
Adrian Schmutzler 7d7aa2fd92 brcm2708: rename target to bcm27xx
This change makes the names of Broadcom targets consistent by using
the common notation based on SoC/CPU ID (which is used internally
anyway), bcmXXXX instead of brcmXXXX.
This is even used for target TITLE in make menuconfig already,
only the short target name used brcm so far.

Despite, since subtargets range from bcm2708 to bcm2711, it seems
appropriate to use bcm27xx instead of bcm2708 (again, as already done
for BOARDNAME).

This also renames the packages brcm2708-userland and brcm2708-gpu-fw.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>
2020-02-14 14:10:51 +01:00

588 lines
16 KiB
Diff

From c46811a3b0e0fb76015ac956172e40bce4e6d9b3 Mon Sep 17 00:00:00 2001
From: Phil Elwell <pelwell@users.noreply.github.com>
Date: Fri, 5 Jul 2019 14:49:22 +0100
Subject: [PATCH] overlays: Rename pi3- overlays to be less
model-specific (#3052)
Rename the various pi3- overlays to be more generic, listing
the devices they apply to in the README. The original names are
retained for backwards compatibility as files that just include
the new versions - the README marks them as being deprecated.
See: https://github.com/raspberrypi/firmware/issues/1174
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
---
arch/arm/boot/dts/overlays/Makefile | 4 +
arch/arm/boot/dts/overlays/README | 97 ++++++++++++-------
.../arm/boot/dts/overlays/act-led-overlay.dts | 27 ++++++
.../boot/dts/overlays/disable-bt-overlay.dts | 55 +++++++++++
.../dts/overlays/disable-wifi-overlay.dts | 20 ++++
.../boot/dts/overlays/miniuart-bt-overlay.dts | 74 ++++++++++++++
.../boot/dts/overlays/pi3-act-led-overlay.dts | 28 +-----
.../dts/overlays/pi3-disable-bt-overlay.dts | 56 +----------
.../dts/overlays/pi3-disable-wifi-overlay.dts | 21 +---
.../dts/overlays/pi3-miniuart-bt-overlay.dts | 75 +-------------
10 files changed, 246 insertions(+), 211 deletions(-)
create mode 100644 arch/arm/boot/dts/overlays/act-led-overlay.dts
create mode 100644 arch/arm/boot/dts/overlays/disable-bt-overlay.dts
create mode 100644 arch/arm/boot/dts/overlays/disable-wifi-overlay.dts
create mode 100644 arch/arm/boot/dts/overlays/miniuart-bt-overlay.dts
--- a/arch/arm/boot/dts/overlays/Makefile
+++ b/arch/arm/boot/dts/overlays/Makefile
@@ -1,6 +1,7 @@
# Overlays for the Raspberry Pi platform
dtbo-$(CONFIG_ARCH_BCM2835) += \
+ act-led.dtbo \
adau1977-adc.dtbo \
adau7002-simple.dtbo \
ads1015.dtbo \
@@ -26,6 +27,8 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
dht11.dtbo \
dionaudio-loco.dtbo \
dionaudio-loco-v2.dtbo \
+ disable-bt.dtbo \
+ disable-wifi.dtbo \
dpi18.dtbo \
dpi24.dtbo \
draws.dtbo \
@@ -91,6 +94,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
media-center.dtbo \
midi-uart0.dtbo \
midi-uart1.dtbo \
+ miniuart-bt.dtbo \
mmc.dtbo \
mpu6050.dtbo \
mz61581.dtbo \
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -180,14 +180,16 @@ Params:
act_led_activelow Set to "on" to invert the sense of the LED
(default "off")
- N.B. For Pi3 see pi3-act-led overlay.
+ N.B. For Pi 3B, 3B+, 3A+ and 4B, use the act-led
+ overlay.
act_led_gpio Set which GPIO to use for the activity LED
(in case you want to connect it to an external
device)
(default "16" on a non-Plus board, "47" on a
Plus or Pi 2)
- N.B. For Pi3 see pi3-act-led overlay.
+ N.B. For Pi 3B, 3B+, 3A+ and 4B, use the act-led
+ overlay.
pwr_led_trigger
pwr_led_activelow
@@ -205,6 +207,23 @@ Params:
and the other i2c baudrate parameters.
+Name: act-led
+Info: Pi 3B, 3B+, 3A+ and 4B use a GPIO expander to drive the LEDs which can
+ only be accessed from the VPU. There is a special driver for this with a
+ separate DT node, which has the unfortunate consequence of breaking the
+ act_led_gpio and act_led_activelow dtparams.
+ This overlay changes the GPIO controller back to the standard one and
+ restores the dtparams.
+Load: dtoverlay=act-led,<param>=<val>
+Params: activelow Set to "on" to invert the sense of the LED
+ (default "off")
+
+ gpio Set which GPIO to use for the activity LED
+ (in case you want to connect it to an external
+ device)
+ REQUIRED
+
+
Name: adau1977-adc
Info: Overlay for activation of ADAU1977 ADC codec over I2C for control
and I2S for data.
@@ -509,6 +528,21 @@ Params: 24db_digital_gain Allow ga
that does not result in clipping/distortion!)
+Name: disable-bt
+Info: Disable onboard Bluetooth on Pi 3B, 3B+, 3A+, 4B and Zero W, restoring
+ UART0/ttyAMA0 over GPIOs 14 & 15.
+ N.B. To disable the systemd service that initialises the modem so it
+ doesn't use the UART, use 'sudo systemctl disable hciuart'.
+Load: dtoverlay=disable-bt
+Params: <None>
+
+
+Name: disable-wifi
+Info: Disable onboard WiFi on Pi 3B, 3B+, 3A+, 4B and Zero W.
+Load: dtoverlay=disable-wifi
+Params: <None>
+
+
Name: dpi18
Info: Overlay for a generic 18-bit DPI display
This uses GPIOs 0-21 (so no I2C, uart etc.), and activates the output
@@ -1447,6 +1481,20 @@ Load: dtoverlay=midi-uart1
Params: <None>
+Name: miniuart-bt
+Info: Switch the onboard Bluetooth function on Pi 3B, 3B+, 3A+, 4B and Zero W
+ to use the mini-UART (ttyS0) and restore UART0/ttyAMA0 over GPIOs 14 &
+ 15. Note that this may reduce the maximum usable baudrate.
+ N.B. It is also necessary to edit /lib/systemd/system/hciuart.service
+ and replace ttyAMA0 with ttyS0, unless using Raspbian or another
+ distribution with udev rules that create /dev/serial0 and /dev/serial1,
+ in which case use /dev/serial1 instead because it will always be
+ correct. Furthermore, you must also set core_freq and core_freq_min to
+ the same value in config.txt or the miniuart will not work.
+Load: dtoverlay=miniuart-bt
+Params: <None>
+
+
Name: mmc
Info: Selects the bcm2835-mmc SD/MMC driver, optionally with overclock
Load: dtoverlay=mmc,<param>=<val>
@@ -1509,48 +1557,27 @@ Params: panel Display
Name: pi3-act-led
-Info: Pi3 uses a GPIO expander to drive the LEDs which can only be accessed
- from the VPU. There is a special driver for this with a separate DT
- node, which has the unfortunate consequence of breaking the
- act_led_gpio and act_led_activelow dtparams.
- This overlay changes the GPIO controller back to the standard one and
- restores the dtparams.
-Load: dtoverlay=pi3-act-led,<param>=<val>
-Params: activelow Set to "on" to invert the sense of the LED
- (default "off")
-
- gpio Set which GPIO to use for the activity LED
- (in case you want to connect it to an external
- device)
- REQUIRED
+Info: This overlay has been renamed act-led, keeping pi3-act-led as an alias
+ for backwards compatibility.
+Load: <Deprecated>
Name: pi3-disable-bt
-Info: Disable Pi3 Bluetooth and restore UART0/ttyAMA0 over GPIOs 14 & 15
- N.B. To disable the systemd service that initialises the modem so it
- doesn't use the UART, use 'sudo systemctl disable hciuart'.
-Load: dtoverlay=pi3-disable-bt
-Params: <None>
+Info: This overlay has been renamed disable-bt, keeping pi3-disable-bt as an
+ alias for backwards compatibility.
+Load: <Deprecated>
Name: pi3-disable-wifi
-Info: Disable Pi3 onboard WiFi
-Load: dtoverlay=pi3-disable-wifi
-Params: <None>
+Info: This overlay has been renamed disable-wifi, keeping pi3-disable-wifi as
+ an alias for backwards compatibility.
+Load: <Deprecated>
Name: pi3-miniuart-bt
-Info: Switch Pi3 Bluetooth function to use the mini-UART (ttyS0) and restore
- UART0/ttyAMA0 over GPIOs 14 & 15. Note that this may reduce the maximum
- usable baudrate.
- N.B. It is also necessary to edit /lib/systemd/system/hciuart.service
- and replace ttyAMA0 with ttyS0, unless you have a system with udev rules
- that create /dev/serial0 and /dev/serial1, in which case use
- /dev/serial1 instead because it will always be correct. Furthermore,
- you must also set core_freq=250 in config.txt or the miniuart will not
- work.
-Load: dtoverlay=pi3-miniuart-bt
-Params: <None>
+Info: This overlay has been renamed miniuart-bt, keeping pi3-miniuart-bt as
+ an alias for backwards compatibility.
+Load: <Deprecated>
Name: pibell
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/act-led-overlay.dts
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
+/* Pi3 uses a GPIO expander to drive the LEDs which can only be accessed
+ from the VPU. There is a special driver for this with a separate DT node,
+ which has the unfortunate consequence of breaking the act_led_gpio and
+ act_led_activelow dtparams.
+
+ This overlay changes the GPIO controller back to the standard one and
+ restores the dtparams.
+*/
+
+/{
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&act_led>;
+ frag0: __overlay__ {
+ gpios = <&gpio 0 0>;
+ };
+ };
+
+ __overrides__ {
+ gpio = <&frag0>,"gpios:4";
+ activelow = <&frag0>,"gpios:8";
+ };
+};
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/disable-bt-overlay.dts
@@ -0,0 +1,55 @@
+/dts-v1/;
+/plugin/;
+
+/* Disable Bluetooth and restore UART0/ttyAMA0 over GPIOs 14 & 15.
+ To disable the systemd service that initialises the modem so it doesn't use
+ the UART:
+
+ sudo systemctl disable hciuart
+*/
+
+/{
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&uart1>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+
+ fragment@1 {
+ target = <&uart0>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins>;
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&uart0_pins>;
+ __overlay__ {
+ brcm,pins;
+ brcm,function;
+ brcm,pull;
+ };
+ };
+
+ fragment@3 {
+ target = <&bt_pins>;
+ __overlay__ {
+ brcm,pins;
+ brcm,function;
+ brcm,pull;
+ };
+ };
+
+ fragment@4 {
+ target-path = "/aliases";
+ __overlay__ {
+ serial0 = "/soc/serial@7e201000";
+ serial1 = "/soc/serial@7e215040";
+ };
+ };
+};
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/disable-wifi-overlay.dts
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/{
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&mmc>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+
+ fragment@1 {
+ target = <&mmcnr>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+};
--- /dev/null
+++ b/arch/arm/boot/dts/overlays/miniuart-bt-overlay.dts
@@ -0,0 +1,74 @@
+/dts-v1/;
+/plugin/;
+
+/* Switch Pi3 Bluetooth function to use the mini-UART (ttyS0) and restore
+ UART0/ttyAMA0 over GPIOs 14 & 15. Note that this may reduce the maximum
+ usable baudrate.
+
+ It is also necessary to edit /lib/systemd/system/hciuart.service and
+ replace ttyAMA0 with ttyS0, unless you have a system with udev rules
+ that create /dev/serial0 and /dev/serial1, in which case use /dev/serial1
+ instead because it will always be correct.
+
+ If cmdline.txt uses the alias serial0 to refer to the user-accessable port
+ then the firmware will replace with the appropriate port whether or not
+ this overlay is used.
+*/
+
+/{
+ compatible = "brcm,bcm2835";
+
+ fragment@0 {
+ target = <&uart0>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins>;
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&uart1>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart1_pins &bt_pins &fake_bt_cts>;
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&uart0_pins>;
+ __overlay__ {
+ brcm,pins;
+ brcm,function;
+ brcm,pull;
+ };
+ };
+
+ fragment@3 {
+ target = <&uart1_pins>;
+ __overlay__ {
+ brcm,pins = <32 33>;
+ brcm,function = <2>; /* alt5=UART1 */
+ brcm,pull = <0 2>;
+ };
+ };
+
+ fragment@4 {
+ target = <&gpio>;
+ __overlay__ {
+ fake_bt_cts: fake_bt_cts {
+ brcm,pins = <31>;
+ brcm,function = <1>; /* output */
+ };
+ };
+ };
+
+ fragment@5 {
+ target-path = "/aliases";
+ __overlay__ {
+ serial0 = "/soc/serial@7e201000";
+ serial1 = "/soc/serial@7e215040";
+ };
+ };
+};
--- a/arch/arm/boot/dts/overlays/pi3-act-led-overlay.dts
+++ b/arch/arm/boot/dts/overlays/pi3-act-led-overlay.dts
@@ -1,27 +1 @@
-/dts-v1/;
-/plugin/;
-
-/* Pi3 uses a GPIO expander to drive the LEDs which can only be accessed
- from the VPU. There is a special driver for this with a separate DT node,
- which has the unfortunate consequence of breaking the act_led_gpio and
- act_led_activelow dtparams.
-
- This overlay changes the GPIO controller back to the standard one and
- restores the dtparams.
-*/
-
-/{
- compatible = "brcm,bcm2835";
-
- fragment@0 {
- target = <&act_led>;
- frag0: __overlay__ {
- gpios = <&gpio 0 0>;
- };
- };
-
- __overrides__ {
- gpio = <&frag0>,"gpios:4";
- activelow = <&frag0>,"gpios:8";
- };
-};
+#include "act-led-overlay.dts"
--- a/arch/arm/boot/dts/overlays/pi3-disable-bt-overlay.dts
+++ b/arch/arm/boot/dts/overlays/pi3-disable-bt-overlay.dts
@@ -1,55 +1 @@
-/dts-v1/;
-/plugin/;
-
-/* Disable Bluetooth and restore UART0/ttyAMA0 over GPIOs 14 & 15.
- To disable the systemd service that initialises the modem so it doesn't use
- the UART:
-
- sudo systemctl disable hciuart
-*/
-
-/{
- compatible = "brcm,bcm2835";
-
- fragment@0 {
- target = <&uart1>;
- __overlay__ {
- status = "disabled";
- };
- };
-
- fragment@1 {
- target = <&uart0>;
- __overlay__ {
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_pins>;
- status = "okay";
- };
- };
-
- fragment@2 {
- target = <&uart0_pins>;
- __overlay__ {
- brcm,pins;
- brcm,function;
- brcm,pull;
- };
- };
-
- fragment@3 {
- target = <&bt_pins>;
- __overlay__ {
- brcm,pins;
- brcm,function;
- brcm,pull;
- };
- };
-
- fragment@4 {
- target-path = "/aliases";
- __overlay__ {
- serial0 = "/soc/serial@7e201000";
- serial1 = "/soc/serial@7e215040";
- };
- };
-};
+#include "disable-bt-overlay.dts"
--- a/arch/arm/boot/dts/overlays/pi3-disable-wifi-overlay.dts
+++ b/arch/arm/boot/dts/overlays/pi3-disable-wifi-overlay.dts
@@ -1,20 +1 @@
-/dts-v1/;
-/plugin/;
-
-/{
- compatible = "brcm,bcm2835";
-
- fragment@0 {
- target = <&mmc>;
- __overlay__ {
- status = "disabled";
- };
- };
-
- fragment@1 {
- target = <&mmcnr>;
- __overlay__ {
- status = "disabled";
- };
- };
-};
+#include "disable-wifi-overlay.dts"
--- a/arch/arm/boot/dts/overlays/pi3-miniuart-bt-overlay.dts
+++ b/arch/arm/boot/dts/overlays/pi3-miniuart-bt-overlay.dts
@@ -1,74 +1 @@
-/dts-v1/;
-/plugin/;
-
-/* Switch Pi3 Bluetooth function to use the mini-UART (ttyS0) and restore
- UART0/ttyAMA0 over GPIOs 14 & 15. Note that this may reduce the maximum
- usable baudrate.
-
- It is also necessary to edit /lib/systemd/system/hciuart.service and
- replace ttyAMA0 with ttyS0, unless you have a system with udev rules
- that create /dev/serial0 and /dev/serial1, in which case use /dev/serial1
- instead because it will always be correct.
-
- If cmdline.txt uses the alias serial0 to refer to the user-accessable port
- then the firmware will replace with the appropriate port whether or not
- this overlay is used.
-*/
-
-/{
- compatible = "brcm,bcm2835";
-
- fragment@0 {
- target = <&uart0>;
- __overlay__ {
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_pins>;
- status = "okay";
- };
- };
-
- fragment@1 {
- target = <&uart1>;
- __overlay__ {
- pinctrl-names = "default";
- pinctrl-0 = <&uart1_pins &bt_pins &fake_bt_cts>;
- status = "okay";
- };
- };
-
- fragment@2 {
- target = <&uart0_pins>;
- __overlay__ {
- brcm,pins;
- brcm,function;
- brcm,pull;
- };
- };
-
- fragment@3 {
- target = <&uart1_pins>;
- __overlay__ {
- brcm,pins = <32 33>;
- brcm,function = <2>; /* alt5=UART1 */
- brcm,pull = <0 2>;
- };
- };
-
- fragment@4 {
- target = <&gpio>;
- __overlay__ {
- fake_bt_cts: fake_bt_cts {
- brcm,pins = <31>;
- brcm,function = <1>; /* output */
- };
- };
- };
-
- fragment@5 {
- target-path = "/aliases";
- __overlay__ {
- serial0 = "/soc/serial@7e201000";
- serial1 = "/soc/serial@7e215040";
- };
- };
-};
+#include "miniuart-bt-overlay.dts"