summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReinhard Meyer <u-boot@emk-elektronik.de>2010-12-01 05:49:53 +0100
committerReinhard Meyer <u-boot@emk-elektronik.de>2010-12-07 16:36:40 +0100
commitaccef43145a63535fa38714af469f22d912d6c64 (patch)
tree522aa9cb316680bdea2882a4aa8cb2c2ed8345b5
parent2aed9d14cc167385c158f78a3d12b46fd226b499 (diff)
downloadu-boot-imx-accef43145a63535fa38714af469f22d912d6c64.zip
u-boot-imx-accef43145a63535fa38714af469f22d912d6c64.tar.gz
u-boot-imx-accef43145a63535fa38714af469f22d912d6c64.tar.bz2
AT91: fix EMAC gpio init in at91sam9260_devices.c
The AT91SAM9G20 BOOT ROM apparently initializes PA23 and PA24 to multi drive (open drain). Revert this, if those pins are going to be used for MII. Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
-rw-r--r--arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
index f699f4d..c1822b7 100644
--- a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
+++ b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c
@@ -204,6 +204,11 @@ void at91_macb_hw_init(void)
#else
at91_set_b_periph(AT91_PIO_PORTA, 23, 0); /* ETX2 */
at91_set_b_periph(AT91_PIO_PORTA, 24, 0); /* ETX3 */
+#if defined(CONFIG_AT91SAM9G20)
+ /* 9G20 BOOT ROM initializes those pins to multi-drive, undo that */
+ at91_set_pio_multi_drive(AT91_PIO_PORTA, 23, 0);
+ at91_set_pio_multi_drive(AT91_PIO_PORTA, 24, 0);
+#endif
#endif
at91_set_b_periph(AT91_PIO_PORTA, 22, 0); /* ETXER */
#endif