From: Andrea della Porta <andrea.porta@suse.com>
To: linus.walleij@linaro.org, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, florian.fainelli@broadcom.com,
wahrenst@gmx.net, linux-gpio@vger.kernel.org,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
iivanov@suse.de, svarbanov@suse.de, mbrugger@suse.com,
Jonathan Bell <jonathan@raspberrypi.com>,
Phil Elwell <phil@raspberrypi.com>
Cc: Andrea della Porta <andrea.porta@suse.com>
Subject: [PATCH v3 0/3] Add pin control driver for BCM2712 SoC
Date: Mon, 11 Aug 2025 16:46:50 +0200 [thread overview]
Message-ID: <cover.1754922935.git.andrea.porta@suse.com> (raw)
*important note* - For clarity's sake, here's the revision list from which
this patchset derives:
V3 (this patchset, split-up to deal exclusively with pin controller stuff)
V2 (missing v2 in the mail subject): https://lore.kernel.org/all/cover.1752584387.git.andrea.porta@suse.com/
V1 (original by Ivan): https://lore.kernel.org/all/20240731062814.215833-1-iivanov@suse.de/
Also, in V3 the patchset has been split into two:
- patches 1, 2 and 7 from V2 form the new revision V3 to deal with
core pinctrl stuff only.
- all remaining patches will respawn as a new patchset that adds new DT
nodes for the peripherals that use the pinctrl. As a consequence, it
will require the above mentioned V3 patchset as a prerequisite.
---
Hi,
The following patches add a pin control driver for the BCM2712 SoC.
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.
A separate patchset will add peripheral nodes that rely on the SoC pin
controller to setup and config the pins.
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 and Andrea
[1] https://lore.kernel.org/lkml/f6601f73-cb22-4ba3-88c5-241be8421fc3@broadcom.com/
[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@broadcom.com/#t
[4] https://lore.kernel.org/all/bfc60a7e-54d2-48a6-a288-4fe76d66507a@gmx.net/
CHANGES in V3:
--- PATCHES ---
- The V2 patchset has been split into two. This patchset (V3) contains reworked
patches 1,2,7 from V2 while the remaining (again, reworked) patches will
respawn as an entirely new patchset.
--- DT BINDINGS ---
- brcm,bcm2712c0-pinctrl.yaml: emmc_* pins are specific and do not provide
other alternate function, so the function property can be dropped for those
pins.
- brcm,bcm2712c0-pinctrl.yaml: fixed the schema ID reflecting the current
filename.
--- DRIVER ---
- pinctrl-brcmstb.c: wrapped a couple of lines exceeding 100 columns.
Andrea della Porta (1):
arm64: defconfig: Enable BCM2712 on-chip pin controller driver
Ivan T. Ivanov (2):
dt-bindings: pinctrl: Add support for Broadcom STB pin controller
pinctrl: bcm: Add STB family pin controller driver
.../pinctrl/brcm,bcm2712c0-pinctrl.yaml | 135 ++
arch/arm64/configs/defconfig | 1 +
drivers/pinctrl/bcm/Kconfig | 13 +
drivers/pinctrl/bcm/Makefile | 1 +
drivers/pinctrl/bcm/pinctrl-brcmstb.c | 1197 +++++++++++++++++
5 files changed, 1347 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm2712c0-pinctrl.yaml
create mode 100644 drivers/pinctrl/bcm/pinctrl-brcmstb.c
--
2.35.3
next reply other threads:[~2025-08-11 14:45 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-11 14:46 Andrea della Porta [this message]
2025-08-11 14:46 ` [PATCH v3 1/3] dt-bindings: pinctrl: Add support for Broadcom STB pin controller Andrea della Porta
2025-08-18 17:20 ` Rob Herring
2025-08-27 9:58 ` Andrea della Porta
2025-08-11 14:46 ` [PATCH v3 2/3] pinctrl: bcm: Add STB family pin controller driver Andrea della Porta
2025-08-19 7:40 ` Stanimir Varbanov
2025-08-19 8:14 ` Andrea della Porta
2025-08-19 8:19 ` Stanimir Varbanov
2025-08-19 8:40 ` Andrea della Porta
2025-08-19 9:18 ` Stefan Wahren
2025-08-21 15:36 ` Andrea della Porta
2025-08-27 16:32 ` Florian Fainelli
2025-08-27 16:31 ` Florian Fainelli
2025-08-19 9:37 ` Linus Walleij
2025-08-21 15:46 ` Andrea della Porta
2025-08-24 9:57 ` Stefan Wahren
2025-08-27 14:00 ` Andrea della Porta
2025-08-11 14:46 ` [PATCH v3 3/3] arm64: defconfig: Enable BCM2712 on-chip " Andrea della Porta
2025-08-19 7:25 ` Stanimir Varbanov
2025-08-21 9:35 ` Andrea della Porta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1754922935.git.andrea.porta@suse.com \
--to=andrea.porta@suse.com \
--cc=catalin.marinas@arm.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=florian.fainelli@broadcom.com \
--cc=iivanov@suse.de \
--cc=jonathan@raspberrypi.com \
--cc=krzk+dt@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=mbrugger@suse.com \
--cc=phil@raspberrypi.com \
--cc=robh@kernel.org \
--cc=svarbanov@suse.de \
--cc=wahrenst@gmx.net \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).