diff options
Diffstat (limited to 'sys/pc98/cbus/sio.c')
-rw-r--r-- | sys/pc98/cbus/sio.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sys/pc98/cbus/sio.c b/sys/pc98/cbus/sio.c index 11fe280..65cf662 100644 --- a/sys/pc98/cbus/sio.c +++ b/sys/pc98/cbus/sio.c @@ -136,6 +136,7 @@ #include <isa/isavar.h> +#include <machine/limits.h> #include <machine/resource.h> #include <dev/sio/sioreg.h> @@ -1177,6 +1178,13 @@ sioprobe(dev, xrid, rclk, noprobe) */ /* EXTRA DELAY? */ sio_setreg(com, com_mcr, mcr_image); + + /* + * It seems my Xircom CBEM56G Cardbus modem wants to be reset + * to 8 bits *again*, or else probe test 0 will fail. + * gwk@sgi.com, 4/19/2001 + */ + sio_setreg(com, com_cfcr, CFCR_8BITS); /* * Some pcmcia cards have the "TXRDY bug", so we check everyone @@ -1191,10 +1199,10 @@ sioprobe(dev, xrid, rclk, noprobe) /* Check IIR_TXRDY clear ? */ result = 0; if (failures[6] & IIR_TXRDY) { - /* Nop, Double check with clearing IER */ + /* No, Double check with clearing IER */ sio_setreg(com, com_ier, 0); if (sio_getreg(com, com_iir) & IIR_NOPEND) { - /* Ok. we're familia this gang */ + /* Ok. We discovered TXRDY bug! */ SET_FLAG(dev, COM_C_IIR_TXRDYBUG); } else { /* Unknown, Just omit this chip.. XXX */ |