]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: dts: st: omit unused pinctrl groups from stm32mp25 dtb files
authorAmelie Delaunay <amelie.delaunay@foss.st.com>
Wed, 11 Mar 2026 11:30:00 +0000 (12:30 +0100)
committerAlexandre Torgue <alexandre.torgue@foss.st.com>
Wed, 25 Mar 2026 16:37:47 +0000 (17:37 +0100)
stm32mp25-pinctrl.dtsi gathers all pinctrl groups from current and future
STM32MP25-based boards. Some groups may remain unused by any board,
resulting in wasted binary space.
Adding /omit-if-no-ref/ to the groups will remove unused groups from the
device tree blobs.

Use the following regex to update the file:
's/^\t[^:]\+: [^ ]\+ {$/\t\/omit-if-no-ref\/\n&/'
Also, merge the duplicated pinctrl_z node.

Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Link: https://lore.kernel.org/r/20260311-mp25_pinctrl_omit-v1-1-5a3d40046b10@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi

index 2f853f3fae6d84756300f19da32d6cb0297d9e20..456ece7f8ebc31fe69dedd016690c5fb59fb8ecb 100644 (file)
@@ -6,6 +6,7 @@
 #include <dt-bindings/pinctrl/stm32-pinfunc.h>
 
 &pinctrl {
+       /omit-if-no-ref/
        eth1_mdio_pins_a: eth1-mdio-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('F', 0, AF10)>; /* ETH_MDC */
@@ -21,6 +22,7 @@
                };
        };
 
+       /omit-if-no-ref/
        eth1_mdio_sleep_pins_a: eth1-mdio-sleep-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('F', 0, ANALOG)>, /* ETH_MDC */
@@ -28,6 +30,7 @@
                };
        };
 
+       /omit-if-no-ref/
        eth1_rgmii_pins_a: eth1-rgmii-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('A', 15, AF10)>, /* ETH_RGMII_TXD0 */
@@ -62,6 +65,7 @@
                };
        };
 
+       /omit-if-no-ref/
        eth1_rgmii_sleep_pins_a: eth1-rgmii-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('A', 15, ANALOG)>, /* ETH_RGMII_TXD0 */
@@ -80,6 +84,7 @@
                };
        };
 
+       /omit-if-no-ref/
        eth1_rgmii_pins_b: eth1-rgmii-1 {
                pins1 {
                        pinmux = <STM32_PINMUX('A', 15, AF10)>, /* ETH_RGMII_TXD0 */
                };
        };
 
+       /omit-if-no-ref/
        eth1_rgmii_sleep_pins_b: eth1-rgmii-sleep-1 {
                pins {
                        pinmux = <STM32_PINMUX('A', 15, ANALOG)>, /* ETH_RGMII_TXD0 */
                };
        };
 
+       /omit-if-no-ref/
        eth2_rgmii_pins_a: eth2-rgmii-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('C', 7, AF10)>, /* ETH_RGMII_TXD0 */
                };
        };
 
+       /omit-if-no-ref/
        eth2_rgmii_sleep_pins_a: eth2-rgmii-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('C', 7, ANALOG)>, /* ETH_RGMII_TXD0 */
                };
        };
 
+       /omit-if-no-ref/
        i2c2_pins_a: i2c2-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 5, AF9)>, /* I2C2_SCL */
                };
        };
 
+       /omit-if-no-ref/
        i2c2_sleep_pins_a: i2c2-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 5, ANALOG)>, /* I2C2_SCL */
                };
        };
 
+       /omit-if-no-ref/
        i2c2_pins_b: i2c2-1 {
                pins {
                        pinmux = <STM32_PINMUX('F', 2, AF9)>, /* I2C2_SCL */
                };
        };
 
+       /omit-if-no-ref/
        i2c2_sleep_pins_b: i2c2-sleep-1 {
                pins {
                        pinmux = <STM32_PINMUX('F', 2, ANALOG)>, /* I2C2_SCL */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_clk_pins_a: ospi-port1-clk-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 0, AF10)>; /* OSPI1_CLK */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_clk_sleep_pins_a: ospi-port1-clk-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 0, ANALOG)>; /* OSPI1_CLK */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_cs0_pins_a: ospi-port1-cs0-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 3, AF10)>; /* OSPI_NCS0 */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_cs0_sleep_pins_a: ospi-port1-cs0-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 3, ANALOG)>; /* OSPI_NCS0 */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_io03_pins_a: ospi-port1-io03-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 4, AF10)>, /* OSPI_IO0 */
                };
        };
 
+       /omit-if-no-ref/
        ospi_port1_io03_sleep_pins_a: ospi-port1-io03-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('D', 4, ANALOG)>, /* OSPI_IO0 */
                };
        };
 
