summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2019-08-14 09:30:38 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2019-08-14 09:56:08 +0200
commit23f988e8d9e1f9480adeefc4f5b585f3ec15913f (patch)
tree704de01dbc2b8524a1810d387932c7a4940cf582 /arch/arm/boards
parent909934e3a76d665b55565e4f87b1a10c8a3e4b0e (diff)
downloadbarebox-23f988e8d9e1f9480adeefc4f5b585f3ec15913f.tar.gz
barebox-23f988e8d9e1f9480adeefc4f5b585f3ec15913f.tar.xz
pinctrl: i.MX iomux-v1: Make base address initialization unnecessary
So far we have imx_gpio_mode() to configure a pinmux entry for the older i.MX pinmuxes. For this to work imx_iomuxv1_init() must be called beforehand to configure the base address. Simplify this by introducing SoC specific variants of imx_gpio_mode() which also pass the base address. This makes initialization of the base address unnecessary and the functions usable for PBL. Consequently also compile the code for PBL. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards')
-rw-r--r--arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c2
-rw-r--r--arch/arm/boards/freescale-mx21-ads/imx21ads.c2
-rw-r--r--arch/arm/boards/freescale-mx27-ads/imx27ads.c2
-rw-r--r--arch/arm/boards/guf-neso/board.c2
-rw-r--r--arch/arm/boards/phytec-phycard-imx27/pca100.c6
-rw-r--r--arch/arm/boards/phytec-phycore-imx27/pcm038.c4
-rw-r--r--arch/arm/boards/phytec-phycore-imx27/pcm970.c2
-rw-r--r--arch/arm/boards/scb9328/scb9328.c14
8 files changed, 17 insertions, 17 deletions
diff --git a/arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c b/arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c
index f27dcd6f44..63034e2755 100644
--- a/arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c
+++ b/arch/arm/boards/eukrea_cpuimx27/eukrea_cpuimx27.c
@@ -171,7 +171,7 @@ static int eukrea_cpuimx27_devices_init(void)
/* initialize gpios */
for (i = 0; i < ARRAY_SIZE(mode); i++)
- imx_gpio_mode(mode[i]);
+ imx27_gpio_mode(mode[i]);
add_cfi_flash_device(DEVICE_ID_DYNAMIC, 0xC0000000, 32 * 1024 * 1024, 0);
#ifdef CONFIG_EUKREA_CPUIMX27_NOR_64MB
diff --git a/arch/arm/boards/freescale-mx21-ads/imx21ads.c b/arch/arm/boards/freescale-mx21-ads/imx21ads.c
index 8afe9ace51..aa654da494 100644
--- a/arch/arm/boards/freescale-mx21-ads/imx21ads.c
+++ b/arch/arm/boards/freescale-mx21-ads/imx21ads.c
@@ -152,7 +152,7 @@ static int mx21ads_devices_init(void)
/* initizalize gpios */
for (i = 0; i < ARRAY_SIZE(mode); i++)
- imx_gpio_mode(mode[i]);
+ imx21_gpio_mode(mode[i]);
add_cfi_flash_device(DEVICE_ID_DYNAMIC, MX21_CS0_BASE_ADDR,
32 * 1024 * 1024, 0);
diff --git a/arch/arm/boards/freescale-mx27-ads/imx27ads.c b/arch/arm/boards/freescale-mx27-ads/imx27ads.c
index 9818a55137..c0f4e464c1 100644
--- a/arch/arm/boards/freescale-mx27-ads/imx27ads.c
+++ b/arch/arm/boards/freescale-mx27-ads/imx27ads.c
@@ -95,7 +95,7 @@ static int mx27ads_devices_init(void)
/* initizalize gpios */
for (i = 0; i < ARRAY_SIZE(mode); i++)
- imx_gpio_mode(mode[i]);
+ imx27_gpio_mode(mode[i]);
add_cfi_flash_device(DEVICE_ID_DYNAMIC, 0xC0000000, 32 * 1024 * 1024, 0);
diff --git a/arch/arm/boards/guf-neso/board.c b/arch/arm/boards/guf-neso/board.c
index e1cd9098e0..2a64bc14fc 100644
--- a/arch/arm/boards/guf-neso/board.c
+++ b/arch/arm/boards/guf-neso/board.c
@@ -266,7 +266,7 @@ static int neso_devices_init(void)
/* initialize gpios */
for (i = 0; i < ARRAY_SIZE(mode); i++)
- imx_gpio_mode(mode[i]);
+ imx27_gpio_mode(mode[i]);
imx27_add_nand(&nand_info);
imx27_add_fb(&neso_fb_data);
diff --git a/arch/arm/boards/phytec-phycard-imx27/pca100.c b/arch/arm/boards/phytec-phycard-imx27/pca100.c
index 60f1505ccb..7184a59c71 100644
--- a/arch/arm/boards/phytec-phycard-imx27/pca100.c
+++ b/arch/arm/boards/phytec-phycard-imx27/pca100.c
@@ -84,9 +84,9 @@ static void pca100_usb_init(void)
writel(reg, MX27_USB_OTG_BASE_ADDR + 0x184);
/* disable the usb phys */
- imx_gpio_mode((GPIO_PORTB | 23) | GPIO_GPIO | GPIO_IN);
+ imx27_gpio_mode((GPIO_PORTB | 23) | GPIO_GPIO | GPIO_IN);
gpio_direction_output(GPIO_PORTB + 23, 1);
- imx_gpio_mode((GPIO_PORTB | 24) | GPIO_GPIO | GPIO_IN);
+ imx27_gpio_mode((GPIO_PORTB | 24) | GPIO_GPIO | GPIO_IN);
gpio_direction_output(GPIO_PORTB + 24, 1);
}
@@ -131,7 +131,7 @@ static int pca100_devices_init(void)
/* initizalize gpios */
for (i = 0; i < ARRAY_SIZE(mode); i++)
- imx_gpio_mode(mode[i]);
+ imx27_gpio_mode(mode[i]);
pca100_usb_register();
diff --git a/arch/arm/boards/phytec-phycore-imx27/pcm038.c b/arch/arm/boards/phytec-phycore-imx27/pcm038.c
index f1f808116c..5ebef516a7 100644
--- a/arch/arm/boards/phytec-phycore-imx27/pcm038.c
+++ b/arch/arm/boards/phytec-phycore-imx27/pcm038.c
@@ -112,12 +112,12 @@ static int pcm038_init(void)
return 0;
/* Apply delay for STP line to stop ULPI */
- imx_gpio_mode(PCM038_GPIO_OTG_STP | GPIO_GPIO);
+ imx27_gpio_mode(PCM038_GPIO_OTG_STP | GPIO_GPIO);
gpio_direction_output(PCM038_GPIO_OTG_STP, 1);
mdelay(1);
for (i = 0; i < ARRAY_SIZE(pcm038_pins); i++)
- imx_gpio_mode(pcm038_pins[i]);
+ imx27_gpio_mode(pcm038_pins[i]);
imx27_add_fb(&pcm038_fb_data);
diff --git a/arch/arm/boards/phytec-phycore-imx27/pcm970.c b/arch/arm/boards/phytec-phycore-imx27/pcm970.c
index 13bb7c1cf5..b8faec0384 100644
--- a/arch/arm/boards/phytec-phycore-imx27/pcm970.c
+++ b/arch/arm/boards/phytec-phycore-imx27/pcm970.c
@@ -73,7 +73,7 @@ static int pcm970_init(void)
uint32_t i;
for (i = 0; i < ARRAY_SIZE(pcmcia_pins); i++)
- imx_gpio_mode(pcmcia_pins[i] | GPIO_PUEN);
+ imx27_gpio_mode(pcmcia_pins[i] | GPIO_PUEN);
/* Always set PCOE signal to low */
gpio_set_value(GPIO_IDE_PCOE, 0);
diff --git a/arch/arm/boards/scb9328/scb9328.c b/arch/arm/boards/scb9328/scb9328.c
index 697ed4b401..fcdb3de49d 100644
--- a/arch/arm/boards/scb9328/scb9328.c
+++ b/arch/arm/boards/scb9328/scb9328.c
@@ -52,11 +52,11 @@ static int scb9328_devices_init(void)
{
int i;
- imx_gpio_mode(PA23_PF_CS5);
- imx_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 21);
- imx_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 22);
- imx_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 23);
- imx_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 24);
+ imx1_gpio_mode(PA23_PF_CS5);
+ imx1_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 21);
+ imx1_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 22);
+ imx1_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 23);
+ imx1_gpio_mode(GPIO_PORTB | GPIO_GPIO | GPIO_OUT | 24);
for (i = 0; i < ARRAY_SIZE(leds); i++)
led_gpio_register(&leds[i]);
@@ -91,8 +91,8 @@ device_initcall(scb9328_devices_init);
static int scb9328_console_init(void)
{
/* init gpios for serial port */
- imx_gpio_mode(PC11_PF_UART1_TXD);
- imx_gpio_mode(PC12_PF_UART1_RXD);
+ imx1_gpio_mode(PC11_PF_UART1_TXD);
+ imx1_gpio_mode(PC12_PF_UART1_RXD);
barebox_set_model("Synertronixx scb9328");
barebox_set_hostname("scb9328");