diff options
Diffstat (limited to 'board/icecube')
-rw-r--r-- | board/icecube/icecube.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/board/icecube/icecube.c b/board/icecube/icecube.c index 15def0c..07c25ed 100644 --- a/board/icecube/icecube.c +++ b/board/icecube/icecube.c @@ -288,6 +288,8 @@ void init_ide_reset (void) /* Configure PSC1_4 as GPIO output for ATA reset */ *(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_PSC1_4; *(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_PSC1_4; + /* Deassert reset */ + *(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4; } void ide_set_reset (int idereset) @@ -296,6 +298,8 @@ void ide_set_reset (int idereset) if (idereset) { *(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4; + /* Make a delay. MPC5200 spec says 25 usec min */ + udelay(500000); } else { *(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4; } |