summaryrefslogtreecommitdiffstats
path: root/sys/pc98
diff options
context:
space:
mode:
authornyan <nyan@FreeBSD.org>2002-03-25 13:41:06 +0000
committernyan <nyan@FreeBSD.org>2002-03-25 13:41:06 +0000
commit5beeede622f5b786db331d2c80b48add1c20ab60 (patch)
treee61859a83ad8de2b4cde80e54134ecd42bc64cb8 /sys/pc98
parent6ca94509e42dbdb28576fe4ca78b898684a8ee28 (diff)
downloadFreeBSD-src-5beeede622f5b786db331d2c80b48add1c20ab60.zip
FreeBSD-src-5beeede622f5b786db331d2c80b48add1c20ab60.tar.gz
Merged from sys/dev/sio/sio.c revisions 1.366 and 1.369.
Diffstat (limited to 'sys/pc98')
-rw-r--r--sys/pc98/cbus/sio.c12
-rw-r--r--sys/pc98/pc98/sio.c12
2 files changed, 20 insertions, 4 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 */
diff --git a/sys/pc98/pc98/sio.c b/sys/pc98/pc98/sio.c
index 11fe280..65cf662 100644
--- a/sys/pc98/pc98/sio.c
+++ b/sys/pc98/pc98/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 */
OpenPOWER on IntegriCloud