.../devicetree/bindings/pinctrl/st,stm32-hdp.yaml | 187 ++++++ MAINTAINERS | 6 + arch/arm/boot/dts/st/stm32mp131.dtsi | 7 + arch/arm/boot/dts/st/stm32mp15-pinctrl.dtsi | 25 + arch/arm/boot/dts/st/stm32mp151.dtsi | 7 + arch/arm/boot/dts/st/stm32mp157c-dk2.dts | 6 + arch/arm64/boot/dts/st/stm32mp251.dtsi | 7 + drivers/gpio/gpio-mmio.c | 11 +- drivers/pinctrl/stm32/Kconfig | 14 + drivers/pinctrl/stm32/Makefile | 1 + drivers/pinctrl/stm32/pinctrl-stm32-hdp.c | 720 +++++++++++++++++++++ include/linux/gpio/driver.h | 1 + 12 files changed, 991 insertions(+), 1 deletion(-)
This patch series introduces the Hardware Debug Port (HDP) support for
STM32MP platforms.
It includes updates to the mmio gpio driver, the addition of device tree
bindings, the HDP driver, and updates to the device tree files for
STM32MP13, STM32MP15,
and STM32MP25 SoCs.
The series also updates the MAINTAINERS file to include myself as the
maintainer for the STM32 HDP driver and adds the necessary
pinmux configurations for HDP pins on STM32MP157C-DK2 as example.
Signed-off-by: Clément Le Goffic <clement.legoffic@foss.st.com>
---
Changes in v5:
- (Better) Change the bindings file name:
's/st,stm32-pinctrl-hdp.yaml/st,stm32-hdp.yaml/g'
- Remove Krzysztof Kozlowski's 'Reviewed-by' trailer on bindings.
- Add Linus Walleij's 'Reviewed-by' trailers.
- Refine SoC dtsi patch's commit message to explain the need of keeping
the HDP node disabled.
- Link to v4: https://lore.kernel.org/r/20250528-hdp-upstream-v4-0-7e9b3ad2036d@foss.st.com
Changes in v4:
- 's/Add/add/g' in MAINTAINERS commit message.
- Fix the (wrong) status update for the thermal node in stm32mp131.dtsi
file.
- Do not enable HDP by default during compile testing.
- Change the bindings file name:
's/st,stm32-pinctrl-hdp.yaml/st,stm32-hdp.yaml/g'
- Add Krzysztof Kozlowski's 'Reviewd-by' trailer on bindings.
- Link to v3: https://lore.kernel.org/r/20250523-hdp-upstream-v3-0-bd6ca199466a@foss.st.com
Changes in v3:
- Use `bgpio_init()` function:
- Add add patch to create the `BGPIOF_NO_INPUT` flag needed for the
`bgpio_setup_direction()` used in `bgpio_init()`
- Remove `stm32_hdp_gpio_get` and `stm32_hdp_gpio_set`
- Use `static` pm ops
- Update bindings:
- add pattern instruction for pin values
- remove function's maxItems to use `function: true`
- fix the compatible in the exemples
- Link to v2: https://lore.kernel.org/r/20250520-hdp-upstream-v2-0-53f6b8b5ffc8@foss.st.com
Changes in v2:
- Remove bindings header files with function name as #define
- Add match_data with function name for three compatible:
"st,stm32mp131-hdp", "st,stm32mp151-hdp" and "st,stm32mp251-hdp".
- Rework a bit the driver to use match_data.
- Remove the use of `dev_err_probe(` in the resume ops.
- Remove `MODULE_ALIAS(`.
- Remove the vertical bar in bindings description paragraph.
- Fix an error in the `pinctrl-0` parameter of the binding example, it
was refering a node that wasn't existing.
- Use uppercase pin names.
- Link to v1: https://lore.kernel.org/r/20250225-hdp-upstream-v1-0-9d049c65330a@foss.st.com
---
Clément Le Goffic (9):
gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip
dt-bindings: pinctrl: stm32: Introduce HDP
pinctrl: stm32: Introduce HDP driver
MAINTAINERS: add Clément Le Goffic as STM32 HDP maintainer
ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp13
ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp15
ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp25
ARM: dts: stm32: add alternate pinmux for HDP pin and add HDP pinctrl node
ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp157c-dk2 board
.../devicetree/bindings/pinctrl/st,stm32-hdp.yaml | 187 ++++++
MAINTAINERS | 6 +
arch/arm/boot/dts/st/stm32mp131.dtsi | 7 +
arch/arm/boot/dts/st/stm32mp15-pinctrl.dtsi | 25 +
arch/arm/boot/dts/st/stm32mp151.dtsi | 7 +
arch/arm/boot/dts/st/stm32mp157c-dk2.dts | 6 +
arch/arm64/boot/dts/st/stm32mp251.dtsi | 7 +
drivers/gpio/gpio-mmio.c | 11 +-
drivers/pinctrl/stm32/Kconfig | 14 +
drivers/pinctrl/stm32/Makefile | 1 +
drivers/pinctrl/stm32/pinctrl-stm32-hdp.c | 720 +++++++++++++++++++++
include/linux/gpio/driver.h | 1 +
12 files changed, 991 insertions(+), 1 deletion(-)
---
base-commit: 24b0277c1c539cd41539d9297baafc62df04464a
change-id: 20250224-hdp-upstream-622e5da14a9f
Best regards,
--
Clément Le Goffic <clement.legoffic@foss.st.com>
On Fri, Jun 13, 2025 at 12:16 PM Clément Le Goffic <clement.legoffic@foss.st.com> wrote: > > This patch series introduces the Hardware Debug Port (HDP) support for > STM32MP platforms. > > It includes updates to the mmio gpio driver, the addition of device tree > bindings, the HDP driver, and updates to the device tree files for > STM32MP13, STM32MP15, > and STM32MP25 SoCs. > The series also updates the MAINTAINERS file to include myself as the > maintainer for the STM32 HDP driver and adds the necessary > pinmux configurations for HDP pins on STM32MP157C-DK2 as example. > > Signed-off-by: Clément Le Goffic <clement.legoffic@foss.st.com> > --- [snip] > --- > Clément Le Goffic (9): > gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip > dt-bindings: pinctrl: stm32: Introduce HDP > pinctrl: stm32: Introduce HDP driver > MAINTAINERS: add Clément Le Goffic as STM32 HDP maintainer > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp13 > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp15 > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp25 > ARM: dts: stm32: add alternate pinmux for HDP pin and add HDP pinctrl node > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp157c-dk2 board > Patches 1-4 and 5-9 can go upstream independently. I suggest taking patch 1/9 through the GPIO tree and providing an immutable tag to Linus to take patches 2-4 through the pinctrl tree. Linus: are you OK with that? Bart
On Mon, Jun 16, 2025 at 10:05 AM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > On Fri, Jun 13, 2025 at 12:16 PM Clément Le Goffic > <clement.legoffic@foss.st.com> wrote: > > > > This patch series introduces the Hardware Debug Port (HDP) support for > > STM32MP platforms. > > > > It includes updates to the mmio gpio driver, the addition of device tree > > bindings, the HDP driver, and updates to the device tree files for > > STM32MP13, STM32MP15, > > and STM32MP25 SoCs. > > The series also updates the MAINTAINERS file to include myself as the > > maintainer for the STM32 HDP driver and adds the necessary > > pinmux configurations for HDP pins on STM32MP157C-DK2 as example. > > > > Signed-off-by: Clément Le Goffic <clement.legoffic@foss.st.com> > > --- > > [snip] > > > --- > > Clément Le Goffic (9): > > gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip > > dt-bindings: pinctrl: stm32: Introduce HDP > > pinctrl: stm32: Introduce HDP driver > > MAINTAINERS: add Clément Le Goffic as STM32 HDP maintainer > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp13 > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp15 > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp25 > > ARM: dts: stm32: add alternate pinmux for HDP pin and add HDP pinctrl node > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp157c-dk2 board > > > > Patches 1-4 and 5-9 can go upstream independently. I suggest taking > patch 1/9 through the GPIO tree and providing an immutable tag to > Linus to take patches 2-4 through the pinctrl tree. Linus: are you OK > with that? Yes go ahead if you want, an immutable branch based on v6.16-rc1 is the best for me, then I pull that in. I could also just apply it and hope for the best... it usually works. Yours, Linus Walleij
On Wed, Jun 18, 2025 at 2:21 PM Linus Walleij <linus.walleij@linaro.org> wrote: > > On Mon, Jun 16, 2025 at 10:05 AM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > > On Fri, Jun 13, 2025 at 12:16 PM Clément Le Goffic > > <clement.legoffic@foss.st.com> wrote: > > > > > > This patch series introduces the Hardware Debug Port (HDP) support for > > > STM32MP platforms. > > > > > > It includes updates to the mmio gpio driver, the addition of device tree > > > bindings, the HDP driver, and updates to the device tree files for > > > STM32MP13, STM32MP15, > > > and STM32MP25 SoCs. > > > The series also updates the MAINTAINERS file to include myself as the > > > maintainer for the STM32 HDP driver and adds the necessary > > > pinmux configurations for HDP pins on STM32MP157C-DK2 as example. > > > > > > Signed-off-by: Clément Le Goffic <clement.legoffic@foss.st.com> > > > --- > > > > [snip] > > > > > --- > > > Clément Le Goffic (9): > > > gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip > > > dt-bindings: pinctrl: stm32: Introduce HDP > > > pinctrl: stm32: Introduce HDP driver > > > MAINTAINERS: add Clément Le Goffic as STM32 HDP maintainer > > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp13 > > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp15 > > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp25 > > > ARM: dts: stm32: add alternate pinmux for HDP pin and add HDP pinctrl node > > > ARM: dts: stm32: add Hardware debug port (HDP) on stm32mp157c-dk2 board > > > > > > > Patches 1-4 and 5-9 can go upstream independently. I suggest taking > > patch 1/9 through the GPIO tree and providing an immutable tag to > > Linus to take patches 2-4 through the pinctrl tree. Linus: are you OK > > with that? > > Yes go ahead if you want, an immutable branch based on v6.16-rc1 > is the best for me, then I pull that in. > > I could also just apply it and hope for the best... it usually works. > I have a rework of gpio-mmio in progress that removes the bgpio specific fields from struct gpio_chip. This includes moving the flags into a separate gpio/generic.h header. I really need to either apply it myself or get an immutable tag from you with this change. Bartosz
On Wed, Jun 18, 2025 at 2:32 PM Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> I have a rework of gpio-mmio in progress that removes the bgpio
> specific fields from struct gpio_chip. This includes moving the flags
> into a separate gpio/generic.h header. I really need to either apply
> it myself or get an immutable tag from you with this change.
OK try this, if you pull in this to your tree and work with refactorings
on top, everything should work out fine in the end:
The following changes since commit 19272b37aa4f83ca52bdf9c16d5d81bdd1354494:
Linux 6.16-rc1 (2025-06-08 13:44:43 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git
tags/ib-gpio-mmio-no-input-tag
for you to fetch changes up to 4fb8c5d36a1cfd97cd715eb4256708bc09724f3d:
gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip (2025-06-18
15:40:29 +0200)
----------------------------------------------------------------
Simple change for no-input MMIO GPIO
----------------------------------------------------------------
Clément Le Goffic (1):
gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip
drivers/gpio/gpio-mmio.c | 11 ++++++++++-
include/linux/gpio/driver.h | 1 +
2 files changed, 11 insertions(+), 1 deletion(-)
Yours,
Linus Walleij
On Wed, Jun 18, 2025 at 3:45 PM Linus Walleij <linus.walleij@linaro.org> wrote: > > On Wed, Jun 18, 2025 at 2:32 PM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > > > I have a rework of gpio-mmio in progress that removes the bgpio > > specific fields from struct gpio_chip. This includes moving the flags > > into a separate gpio/generic.h header. I really need to either apply > > it myself or get an immutable tag from you with this change. > > OK try this, if you pull in this to your tree and work with refactorings > on top, everything should work out fine in the end: > > The following changes since commit 19272b37aa4f83ca52bdf9c16d5d81bdd1354494: > > Linux 6.16-rc1 (2025-06-08 13:44:43 -0700) > > are available in the Git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git > tags/ib-gpio-mmio-no-input-tag > > for you to fetch changes up to 4fb8c5d36a1cfd97cd715eb4256708bc09724f3d: > > gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip (2025-06-18 > 15:40:29 +0200) > > ---------------------------------------------------------------- > Simple change for no-input MMIO GPIO > > ---------------------------------------------------------------- > Clément Le Goffic (1): > gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip > > drivers/gpio/gpio-mmio.c | 11 ++++++++++- > include/linux/gpio/driver.h | 1 + > 2 files changed, 11 insertions(+), 1 deletion(-) > > > Yours, > Linus Walleij Hi Linus, Sorry I didn't notice this one. But I see you already responded that you pulled my PR from today. Should I ignore it? Bartosz
On Thu, Jun 19, 2025 at 9:21 AM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > Sorry I didn't notice this one. But I see you already responded that > you pulled my PR from today. Should I ignore it? Yeah ignore it, let's use your PR instead. Yours, Linus Walleij
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
On Fri, 13 Jun 2025 12:14:11 +0200, Clément Le Goffic wrote:
> This patch series introduces the Hardware Debug Port (HDP) support for
> STM32MP platforms.
>
> It includes updates to the mmio gpio driver, the addition of device tree
> bindings, the HDP driver, and updates to the device tree files for
> STM32MP13, STM32MP15,
> and STM32MP25 SoCs.
> The series also updates the MAINTAINERS file to include myself as the
> maintainer for the STM32 HDP driver and adds the necessary
> pinmux configurations for HDP pins on STM32MP157C-DK2 as example.
>
> [...]
Applied, thanks!
[1/9] gpio: mmio: add BGPIOF_NO_INPUT flag for GPO gpiochip
https://git.kernel.org/brgl/linux/c/deefc7083414de81aad102b60f0390f600d7eb79
Best regards,
--
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
© 2016 - 2026 Red Hat, Inc.