summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorMarkus Klotzbuecher <mk@denx.de>2006-03-27 16:01:03 +0200
committerMarkus Klotzbücher <mk@pollux.denx.de>2006-03-27 16:01:03 +0200
commitc855ef6768cf9cb0bc12f4965592dcd5f353686a (patch)
tree7c27d9cb1b1c1821bf0bf1146309457a0e7d17e5 /board
parent2770bcb21c82835a5351176e5b2a9221d7fc8ef9 (diff)
delta board: fix DA9030 reset procedure.
Diffstat (limited to 'board')
-rw-r--r--board/delta/delta.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/board/delta/delta.c b/board/delta/delta.c
index 6ef7e2fc26f..96928a53c3b 100644
--- a/board/delta/delta.c
+++ b/board/delta/delta.c
@@ -89,10 +89,17 @@ static void init_DA9030()
GPIO33 = 0x801; /* SDA = Alt. Fkt. 1 */
/* rising Edge on EXTON */
- GPIO17 = 0x8800;
+ GPIO17 = 0xc800; /* enable pullup */
+ GPDR0 |= (1<<17); /* GPIO17 is output */
+ GSDR0 = (1<<17);
+ GPCR0 = (1<<17); /* drive GPIO17 low */
udelay(5);
- GPIO17 = 0xc800;
- udelay(100000); /* wait for DA9030 */
+ GPSR0 = (1<<17); /* drive GPIO17 high */
+#if CFG_DA9030_EXTON_DELAY
+ udelay((unsigned long) CFG_DA9030_EXTON_DELAY); /* wait for DA9030 */
+#endif
+ GPCR0 = (1<<17); /* drive GPIO17 low */
+ GPIO17 = 0x8800; /* disable pullup */
/* reset the watchdog and go active (0xec) */
val = (SYS_CONTROL_A_HWRES_ENABLE |