[U-Boot] [PATCH] ARM: davinci: da850: Manual pinmux only when PINCTRL not available

Adam Ford aford173 at gmail.com
Mon Jun 10 18:25:08 UTC 2019


With a recent update to the pinctrl-single driver and the fact
that the da850evm has both DM and OF_CONTROL working in both SPL
and U-Boot, some of the manual pinmuxing can be setup to only
be activated when either the driver doesn't have DM for it, or
when CONFIG_PINMUX isn't available (only during SPL).  If the
code ever shrinks enough to support PINCTRL in SPL, a lot of this
can go away.  This also remove some manual pinmuxing not needed
by SPL to give SPL a little more breathing room.

Signed-off-by: Adam Ford <aford173 at gmail.com>

diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c
index a90b7a3538..5180128db4 100644
--- a/board/davinci/da8xxevm/da850evm.c
+++ b/board/davinci/da8xxevm/da850evm.c
@@ -216,21 +216,29 @@ static const struct pinmux_config gpio_pins[] = {
 };
 
 const struct pinmux_resource pinmuxes[] = {
+#ifndef CONFIG_SPL_BUILD
 #ifdef CONFIG_DRIVER_TI_EMAC
 	PINMUX_ITEM(emac_pins_mdio),
 #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII
 	PINMUX_ITEM(emac_pins_rmii),
 #else
 	PINMUX_ITEM(emac_pins_mii),
-#endif
-#endif
+#endif /* CONFIG_DRIVER_TI_EMAC */
+#endif /* CONFIG_DRIVER_TI_EMAC_USE_RMII */
+#endif /* CONFIG_SPL_BUILD */
 #ifdef CONFIG_SPI_FLASH
+#if !CONFIG_IS_ENABLED(PINCTRL)
 	PINMUX_ITEM(spi1_pins_base),
 	PINMUX_ITEM(spi1_pins_scs0),
 #endif
+#endif
+#if !CONFIG_IS_ENABLED(PINCTRL)
 	PINMUX_ITEM(uart2_pins_txrx),
 	PINMUX_ITEM(uart2_pins_rtscts),
+#endif
+#if !CONFIG_IS_ENABLED(PINCTRL)
 	PINMUX_ITEM(i2c0_pins),
+#endif
 #ifdef CONFIG_NAND_DAVINCI
 	PINMUX_ITEM(emifa_pins_cs3),
 	PINMUX_ITEM(emifa_pins_cs4),
@@ -241,8 +249,10 @@ const struct pinmux_resource pinmuxes[] = {
 #endif
 	PINMUX_ITEM(gpio_pins),
 #ifdef CONFIG_MMC_DAVINCI
+#if !CONFIG_IS_ENABLED(PINCTRL)
 	PINMUX_ITEM(mmc0_pins),
 #endif
+#endif
 };
 
 const int pinmuxes_size = ARRAY_SIZE(pinmuxes);
-- 
2.17.1



More information about the U-Boot mailing list