|
@@ -83,8 +83,8 @@ static void at91sam9263ek_nand_hw_init(void)
|
|
|
|
|
|
/* Configure SMC CS3 for NAND/SmartMedia */
|
|
|
at91_sys_write(AT91_SMC_SETUP(3),
|
|
|
- AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) |
|
|
|
- AT91_SMC_NRDSETUP_(0) | AT91_SMC_NCS_RDSETUP_(0));
|
|
|
+ AT91_SMC_NWESETUP_(1) | AT91_SMC_NCS_WRSETUP_(0) |
|
|
|
+ AT91_SMC_NRDSETUP_(1) | AT91_SMC_NCS_RDSETUP_(0));
|
|
|
at91_sys_write(AT91_SMC_PULSE(3),
|
|
|
AT91_SMC_NWEPULSE_(3) | AT91_SMC_NCS_WRPULSE_(3) |
|
|
|
AT91_SMC_NRDPULSE_(3) | AT91_SMC_NCS_RDPULSE_(3));
|
|
@@ -147,7 +147,7 @@ static void at91sam9263ek_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);
|
|
@@ -155,6 +155,11 @@ static void at91sam9263ek_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_PC25),
|
|
|
pin_to_controller(AT91_PIN_PC0) + PIO_PUER);
|