summaryrefslogtreecommitdiff
path: root/board/atmel/at91cap9adk/at91cap9adk.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2008-07-07 00:47:58 +0200
committerWolfgang Denk <wd@denx.de>2008-07-07 00:47:58 +0200
commit4e0018f1cf91b3f38f8478d6a174c198b72fe6df (patch)
tree8f94730386fbc7721109cbd71379ea55e5fd7f00 /board/atmel/at91cap9adk/at91cap9adk.c
parentb223017f081d7e0daa33ad17a3cd05b0c1f7d9ba (diff)
parentd3bcdf838e2991d58571308fa6e04ca335bc06e8 (diff)
downloadu-boot-imx-4e0018f1cf91b3f38f8478d6a174c198b72fe6df.zip
u-boot-imx-4e0018f1cf91b3f38f8478d6a174c198b72fe6df.tar.gz
u-boot-imx-4e0018f1cf91b3f38f8478d6a174c198b72fe6df.tar.bz2
Merge branch 'master' of git://www.denx.de/git/u-boot-at91
Diffstat (limited to 'board/atmel/at91cap9adk/at91cap9adk.c')
-rw-r--r--board/atmel/at91cap9adk/at91cap9adk.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/board/atmel/at91cap9adk/at91cap9adk.c b/board/atmel/at91cap9adk/at91cap9adk.c
index a3eaf19..c5082a0 100644
--- a/board/atmel/at91cap9adk/at91cap9adk.c
+++ b/board/atmel/at91cap9adk/at91cap9adk.c
@@ -196,7 +196,7 @@ static void at91cap9_macb_hw_init(void)
/* Need to reset PHY -> 500ms reset */
at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY |
- AT91_RSTC_ERSTL | (0x0D << 8) |
+ (AT91_RSTC_ERSTL & (0x0D << 8)) |
AT91_RSTC_URSTEN);
at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_EXTRST);
@@ -204,6 +204,11 @@ static void at91cap9_macb_hw_init(void)
/* Wait for end hardware reset */
while (!(at91_sys_read(AT91_RSTC_SR) & AT91_RSTC_NRSTL));
+ /* Restore NRST value */
+ at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY |
+ (AT91_RSTC_ERSTL & (0x0 << 8)) |
+ AT91_RSTC_URSTEN);
+
/* Re-enable pull-up */
writel(pin_to_mask(AT91_PIN_PB22) |
pin_to_mask(AT91_PIN_PB25) |