diff options
author | Philippe Langlais <philippe.langlais@linaro.org> | 2011-05-11 14:24:12 +0200 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@linaro.org> | 2011-07-22 15:46:11 +0200 |
commit | ccc2f93f3b211ba43fc2b49d063f7ed9017929cb (patch) | |
tree | e2ec1296bc4ddc3448bcd08b0a6d51b4fd3d52d1 | |
parent | 6bda842e788f700c1569e9eabb7bcebbddfef8d4 (diff) |
u5500: move pins to separate file
As on 8500.
ST-Ericsson Linux next: -
ST-Ericsson ID: WP257121
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I0dd20c6b99559fa4690d2d353553a6ebce7fdb90
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/22357
Tested-by: Rabin VINCENT <rabin.vincent@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Conflicts:
arch/arm/mach-ux500/Makefile
-rw-r--r-- | arch/arm/mach-ux500/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-u5500-pins.c | 104 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-u5500.c | 93 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-u5500.h | 2 |
4 files changed, 109 insertions, 93 deletions
diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile index d65ba232c6b..a8052bb815c 100644 --- a/arch/arm/mach-ux500/Makefile +++ b/arch/arm/mach-ux500/Makefile @@ -19,7 +19,8 @@ obj-$(CONFIG_MACH_U8500) += board-mop500.o board-mop500-sdi.o \ board-mop500-mcde.o board-mop500-msp.o board-mop500-bm.o \ obj-$(CONFIG_MACH_U5500) += board-u5500.o board-u5500-sdi.o \ - board-u5500-mcde.o board-u5500-regulators.o + board-u5500-mcde.o board-u5500-regulators.o \ + board-u5500-pins.o obj-$(CONFIG_SMP) += platsmp.o headsmp.o obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o obj-$(CONFIG_LOCAL_TIMERS) += localtimer.o diff --git a/arch/arm/mach-ux500/board-u5500-pins.c b/arch/arm/mach-ux500/board-u5500-pins.c new file mode 100644 index 00000000000..2167c48ca74 --- /dev/null +++ b/arch/arm/mach-ux500/board-u5500-pins.c @@ -0,0 +1,104 @@ +/* + * Copyright (C) ST-Ericsson SA 2011 + * + * License terms: GNU General Public License (GPL) version 2 + */ + +#include <linux/kernel.h> +#include <linux/init.h> +#include <linux/gpio.h> +#include <plat/pincfg.h> +#include <plat/gpio.h> + +#include "pins-db5500.h" +#include "pins.h" + +static pin_cfg_t u5500_pins_default[] = { + /* I2C */ + GPIO3_I2C1_SCL | PIN_INPUT_PULLUP, + GPIO4_I2C1_SDA | PIN_INPUT_PULLUP, + GPIO218_I2C2_SCL | PIN_INPUT_PULLUP, + GPIO219_I2C2_SDA | PIN_INPUT_PULLUP, + + /* Keypad */ + GPIO128_KP_I0 | PIN_INPUT_PULLUP, + GPIO130_KP_I1 | PIN_INPUT_PULLUP, + GPIO132_KP_I2 | PIN_INPUT_PULLUP, + GPIO134_KP_I3 | PIN_INPUT_PULLUP, + GPIO137_KP_O4 | PIN_INPUT_PULLUP, + GPIO139_KP_O5 | PIN_INPUT_PULLUP, + + /* MSP */ + GPIO32_MSP0_TCK | PIN_INPUT_PULLDOWN, + GPIO33_MSP0_TFS | PIN_INPUT_PULLDOWN, + GPIO34_MSP0_TXD | PIN_INPUT_PULLDOWN, + GPIO35_MSP0_RXD | PIN_INPUT_PULLDOWN, + GPIO96_MSP1_TCK | PIN_INPUT_PULLDOWN, + GPIO97_MSP1_TFS | PIN_INPUT_PULLDOWN, + GPIO98_MSP1_TXD | PIN_INPUT_PULLDOWN, + GPIO99_MSP1_RXD | PIN_INPUT_PULLDOWN, + GPIO220_MSP2_TCK | PIN_OUTPUT_LOW, + GPIO221_MSP2_TFS | PIN_OUTPUT_LOW, + GPIO222_MSP2_TXD | PIN_OUTPUT_LOW, + + /* DISPLAY_ENABLE */ + GPIO226_GPIO | PIN_OUTPUT_LOW, + + /* Backlight Enable */ + GPIO224_GPIO | PIN_OUTPUT_HIGH, + + /* MMC0 (POP eMMC) */ + GPIO5_MC0_DAT0 | PIN_INPUT_PULLUP, + GPIO6_MC0_DAT1 | PIN_INPUT_PULLUP, + GPIO7_MC0_DAT2 | PIN_INPUT_PULLUP, + GPIO8_MC0_DAT3 | PIN_INPUT_PULLUP, + GPIO9_MC0_DAT4 | PIN_INPUT_PULLUP, + GPIO10_MC0_DAT5 | PIN_INPUT_PULLUP, + GPIO11_MC0_DAT6 | PIN_INPUT_PULLUP, + GPIO12_MC0_DAT7 | PIN_INPUT_PULLUP, + GPIO13_MC0_CMD | PIN_INPUT_PULLUP, + GPIO14_MC0_CLK | PIN_OUTPUT_LOW, + + /* SPI */ + GPIO167_SPI1_CS0n | PIN_OUTPUT_HIGH, + GPIO168_SPI1_RXD | PIN_INPUT_PULLDOWN, + GPIO169_SPI1_TXD | PIN_OUTPUT_LOW, + GPIO170_SPI1_CLK | PIN_OUTPUT_LOW, + + /* AB5500 */ + GPIO78_IRQn, + + /* TOUCH_IRQ */ + GPIO179_GPIO | PIN_INPUT_PULLUP, + + /* SDI1 (SD-CARD) */ + GPIO191_MC1_DAT0 | PIN_INPUT_PULLUP, + GPIO192_MC1_DAT1 | PIN_INPUT_PULLUP, + GPIO193_MC1_DAT2 | PIN_INPUT_PULLUP, + GPIO194_MC1_DAT3 | PIN_INPUT_PULLUP, + GPIO195_MC1_CLK | PIN_OUTPUT_LOW, + GPIO196_MC1_CMD | PIN_INPUT_PULLUP, + GPIO197_MC1_CMDDIR | PIN_OUTPUT_HIGH, + GPIO198_MC1_FBCLK | PIN_INPUT_NOPULL, + GPIO199_MC1_DAT0DIR | PIN_OUTPUT_HIGH, + /* SD-CARD detect/levelshifter pins */ + GPIO180_GPIO | PIN_INPUT_PULLUP, + GPIO227_GPIO, + GPIO185_GPIO, + + /* SDI3 (SDIO) */ + GPIO171_MC3_DAT0 | PIN_INPUT_PULLUP, + GPIO172_MC3_DAT1 | PIN_INPUT_PULLUP, + GPIO173_MC3_DAT2 | PIN_INPUT_PULLUP, + GPIO174_MC3_DAT3 | PIN_INPUT_PULLUP, + GPIO175_MC3_CMD | PIN_INPUT_PULLUP, + GPIO176_MC3_CLK | PIN_OUTPUT_LOW, + + /* Display & HDMI HW sync */ + GPIO204_LCD_VSI1 | PIN_INPUT_PULLUP, +}; + +void __init u5500_pins_init(void) +{ + nmk_config_pins(u5500_pins_default, ARRAY_SIZE(u5500_pins_default)); +} diff --git a/arch/arm/mach-ux500/board-u5500.c b/arch/arm/mach-ux500/board-u5500.c index 2b86760898e..b9f5fb4468f 100644 --- a/arch/arm/mach-ux500/board-u5500.c +++ b/arch/arm/mach-ux500/board-u5500.c @@ -1,7 +1,6 @@ /* * Copyright (C) ST-Ericsson SA 2010 * - * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson * License terms: GNU General Public License (GPL) version 2 */ @@ -40,95 +39,6 @@ #include "board-u5500.h" /* - * GPIO - */ - -static pin_cfg_t u5500_pins[] = { - /* I2C */ - GPIO3_I2C1_SCL | PIN_INPUT_PULLUP, - GPIO4_I2C1_SDA | PIN_INPUT_PULLUP, - GPIO218_I2C2_SCL | PIN_INPUT_PULLUP, - GPIO219_I2C2_SDA | PIN_INPUT_PULLUP, - - /* Keypad */ - GPIO128_KP_I0 | PIN_INPUT_PULLUP, - GPIO130_KP_I1 | PIN_INPUT_PULLUP, - GPIO132_KP_I2 | PIN_INPUT_PULLUP, - GPIO134_KP_I3 | PIN_INPUT_PULLUP, - GPIO137_KP_O4 | PIN_INPUT_PULLUP, - GPIO139_KP_O5 | PIN_INPUT_PULLUP, - - /* MSP */ - GPIO32_MSP0_TCK | PIN_INPUT_PULLDOWN, - GPIO33_MSP0_TFS | PIN_INPUT_PULLDOWN, - GPIO34_MSP0_TXD | PIN_INPUT_PULLDOWN, - GPIO35_MSP0_RXD | PIN_INPUT_PULLDOWN, - GPIO96_MSP1_TCK | PIN_INPUT_PULLDOWN, - GPIO97_MSP1_TFS | PIN_INPUT_PULLDOWN, - GPIO98_MSP1_TXD | PIN_INPUT_PULLDOWN, - GPIO99_MSP1_RXD | PIN_INPUT_PULLDOWN, - GPIO220_MSP2_TCK | PIN_OUTPUT_LOW, - GPIO221_MSP2_TFS | PIN_OUTPUT_LOW, - GPIO222_MSP2_TXD | PIN_OUTPUT_LOW, - - /* DISPLAY_ENABLE */ - GPIO226_GPIO | PIN_OUTPUT_LOW, - - /* Backlight Enable */ - GPIO224_GPIO | PIN_OUTPUT_HIGH, - - /* MMC0 (POP eMMC) */ - GPIO5_MC0_DAT0 | PIN_INPUT_PULLUP, - GPIO6_MC0_DAT1 | PIN_INPUT_PULLUP, - GPIO7_MC0_DAT2 | PIN_INPUT_PULLUP, - GPIO8_MC0_DAT3 | PIN_INPUT_PULLUP, - GPIO9_MC0_DAT4 | PIN_INPUT_PULLUP, - GPIO10_MC0_DAT5 | PIN_INPUT_PULLUP, - GPIO11_MC0_DAT6 | PIN_INPUT_PULLUP, - GPIO12_MC0_DAT7 | PIN_INPUT_PULLUP, - GPIO13_MC0_CMD | PIN_INPUT_PULLUP, - GPIO14_MC0_CLK | PIN_OUTPUT_LOW, - - /* SPI */ - GPIO167_SPI1_CS0n | PIN_OUTPUT_HIGH, - GPIO168_SPI1_RXD | PIN_INPUT_PULLDOWN, - GPIO169_SPI1_TXD | PIN_OUTPUT_LOW, - GPIO170_SPI1_CLK | PIN_OUTPUT_LOW, - - /* AB5500 */ - GPIO78_IRQn, - - /* TOUCH_IRQ */ - GPIO179_GPIO | PIN_INPUT_PULLUP, - - /* SDI1 (SD-CARD) */ - GPIO191_MC1_DAT0 | PIN_INPUT_PULLUP, - GPIO192_MC1_DAT1 | PIN_INPUT_PULLUP, - GPIO193_MC1_DAT2 | PIN_INPUT_PULLUP, - GPIO194_MC1_DAT3 | PIN_INPUT_PULLUP, - GPIO195_MC1_CLK | PIN_OUTPUT_LOW, - GPIO196_MC1_CMD | PIN_INPUT_PULLUP, - GPIO197_MC1_CMDDIR | PIN_OUTPUT_HIGH, - GPIO198_MC1_FBCLK | PIN_INPUT_NOPULL, - GPIO199_MC1_DAT0DIR | PIN_OUTPUT_HIGH, - /* SD-CARD detect/levelshifter pins */ - GPIO180_GPIO | PIN_INPUT_PULLUP, - GPIO227_GPIO, - GPIO185_GPIO, - - /* SDI3 (SDIO) */ - GPIO171_MC3_DAT0 | PIN_INPUT_PULLUP, - GPIO172_MC3_DAT1 | PIN_INPUT_PULLUP, - GPIO173_MC3_DAT2 | PIN_INPUT_PULLUP, - GPIO174_MC3_DAT3 | PIN_INPUT_PULLUP, - GPIO175_MC3_CMD | PIN_INPUT_PULLUP, - GPIO176_MC3_CLK | PIN_OUTPUT_LOW, - - /* Display & HDMI HW sync */ - GPIO204_LCD_VSI1 | PIN_INPUT_PULLUP, -}; - -/* * LSM303DLH */ @@ -419,8 +329,7 @@ static void __init u5500_uart_init(void) static void __init u5500_init_machine(void) { u5500_init_devices(); - - nmk_config_pins(u5500_pins, ARRAY_SIZE(u5500_pins)); + u5500_pins_init(); u5500_i2c_init(); u5500_msp_init(); diff --git a/arch/arm/mach-ux500/board-u5500.h b/arch/arm/mach-ux500/board-u5500.h index 042b0ceb243..16868025f63 100644 --- a/arch/arm/mach-ux500/board-u5500.h +++ b/arch/arm/mach-ux500/board-u5500.h @@ -14,4 +14,6 @@ struct ab5500_regulator_platform_data; extern struct ab5500_regulator_platform_data u5500_ab5500_regulator_data; +extern void u5500_pins_init(void); + #endif |