Hi, The following patches add a pin control driver for the BCM2712 SoC and few pin/gpio Devicetree nodes for Raspberry Pi 5. Device driver is follow up version on what Andrea posted in April [1]. It is based on sources from here [2]. I just made few cosmetic changes and addressed review comments from earlier submission. I don't have documentation for this controller. Patch 3 was already posted by Andrea and it is in Broadcom integration tree[3]. Unfortunately it is still not in the Linus tree[4]. So I added it here as base for my changes and to easy building and testing. Patch 5 wire up power button on RPi5 Patch 6 adds WiFi Devicetree node for RPi5 Patch 7 adds Bluetooth Devicetree node for RPi5 They are few complaints from checkpatch.pl. Like few lines over 100 columns, which I keep that way for better readability or usage of EOPNOTSUPP, but it is according pin control API document. All this have been tested as kernel was directly booted RPi5 via kernel= config.txt option and cmdline.txt file with following content (Note I am using Tumbleweed RPi raw images) # cat /boot/efi/cmdline.txt root=/dev/mmcblk0p3 rootwait rw systemd.show_status=1 console=tty ignore_loglevel earlycon console=ttyAMA10,115200 With all these patches Bluetooth and Wifi are working fine (tm) with firmware files provided by openSUSE Tumbleweed. All comments and suggestions are welcome! Happy hacking! Ivan [1] https://lore.kernel.org/lkml/f6601f73-cb22-4ba3-88c5-241be8421fc3@xxxxxxxxxxxx/ [2] https://github.com/raspberrypi/linux/blob/rpi-6.6.y/drivers/pinctrl/bcm/pinctrl-bcm2712.c [3] https://lore.kernel.org/lkml/20240605120712.3523290-1-florian.fainelli@xxxxxxxxxxxx/#t [4] https://lore.kernel.org/all/bfc60a7e-54d2-48a6-a288-4fe76d66507a@xxxxxxx/ Andrea della Porta (1): arm64: dts: broadcom: Add support for BCM2712 Ivan T. Ivanov (6): dt-bindings: pinctrl: Add support for Broadcom STB pin controller pinctrl: bcm: Add STB family pin controller driver arm64: dts: broadcom: bcm2712: Add pin controller nodes arm64: dts: broadcom: bcm2712: Add one more GPIO node arm64: dts: broadcom: bcm2712: Add second SDHCI controller node arm64: dts: broadcom: bcm2712: Add UARTA controller node. .../pinctrl/brcm,brcmstb-pinctrl.yaml | 73 + arch/arm64/boot/dts/broadcom/Makefile | 1 + .../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 203 +++ arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 357 +++++ drivers/pinctrl/bcm/Kconfig | 13 + drivers/pinctrl/bcm/Makefile | 1 + drivers/pinctrl/bcm/pinctrl-brcmstb.c | 1217 +++++++++++++++++ 7 files changed, 1865 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,brcmstb-pinctrl.yaml create mode 100644 arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts create mode 100644 arch/arm64/boot/dts/broadcom/bcm2712.dtsi create mode 100644 drivers/pinctrl/bcm/pinctrl-brcmstb.c base-commit: dc1c8034e31b14a2e5e212104ec508aec44ce1b9 -- 2.43.0