Commit b725abad authored by Luotao Fu's avatar Luotao Fu Committed by Sascha Hauer

pca100: clean up GPIO pin multiplexing

cleaned up some duplicated mxc_gpio_mode calls and move the correpsonding
pin multiplexing either into the initial pin config table or ifdef blocks.
Signed-off-by: default avatarLuotao Fu <l.fu@pengutronix.de>
Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
parent 42216fc5
...@@ -55,6 +55,9 @@ ...@@ -55,6 +55,9 @@
#define OTG_PHY_CS_GPIO (GPIO_PORTB + 23) #define OTG_PHY_CS_GPIO (GPIO_PORTB + 23)
#define USBH2_PHY_CS_GPIO (GPIO_PORTB + 24) #define USBH2_PHY_CS_GPIO (GPIO_PORTB + 24)
#define SPI1_SS0 (GPIO_PORTD + 28)
#define SPI1_SS1 (GPIO_PORTD + 27)
#define SD2_CD (GPIO_PORTC + 29)
static int pca100_pins[] = { static int pca100_pins[] = {
/* UART1 */ /* UART1 */
...@@ -69,6 +72,7 @@ static int pca100_pins[] = { ...@@ -69,6 +72,7 @@ static int pca100_pins[] = {
PB7_PF_SD2_D3, PB7_PF_SD2_D3,
PB8_PF_SD2_CMD, PB8_PF_SD2_CMD,
PB9_PF_SD2_CLK, PB9_PF_SD2_CLK,
SD2_CD | GPIO_GPIO | GPIO_IN,
/* FEC */ /* FEC */
PD0_AIN_FEC_TXD0, PD0_AIN_FEC_TXD0,
PD1_AIN_FEC_TXD1, PD1_AIN_FEC_TXD1,
...@@ -156,6 +160,10 @@ static int pca100_pins[] = { ...@@ -156,6 +160,10 @@ static int pca100_pins[] = {
PA28_PF_HSYNC, PA28_PF_HSYNC,
PA29_PF_VSYNC, PA29_PF_VSYNC,
PA31_PF_OE_ACD, PA31_PF_OE_ACD,
/* free GPIO */
GPIO_PORTC | 31 | GPIO_GPIO | GPIO_IN, /* GPIO0_IRQ */
GPIO_PORTC | 25 | GPIO_GPIO | GPIO_IN, /* GPIO1_IRQ */
GPIO_PORTE | 5 | GPIO_GPIO | GPIO_IN, /* GPIO2_IRQ */
}; };
static struct imxuart_platform_data uart_pdata = { static struct imxuart_platform_data uart_pdata = {
...@@ -214,7 +222,7 @@ static struct spi_board_info pca100_spi_board_info[] __initdata = { ...@@ -214,7 +222,7 @@ static struct spi_board_info pca100_spi_board_info[] __initdata = {
}, },
}; };
static int pca100_spi_cs[] = {GPIO_PORTD + 28, GPIO_PORTD + 27}; static int pca100_spi_cs[] = {SPI1_SS0, SPI1_SS1};
static struct spi_imx_master pca100_spi_0_data = { static struct spi_imx_master pca100_spi_0_data = {
.chipselect = pca100_spi_cs, .chipselect = pca100_spi_cs,
...@@ -388,7 +396,6 @@ static void __init pca100_init(void) ...@@ -388,7 +396,6 @@ static void __init pca100_init(void)
mxc_register_device(&mxc_uart_device0, &uart_pdata); mxc_register_device(&mxc_uart_device0, &uart_pdata);
mxc_gpio_mode(GPIO_PORTC | 29 | GPIO_GPIO | GPIO_IN);
mxc_register_device(&mxc_sdhc_device1, &sdhc_pdata); mxc_register_device(&mxc_sdhc_device1, &sdhc_pdata);
mxc_register_device(&imx27_nand_device, &pca100_nand_board_info); mxc_register_device(&imx27_nand_device, &pca100_nand_board_info);
...@@ -399,17 +406,9 @@ static void __init pca100_init(void) ...@@ -399,17 +406,9 @@ static void __init pca100_init(void)
mxc_register_device(&mxc_i2c_device1, &pca100_i2c_1_data); mxc_register_device(&mxc_i2c_device1, &pca100_i2c_1_data);
mxc_gpio_mode(GPIO_PORTD | 28 | GPIO_GPIO | GPIO_OUT);
mxc_gpio_mode(GPIO_PORTD | 27 | GPIO_GPIO | GPIO_OUT);
/* GPIO0_IRQ */
mxc_gpio_mode(GPIO_PORTC | 31 | GPIO_GPIO | GPIO_IN);
/* GPIO1_IRQ */
mxc_gpio_mode(GPIO_PORTC | 25 | GPIO_GPIO | GPIO_IN);
/* GPIO2_IRQ */
mxc_gpio_mode(GPIO_PORTE | 5 | GPIO_GPIO | GPIO_IN);
#if defined(CONFIG_SPI_IMX) || defined(CONFIG_SPI_IMX_MODULE) #if defined(CONFIG_SPI_IMX) || defined(CONFIG_SPI_IMX_MODULE)
mxc_gpio_mode(GPIO_PORTD | 28 | GPIO_GPIO | GPIO_IN);
mxc_gpio_mode(GPIO_PORTD | 27 | GPIO_GPIO | GPIO_IN);
spi_register_board_info(pca100_spi_board_info, spi_register_board_info(pca100_spi_board_info,
ARRAY_SIZE(pca100_spi_board_info)); ARRAY_SIZE(pca100_spi_board_info));
mxc_register_device(&mxc_spi_device0, &pca100_spi_0_data); mxc_register_device(&mxc_spi_device0, &pca100_spi_0_data);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment