diff options
author | Federico G. Schwindt <fgsch@cvs.openbsd.org> | 1998-12-15 07:12:58 +0000 |
---|---|---|
committer | Federico G. Schwindt <fgsch@cvs.openbsd.org> | 1998-12-15 07:12:58 +0000 |
commit | f8856540e6c5c391a4a24363c2dab1771b260c19 (patch) | |
tree | 135586c590caae080043add9b038a41e3430c3ce /sys/dev/ic | |
parent | 8c52ec1cbfe87f032a8ae928067ea5380f51a38b (diff) |
Sync with NetBSD (no detach updates yet).
This should fix pcic_chip_socket_enable() to work on more machines.
Diffstat (limited to 'sys/dev/ic')
-rw-r--r-- | sys/dev/ic/i82365.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/sys/dev/ic/i82365.c b/sys/dev/ic/i82365.c index 2c5a75f9f09..fc5a3458d06 100644 --- a/sys/dev/ic/i82365.c +++ b/sys/dev/ic/i82365.c @@ -1,4 +1,4 @@ -/* $OpenBSD: i82365.c,v 1.1 1998/09/11 07:53:57 fgsch Exp $ */ +/* $OpenBSD: i82365.c,v 1.2 1998/12/15 07:12:57 fgsch Exp $ */ /* $NetBSD: i82365.c,v 1.10 1998/06/09 07:36:55 thorpej Exp $ */ /* @@ -1042,7 +1042,8 @@ pcic_wait_ready(h) } #ifdef DIAGNOSTIC - printf("pcic_wait_ready ready never happened\n"); + printf("pcic_wait_ready: ready never happened, status = %02x\n", + pcic_read(h, PCIC_IF_STATUS)); #endif } @@ -1067,27 +1068,26 @@ pcic_chip_socket_enable(pch) /* power up the socket */ - pcic_write(h, PCIC_PWRCTL, PCIC_PWRCTL_PWR_ENABLE); + pcic_write(h, PCIC_PWRCTL, PCIC_PWRCTL_DISABLE_RESETDRV + | PCIC_PWRCTL_PWR_ENABLE); /* * wait 100ms until power raise (Tpr) and 20ms to become * stable (Tsu(Vcc)). + * + * some machines require some more time to be settled + * (another 200ms is added here). */ - delay((100 + 20) * 1000); + delay((100 + 20 + 200) * 1000); - pcic_write(h, PCIC_PWRCTL, PCIC_PWRCTL_PWR_ENABLE | PCIC_PWRCTL_OE); + pcic_write(h, PCIC_PWRCTL, PCIC_PWRCTL_DISABLE_RESETDRV | PCIC_PWRCTL_OE + | PCIC_PWRCTL_PWR_ENABLE); + pcic_write(h, PCIC_INTR, 0); -#if 0 /* * hold RESET at least 10us. */ delay(10); -#else - /* - * at least one card i've tested needs this. -fgsch - */ - delay(250 * 1000); -#endif /* clear the reset flag */ |