+       /omit-if-no-ref/
        pcie_pins_a: pcie-0 {
                pins {
                        pinmux = <STM32_PINMUX('J', 0, AF4)>;
                };
        };
 
+       /omit-if-no-ref/
        pcie_init_pins_a: pcie-init-0 {
                pins {
                        pinmux = <STM32_PINMUX('J', 0, GPIO)>;
                };
        };
 
+       /omit-if-no-ref/
        pcie_sleep_pins_a: pcie-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('J', 0, ANALOG)>;
                };
        };
 
+       /omit-if-no-ref/
        pwm3_pins_a: pwm3-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 15, AF7)>; /* TIM3_CH2 */
                };
        };
 
+       /omit-if-no-ref/
        pwm3_sleep_pins_a: pwm3-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 15, ANALOG)>; /* TIM3_CH2 */
                };
        };
 
+       /omit-if-no-ref/
        pwm8_pins_a: pwm8-0 {
                pins {
                        pinmux = <STM32_PINMUX('J', 5, AF8)>, /* TIM8_CH1 */
                };
        };
 
+       /omit-if-no-ref/
        pwm8_sleep_pins_a: pwm8-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('J', 5, ANALOG)>, /* TIM8_CH1 */
                };
        };
 
+       /omit-if-no-ref/
        pwm12_pins_a: pwm12-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 11, AF9)>; /* TIM12_CH2 */
                };
        };
 
+       /omit-if-no-ref/
        pwm12_sleep_pins_a: pwm12-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 11, ANALOG)>; /* TIM12_CH2 */
                };
        };
 
+       /omit-if-no-ref/
        sdmmc1_b4_pins_a: sdmmc1-b4-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('E', 4, AF10)>, /* SDMMC1_D0 */
                };
        };
 
+       /omit-if-no-ref/
        sdmmc1_b4_od_pins_a: sdmmc1-b4-od-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('E', 4, AF10)>, /* SDMMC1_D0 */
                };
        };
 
+       /omit-if-no-ref/
        sdmmc1_b4_sleep_pins_a: sdmmc1-b4-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('E', 4, ANALOG)>, /* SDMMC1_D0 */
                };
        };
 
+       /omit-if-no-ref/
        spi3_pins_a: spi3-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('B', 7, AF1)>, /* SPI3_SCK */
                };
        };
 
+       /omit-if-no-ref/
        spi3_sleep_pins_a: spi3-sleep-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('B', 7, ANALOG)>, /* SPI3_SCK */
                };
        };
 
+       /omit-if-no-ref/
        tim10_counter_pins_a: tim10-counter-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 9, AF9)>; /* TIM10_CH1 */
                };
        };
 
+       /omit-if-no-ref/
        tim10_counter_sleep_pins_a: tim10-counter-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('B', 9, ANALOG)>; /* TIM10_CH1 */
                };
        };
 
+       /omit-if-no-ref/
        usart2_pins_a: usart2-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('A', 4, AF6)>; /* USART2_TX */
                };
        };
 
+       /omit-if-no-ref/
        usart2_idle_pins_a: usart2-idle-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('A', 4, ANALOG)>; /* USART2_TX */
                };
        };
 
+       /omit-if-no-ref/
        usart2_sleep_pins_a: usart2-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('A', 4, ANALOG)>, /* USART2_TX */
                };
        };
 
+       /omit-if-no-ref/
        usart6_pins_a: usart6-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('F', 13, AF3)>, /* USART6_TX */
                };
        };
 
+       /omit-if-no-ref/
        usart6_idle_pins_a: usart6-idle-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('F', 13, ANALOG)>, /* USART6_TX */
                };
        };
 
+       /omit-if-no-ref/
        usart6_sleep_pins_a: usart6-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('F', 13, ANALOG)>, /* USART6_TX */
 };
 
 &pinctrl_z {
+       /omit-if-no-ref/
        i2c8_pins_a: i2c8-0 {
                pins {
                        pinmux = <STM32_PINMUX('Z', 4, AF8)>, /* I2C8_SCL */
                };
        };
 
+       /omit-if-no-ref/
        i2c8_sleep_pins_a: i2c8-sleep-0 {
                pins {
                        pinmux = <STM32_PINMUX('Z', 4, ANALOG)>, /* I2C8_SCL */
                                 <STM32_PINMUX('Z', 3, ANALOG)>; /* I2C8_SDA */
                };
        };
-};
 
-&pinctrl_z {
+       /omit-if-no-ref/
        spi8_pins_a: spi8-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('Z', 2, AF3)>, /* SPI8_SCK */
                };
        };
 
+       /omit-if-no-ref/
        spi8_sleep_pins_a: spi8-sleep-0 {
                pins1 {
                        pinmux = <STM32_PINMUX('Z', 2, ANALOG)>, /* SPI8_SCK */