|
|
|
@ -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); |
|
|
|
|