Patchwork [U-Boot] AT91: fix EMAC gpio init in at91sam9260_devices.c

login
register
mail settings
Submitter Reinhard Meyer
Date Dec. 1, 2010, 4:59 a.m.
Message ID <1291179552-12019-1-git-send-email-u-boot@emk-elektronik.de>
Download mbox | patch
Permalink /patch/73694/
State Accepted
Commit accef43145a63535fa38714af469f22d912d6c64
Delegated to: Reinhard Meyer
Headers show

Comments

Reinhard Meyer - Dec. 1, 2010, 4:59 a.m.
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>
---
 arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
Reinhard Meyer - Dec. 5, 2010, 9:02 a.m.
Reinhard Meyer schrieb:
> 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>
> ---
>  arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
Applied to u-boot-atmel/next.
Thanks

Patch

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