diff options
| author | Ivan T. Ivanov <iivanov@suse.de> | 2025-08-28 15:17:12 +0200 |
|---|---|---|
| committer | Florian Fainelli <florian.fainelli@broadcom.com> | 2025-09-04 14:04:28 -0700 |
| commit | 72eb12b99d3539060d93191c502e7b7e259ead56 (patch) | |
| tree | a305f60075d0625a894018abbe24942a0a9183d7 | |
| parent | 7e1aa57c2d14908c1faf0bcbf3e746dcf650eaa0 (diff) | |
| download | linux-72eb12b99d3539060d93191c502e7b7e259ead56.tar.gz linux-72eb12b99d3539060d93191c502e7b7e259ead56.zip | |
arm64: dts: broadcom: bcm2712: Add one more GPIO node
Add GPIO and related interrupt controller nodes and wire one
of the lines to power button.
Signed-off-by: Ivan T. Ivanov <iivanov@suse.de>
Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
Link: https://lore.kernel.org/r/6d311b2f629bbc0e1dd9821e4aa8e5af9f8e5362.1756386531.git.andrea.porta@suse.com
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
| -rw-r--r-- | arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts | 21 | ||||
| -rw-r--r-- | arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 12 |
2 files changed, 33 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts index 6091a1ff365c..f0883c903527 100644 --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-ovl-rp1.dts @@ -2,6 +2,7 @@ /dts-v1/; #include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> #include "bcm2712.dtsi" / { @@ -29,6 +30,20 @@ reg = <0 0 0 0x28000000>; }; + gpio-keys { + compatible = "gpio-keys"; + pinctrl-names = "default"; + pinctrl-0 = <&pwr_button_default>; + status = "okay"; + + power_button: power-button { + label = "pwr_button"; + linux,code = <KEY_POWER>; + gpios = <&gio 20 GPIO_ACTIVE_LOW>; + debounce-interval = <50>; + }; + }; + sd_io_1v8_reg: sd-io-1v8-reg { compatible = "regulator-gpio"; regulator-name = "vdd-sd-io"; @@ -58,6 +73,12 @@ pins = "emmc_cmd", "emmc_dat0", "emmc_dat1", "emmc_dat2", "emmc_dat3"; bias-pull-up; }; + + pwr_button_default: pwr-button-default-state { + function = "gpio"; + pins = "gpio20"; + bias-pull-up; + }; }; &pinctrl_aon { diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi index c1374cf383ae..a1af86208d9e 100644 --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi @@ -248,6 +248,18 @@ reg = <0x7d504100 0x30>; }; + gio: gpio@7d508500 { + compatible = "brcm,bcm7445-gpio", "brcm,brcmstb-gpio"; + reg = <0x7d508500 0x40>; + interrupt-parent = <&main_irq>; + interrupts = <0>; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + brcm,gpio-bank-widths = <32 22>; + }; + pinctrl_aon: pinctrl@7d510700 { compatible = "brcm,bcm2712c0-aon-pinctrl"; reg = <0x7d510700 0x20>; |
