[U-Boot] [PATCH] da830evm: Use table driven pin mux configuration

Nick Thompson nick.thompson at ge.com
Thu Dec 10 16:06:37 CET 2009


da830evm: Use table driven pin mux configuration

Tidyup the pin muxer configuration using the Davinci table driven
pinmux configuration function and data tables.

Signed-off-by: Nick Thompson <nick.thompson at ge.com>
---
Applies to: u-boot-ti

This patch depends on "Davinci: Table driven pinmux configuration"
posted on Nov 16, 2009.

 board/davinci/da830evm/da830evm.c |   27 +++++++++++++--------------
 1 files changed, 13 insertions(+), 14 deletions(-)

diff --git a/board/davinci/da830evm/da830evm.c b/board/davinci/da830evm/da830evm.c
index bb8cc3c..80fd627 100644
--- a/board/davinci/da830evm/da830evm.c
+++ b/board/davinci/da830evm/da830evm.c
@@ -42,29 +42,35 @@ DECLARE_GLOBAL_DATA_PTR;
 
 #define pinmux	&davinci_syscfg_regs->pinmux
 
-#ifdef CONFIG_SPI_FLASH
 /* SPI0 pin muxer settings */
-const struct pinmux_config spi0_pins[] = {
+static const struct pinmux_config spi0_pins[] = {
 	{ pinmux[7], 1, 3 },
 	{ pinmux[7], 1, 4 },
 	{ pinmux[7], 1, 5 },
 	{ pinmux[7], 1, 6 },
 	{ pinmux[7], 1, 7 }
 };
-#endif
 
 /* UART pin muxer settings */
-const struct pinmux_config uart_pins[] = {
+static const struct pinmux_config uart_pins[] = {
 	{ pinmux[8], 2, 7 },
 	{ pinmux[9], 2, 0 }
 };
 
 /* I2C pin muxer settings */
-const struct pinmux_config i2c_pins[] = {
+static const struct pinmux_config i2c_pins[] = {
 	{ pinmux[9], 2, 3 },
 	{ pinmux[9], 2, 4 }
 };
 
+static const struct pinmux_resource pinmuxes[] = {
+#ifdef CONFIG_SPI_FLASH
+	PINMUX_ITEM(spi0_pins),
+#endif
+	PINMUX_ITEM(uart_pins),
+	PINMUX_ITEM(i2c_pins),
+};
+
 int board_init(void)
 {
 #ifndef CONFIG_USE_IRQ
@@ -107,15 +113,8 @@ int board_init(void)
 		 DAVINCI_SYSCFG_SUSPSRC_UART2),
 	       &davinci_syscfg_regs->suspsrc);
 
-#ifdef CONFIG_SPI_FLASH
-	if (davinci_configure_pin_mux(spi0_pins, ARRAY_SIZE(spi0_pins)) != 0)
-		return 1;
-#endif
-
-	if (davinci_configure_pin_mux(uart_pins, ARRAY_SIZE(uart_pins)) != 0)
-		return 1;
-
-	if (davinci_configure_pin_mux(i2c_pins, ARRAY_SIZE(i2c_pins)) != 0)
+	/* configure pinmux settings */
+	if (davinci_configure_pin_mux_items(pinmuxes, ARRAY_SIZE(pinmuxes)))
 		return 1;
 
 	/* enable the console UART */
-- 
1.6.3.3



More information about the U-Boot mailing list