diff options
Diffstat (limited to 'board/trab/trab.c')
-rw-r--r-- | board/trab/trab.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/board/trab/trab.c b/board/trab/trab.c index b4ab329..6a758b2 100644 --- a/board/trab/trab.c +++ b/board/trab/trab.c @@ -42,13 +42,13 @@ extern int do_mdm_init; /* defined in common/main.c */ * is that timers are not available yet, so we use a manually timed * loop. */ -#define KBD_MDELAY 1000 -static void mdelay_no_timer (int msec) +#define KBD_MDELAY 5000 +static void udelay_no_timer (int usec) { DECLARE_GLOBAL_DATA_PTR; int i; - int delay = msec * 3; + int delay = usec * 3; for (i = 0; i < delay; i ++) gd->bd->bi_arch_number = 145; } @@ -102,12 +102,12 @@ int board_init () gd->bd->bi_boot_params = 0x0c000100; #ifdef CONFIG_MODEM_SUPPORT - /* This stuff is needed to get interrupts on stop-position - * contact events. + /* This stuff is needed by the CPLD to read keyboard data. * (Copied from the LCD initialization routine.) */ - if (rLCDCON1 == 0) - { + if (rLCDCON1 == 0) { + extern void init_grid_ctrl(void); + rPCCON = (rPCCON & 0xFFFFFF00)| 0x000000AA; rPDCON = (rPDCON & 0xFFFFFF03)| 0x000000A8; #if 0 @@ -118,9 +118,11 @@ int board_init () rLCDCON4 = 0x00000001; rLCDCON5 = 0x00000440; rLCDCON1 = 0x00000B75; + + init_grid_ctrl(); } - mdelay_no_timer (KBD_MDELAY); + udelay_no_timer (KBD_MDELAY); if (key_pressed()) { disable_putc(); /* modem doesn't understand banner etc */ |