summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Robinson <pbrobinson@gmail.com>2019-01-10 12:57:15 +0000
committerPeter Robinson <pbrobinson@gmail.com>2019-01-10 12:57:15 +0000
commit8c38f1d976f142c3ad36f4b3147935dd6e40aa5c (patch)
tree1949dc3193f9a1e3f149d93248846826496fd8bc
parentc50bbd2bed6259c7c9496f713636c830ca0ef84e (diff)
downloadkernel-8c38f1d976f142c3ad36f4b3147935dd6e40aa5c.tar.gz
kernel-8c38f1d976f142c3ad36f4b3147935dd6e40aa5c.tar.xz
kernel-8c38f1d976f142c3ad36f4b3147935dd6e40aa5c.zip
A few Raspberry Pi cleanups, add gpio line names
-rw-r--r--bcm2837-dts-add-Raspberry-Pi-3-A.patch2
-rw-r--r--bcm283x-Add-missing-GPIO-line-names.patch255
-rw-r--r--kernel.spec10
3 files changed, 262 insertions, 5 deletions
diff --git a/bcm2837-dts-add-Raspberry-Pi-3-A.patch b/bcm2837-dts-add-Raspberry-Pi-3-A.patch
index 38eb40b8c..705fca6cb 100644
--- a/bcm2837-dts-add-Raspberry-Pi-3-A.patch
+++ b/bcm2837-dts-add-Raspberry-Pi-3-A.patch
@@ -267,7 +267,7 @@ index 0000000..b2df7cf
+// SPDX-License-Identifier: GPL-2.0
+/dts-v1/;
+#include "bcm2837.dtsi"
-+#include "bcm2835-rpi.dtsi"
++#include "bcm2836-rpi.dtsi"
+#include "bcm283x-rpi-usb-host.dtsi"
+
+/ {
diff --git a/bcm283x-Add-missing-GPIO-line-names.patch b/bcm283x-Add-missing-GPIO-line-names.patch
new file mode 100644
index 000000000..e27082ad2
--- /dev/null
+++ b/bcm283x-Add-missing-GPIO-line-names.patch
@@ -0,0 +1,255 @@
+From 99909530ec9b6e9b1b3b756a05a83fa1c7d6d4bc Mon Sep 17 00:00:00 2001
+From: Stefan Wahren <stefan.wahren@i2se.com>
+Date: Tue, 1 Jan 2019 18:29:08 +0100
+Subject: [PATCH] ARM: dts: bcm283x: Add missing GPIO line names
+
+The GPIO sysfs is deprecated and disabled in the defconfig files.
+So in order to motivate the usage of the new GPIO character device API
+add the missing GPIO line names for Raspberry Pi 2 and 3.
+
+Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
+---
+ arch/arm/boot/dts/bcm2836-rpi-2-b.dts | 66 ++++++++++++++++++++
+ arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts | 70 ++++++++++++++++++++++
+ arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 70 ++++++++++++++++++++++
+ 3 files changed, 206 insertions(+)
+
+diff --git a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
+index 871fc4a558cf..7b4e651bafdd 100644
+--- a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
++++ b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
+@@ -28,6 +28,72 @@
+ };
+
+ &gpio {
++ /*
++ * Taken from rpi_SCH_2b_1p2_reduced.pdf and
++ * the official GPU firmware DT blob.
++ *
++ * Legend:
++ * "NC" = not connected (no rail from the SoC)
++ * "FOO" = GPIO line named "FOO" on the schematic
++ * "FOO_N" = GPIO line named "FOO" on schematic, active low
++ */
++ gpio-line-names = "ID_SDA",
++ "ID_SCL",
++ "SDA1",
++ "SCL1",
++ "GPIO_GCLK",
++ "GPIO5",
++ "GPIO6",
++ "SPI_CE1_N",
++ "SPI_CE0_N",
++ "SPI_MISO",
++ "SPI_MOSI",
++ "SPI_SCLK",
++ "GPIO12",
++ "GPIO13",
++ /* Serial port */
++ "TXD0",
++ "RXD0",
++ "GPIO16",
++ "GPIO17",
++ "GPIO18",
++ "GPIO19",
++ "GPIO20",
++ "GPIO21",
++ "GPIO22",
++ "GPIO23",
++ "GPIO24",
++ "GPIO25",
++ "GPIO26",
++ "GPIO27",
++ "SDA0",
++ "SCL0",
++ "", /* GPIO30 */
++ "LAN_RUN",
++ "CAM_GPIO1",
++ "", /* GPIO33 */
++ "", /* GPIO34 */
++ "PWR_LOW_N",
++ "", /* GPIO36 */
++ "", /* GPIO37 */
++ "USB_LIMIT",
++ "", /* GPIO39 */
++ "PWM0_OUT",
++ "CAM_GPIO0",
++ "SMPS_SCL",
++ "SMPS_SDA",
++ "ETHCLK",
++ "PWM1_OUT",
++ "HDMI_HPD_N",
++ "STATUS_LED",
++ /* Used by SD Card */
++ "SD_CLK_R",
++ "SD_CMD_R",
++ "SD_DATA0_R",
++ "SD_DATA1_R",
++ "SD_DATA2_R",
++ "SD_DATA3_R";
++
+ pinctrl-0 = <&gpioout &alt0 &i2s_alt0>;
+
+ /* I2S interface */
+diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts
+index 94886fcaf0b9..9358f8481f36 100644
+--- a/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts
++++ b/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts
+@@ -52,6 +52,76 @@
+ };
+ };
+
++&gpio {
++ /*
++ * Taken from rpi_SCH_3bplus_1p0_reduced.pdf and
++ * the official GPU firmware DT blob.
++ *
++ * Legend:
++ * "NC" = not connected (no rail from the SoC)
++ * "FOO" = GPIO line named "FOO" on the schematic
++ * "FOO_N" = GPIO line named "FOO" on schematic, active low
++ */
++ gpio-line-names = "ID_SDA",
++ "ID_SCL",
++ "SDA1",
++ "SCL1",
++ "GPIO_GCLK",
++ "GPIO5",
++ "GPIO6",
++ "SPI_CE1_N",
++ "SPI_CE0_N",
++ "SPI_MISO",
++ "SPI_MOSI",
++ "SPI_SCLK",
++ "GPIO12",
++ "GPIO13",
++ /* Serial port */
++ "TXD1",
++ "RXD1",
++ "GPIO16",
++ "GPIO17",
++ "GPIO18",
++ "GPIO19",
++ "GPIO20",
++ "GPIO21",
++ "GPIO22",
++ "GPIO23",
++ "GPIO24",
++ "GPIO25",
++ "GPIO26",
++ "GPIO27",
++ "HDMI_HPD_N",
++ "STATUS_LED_G",
++ /* Used by BT module */
++ "CTS0",
++ "RTS0",
++ "TXD0",
++ "RXD0",
++ /* Used by Wifi */
++ "SD1_CLK",
++ "SD1_CMD",
++ "SD1_DATA0",
++ "SD1_DATA1",
++ "SD1_DATA2",
++ "SD1_DATA3",
++ "PWM0_OUT",
++ "PWM1_OUT",
++ "ETHCLK",
++ "WIFI_CLK",
++ "SDA0",
++ "SCL0",
++ "SMPS_SCL",
++ "SMPS_SDA",
++ /* Used by SD Card */
++ "SD_CLK_R",
++ "SD_CMD_R",
++ "SD_DATA0_R",
++ "SD_DATA1_R",
++ "SD_DATA2_R",
++ "SD_DATA3_R";
++};
++
+ &hdmi {
+ hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
+ };
+diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
+index 31b1c03e0ff7..ce71f578c51a 100644
+--- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
++++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
+@@ -47,6 +47,76 @@
+ };
+ };
+
++&gpio {
++ /*
++ * Taken from rpi_SCH_3b_1p2_reduced.pdf and
++ * the official GPU firmware DT blob.
++ *
++ * Legend:
++ * "NC" = not connected (no rail from the SoC)
++ * "FOO" = GPIO line named "FOO" on the schematic
++ * "FOO_N" = GPIO line named "FOO" on schematic, active low
++ */
++ gpio-line-names = "ID_SDA",
++ "ID_SCL",
++ "SDA1",
++ "SCL1",
++ "GPIO_GCLK",
++ "GPIO5",
++ "GPIO6",
++ "SPI_CE1_N",
++ "SPI_CE0_N",
++ "SPI_MISO",
++ "SPI_MOSI",
++ "SPI_SCLK",
++ "GPIO12",
++ "GPIO13",
++ /* Serial port */
++ "TXD1",
++ "RXD1",
++ "GPIO16",
++ "GPIO17",
++ "GPIO18",
++ "GPIO19",
++ "GPIO20",
++ "GPIO21",
++ "GPIO22",
++ "GPIO23",
++ "GPIO24",
++ "GPIO25",
++ "GPIO26",
++ "GPIO27",
++ "", /* GPIO 28 */
++ "LAN_RUN_BOOT",
++ /* Used by BT module */
++ "CTS0",
++ "RTS0",
++ "TXD0",
++ "RXD0",
++ /* Used by Wifi */
++ "SD1_CLK",
++ "SD1_CMD",
++ "SD1_DATA0",
++ "SD1_DATA1",
++ "SD1_DATA2",
++ "SD1_DATA3",
++ "PWM0_OUT",
++ "PWM1_OUT",
++ "ETHCLK",
++ "WIFI_CLK",
++ "SDA0",
++ "SCL0",
++ "SMPS_SCL",
++ "SMPS_SDA",
++ /* Used by SD Card */
++ "SD_CLK_R",
++ "SD_CMD_R",
++ "SD_DATA0_R",
++ "SD_DATA1_R",
++ "SD_DATA2_R",
++ "SD_DATA3_R";
++};
++
+ &pwm {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
diff --git a/kernel.spec b/kernel.spec
index 0d58f1a4b..dbc6589d7 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -574,13 +574,15 @@ Patch305: qcom-msm89xx-fixes.patch
# https://patchwork.kernel.org/project/linux-mmc/list/?submitter=71861
Patch306: arm-sdhci-esdhc-imx-fixes.patch
-Patch330: bcm2835-cpufreq-add-CPU-frequency-control-driver.patch
-
# Initall support for the 3A+
-Patch334: bcm2837-dts-add-Raspberry-Pi-3-A.patch
+Patch330: bcm2837-dts-add-Raspberry-Pi-3-A.patch
# https://patchwork.kernel.org/patch/10741809/
-Patch336: bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch
+Patch331: bcm2835-mmc-sdhci-iproc-handle-mmc_of_parse-errors-during-probe.patch
+
+Patch332: bcm283x-Add-missing-GPIO-line-names.patch
+
+Patch339: bcm2835-cpufreq-add-CPU-frequency-control-driver.patch
# Fix for AllWinner A64 Timer Errata, still not final
# https://patchwork.kernel.org/patch/10392891/