Fix:
drivers/mmc/libmmc.o: In function `mmc_legacy_init':
drivers/mmc/pxa_mmc.c:565: undefined reference to `set_GPIO_mode'
drivers/mmc/pxa_mmc.c:566: undefined reference to `set_GPIO_mode'

Re-add set_GPIO_mode() which has been removed by commit
d10237d275300562bbfecbbe2f59a97cfb9dc180 (PXA: Separate
PXA2xx CPU init).

Signed-off-by: Anatolij Gustschin <ag...@denx.de>
Cc: Marek Vasut <marek.va...@gmail.com>
---
 arch/arm/cpu/pxa/pxa2xx.c |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c
index 09e8177..42fb4fc 100644
--- a/arch/arm/cpu/pxa/pxa2xx.c
+++ b/arch/arm/cpu/pxa/pxa2xx.c
@@ -299,3 +299,28 @@ void reset_cpu(ulong ignored)
        for (;;)
                ;
 }
+
+#ifndef CONFIG_CPU_MONAHANS
+void set_GPIO_mode(int gpio_mode)
+{
+       int gpio = gpio_mode & GPIO_MD_MASK_NR;
+       int fn = (gpio_mode & GPIO_MD_MASK_FN) >> 8;
+       int val;
+
+       /* This below changes direction setting of GPIO "gpio" */
+       val = readl(GPDR(gpio));
+
+       if (gpio_mode & GPIO_MD_MASK_DIR)
+               val |= GPIO_bit(gpio);
+       else
+               val &= ~GPIO_bit(gpio);
+
+       writel(val, GPDR(gpio));
+
+       /* This below updates only AF of GPIO "gpio" */
+       val = readl(GAFR(gpio));
+       val &= ~(0x3 << (((gpio) & 0xf) * 2));
+       val |= fn << (((gpio) & 0xf) * 2);
+       writel(val, GAFR(gpio));
+}
+#endif /* CONFIG_CPU_MONAHANS */
-- 
1.7.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to