aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYoshihiro Takahashi <nyan@FreeBSD.org>2001-02-25 08:55:07 +0000
committerYoshihiro Takahashi <nyan@FreeBSD.org>2001-02-25 08:55:07 +0000
commitc41e6d16844191cc5bd6810315f9ee2055f57c7f (patch)
tree0e332df980c2a786c18dafbb07685f986b5e018a
parent3275de7ca5a797bb9238b894213ce2f13e13d325 (diff)
Notes
-rw-r--r--sys/pc98/cbus/sio.c14
-rw-r--r--sys/pc98/pc98/sio.c14
2 files changed, 20 insertions, 8 deletions
diff --git a/sys/pc98/cbus/sio.c b/sys/pc98/cbus/sio.c
index 87f00dd4fe47..3ccfdf3ca9a7 100644
--- a/sys/pc98/cbus/sio.c
+++ b/sys/pc98/cbus/sio.c
@@ -132,7 +132,7 @@
#define COM_IF_MCRS98 0x14 /* same as COM_IF_MC16550II */
#define COM_IF_RSB3000 0x15
#define COM_IF_RSB384 0x16
-#define COM_IF_MODEM_CARD 0x17 /* same as COM_IF_NS16550 */
+#define COM_IF_MODEM_CARD 0x17
#define COM_IF_RSA98III 0x18
#define COM_IF_ESP98 0x19
#define COM_IF_END2 COM_IF_ESP98
@@ -929,7 +929,11 @@ sio_pccard_probe(dev)
{
/* Do not probe IRQ - pccard doesn't turn on the interrupt line */
/* until bus_setup_intr */
+#ifdef PC98
+ SET_FLAG(dev, COM_C_NOPROBE | SET_IFTYPE(COM_IF_MODEM_CARD));
+#else
SET_FLAG(dev, COM_C_NOPROBE);
+#endif
return (sioprobe(dev, 0));
}
@@ -1147,7 +1151,7 @@ sio_isa_probe(dev)
#ifdef PC98
logical_id = isa_get_logicalid(dev);
if (logical_id == 0x0100e4a5) /* RSA-98III */
- device_set_flags(dev, SET_IFTYPE(COM_IF_RSA98III));
+ SET_FLAG(dev, SET_IFTYPE(COM_IF_RSA98III));
#endif
return (sioprobe(dev, 0));
}
@@ -1191,7 +1195,8 @@ sioprobe(dev, xrid)
if (IS_8251(iod.if_type)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid,
0, ~0, 1, RF_ACTIVE);
- } else if (iod.if_type == COM_IF_RSA98III ||
+ } else if (iod.if_type == COM_IF_MODEM_CARD ||
+ iod.if_type == COM_IF_RSA98III ||
isa_get_vendorid(dev)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid, 0, ~0,
if_16550a_type[iod.if_type & 0x0f].iatsz, RF_ACTIVE);
@@ -1729,7 +1734,8 @@ sioattach(dev, xrid)
if (IS_8251(if_type)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid,
0, ~0, 1, RF_ACTIVE);
- } else if (if_type == COM_IF_RSA98III ||
+ } else if (if_type == COM_IF_MODEM_CARD ||
+ if_type == COM_IF_RSA98III ||
isa_get_vendorid(dev)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid, 0, ~0,
if_16550a_type[if_type & 0x0f].iatsz, RF_ACTIVE);
diff --git a/sys/pc98/pc98/sio.c b/sys/pc98/pc98/sio.c
index 87f00dd4fe47..3ccfdf3ca9a7 100644
--- a/sys/pc98/pc98/sio.c
+++ b/sys/pc98/pc98/sio.c
@@ -132,7 +132,7 @@
#define COM_IF_MCRS98 0x14 /* same as COM_IF_MC16550II */
#define COM_IF_RSB3000 0x15
#define COM_IF_RSB384 0x16
-#define COM_IF_MODEM_CARD 0x17 /* same as COM_IF_NS16550 */
+#define COM_IF_MODEM_CARD 0x17
#define COM_IF_RSA98III 0x18
#define COM_IF_ESP98 0x19
#define COM_IF_END2 COM_IF_ESP98
@@ -929,7 +929,11 @@ sio_pccard_probe(dev)
{
/* Do not probe IRQ - pccard doesn't turn on the interrupt line */
/* until bus_setup_intr */
+#ifdef PC98
+ SET_FLAG(dev, COM_C_NOPROBE | SET_IFTYPE(COM_IF_MODEM_CARD));
+#else
SET_FLAG(dev, COM_C_NOPROBE);
+#endif
return (sioprobe(dev, 0));
}
@@ -1147,7 +1151,7 @@ sio_isa_probe(dev)
#ifdef PC98
logical_id = isa_get_logicalid(dev);
if (logical_id == 0x0100e4a5) /* RSA-98III */
- device_set_flags(dev, SET_IFTYPE(COM_IF_RSA98III));
+ SET_FLAG(dev, SET_IFTYPE(COM_IF_RSA98III));
#endif
return (sioprobe(dev, 0));
}
@@ -1191,7 +1195,8 @@ sioprobe(dev, xrid)
if (IS_8251(iod.if_type)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid,
0, ~0, 1, RF_ACTIVE);
- } else if (iod.if_type == COM_IF_RSA98III ||
+ } else if (iod.if_type == COM_IF_MODEM_CARD ||
+ iod.if_type == COM_IF_RSA98III ||
isa_get_vendorid(dev)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid, 0, ~0,
if_16550a_type[iod.if_type & 0x0f].iatsz, RF_ACTIVE);
@@ -1729,7 +1734,8 @@ sioattach(dev, xrid)
if (IS_8251(if_type)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid,
0, ~0, 1, RF_ACTIVE);
- } else if (if_type == COM_IF_RSA98III ||
+ } else if (if_type == COM_IF_MODEM_CARD ||
+ if_type == COM_IF_RSA98III ||
isa_get_vendorid(dev)) {
port = bus_alloc_resource(dev, SYS_RES_IOPORT, &rid, 0, ~0,
if_16550a_type[if_type & 0x0f].iatsz, RF_ACTIVE);