.../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 - 2025 Red Hat, Inc.