summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorkato <kato@FreeBSD.org>1999-12-26 05:10:14 +0000
committerkato <kato@FreeBSD.org>1999-12-26 05:10:14 +0000
commitd254362c3322e35ac1212c8ebd1fd2e488edd3ef (patch)
treeb5a61054e0490cc24ffdf43c062afdd03087113d /sys
parente98239356251c8e9aaff637715dcfc7b60328365 (diff)
downloadFreeBSD-src-d254362c3322e35ac1212c8ebd1fd2e488edd3ef.zip
FreeBSD-src-d254362c3322e35ac1212c8ebd1fd2e488edd3ef.tar.gz
Added Allied Telesis SIU-98-D support.
Submitted by: Isizu Takaaki <isizu-t01@aso-group.co.jp> chi@bd.mbn.or.jp (Chiharu Shibata) (w/ minor change by kato)
Diffstat (limited to 'sys')
-rw-r--r--sys/pc98/conf/GENERIC22
-rw-r--r--sys/pc98/conf/GENERIC9822
-rw-r--r--sys/pc98/pc98/if_ed.c23
3 files changed, 42 insertions, 25 deletions
diff --git a/sys/pc98/conf/GENERIC b/sys/pc98/conf/GENERIC
index 9d0d4c0..850ac41 100644
--- a/sys/pc98/conf/GENERIC
+++ b/sys/pc98/conf/GENERIC
@@ -233,16 +233,18 @@ device xl0 # 3Com 3c90x (``Boomerang'', ``Cyclone'')
#
# FE_8BIT_SUPPORT is needed to support LAC-98
#
-#device ed0 at isa? port 0x00d0 irq 6
-#device ed5 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0x600000
-#device ed1 at isa? port 0x00d8 irq 6 flags 0x200000
-#device ed3 at isa? port 0x00d0 irq 6 flags 0x400000
-#device ed4 at isa? port 0x56d0 irq 5 flags 0x500000
-#device ed2 at isa? port 0x00d8 irq 6 flags 0x300000
-#device ed7 at isa? port 0x00d0 irq 6 flags 0x900000
-#device ed6 at isa? port 0x0770 irq 6 flags 0x800000
-#device ed9 at isa? port 0x03d0 irq 6 flags 0xb00000
-#device ed8 at isa? port 0xa3d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0xa00000
+device ed0 at isa? port 0x00d0 irq 6
+device ed5 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0x600000
+device ed1 at isa? port 0x00d8 irq 6 flags 0x200000
+device ed3 at isa? port 0x00d0 irq 6 flags 0x400000
+device ed4 at isa? port 0x56d0 irq 5 flags 0x500000
+device ed2 at isa? port 0x00d8 irq 6 flags 0x300000
+device ed7 at isa? port 0x00d0 irq 6 flags 0x900000
+device ed6 at isa? port 0x0770 irq 6 flags 0x800000
+device ed9 at isa? port 0x03d0 irq 6 flags 0xb00000
+device ed8 at isa? port 0xa3d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0xa00000
+device ed11 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 32768 flags 0x610000
+
# NOTE: This removes the isa attachment so that the pccard unit numbers
# come out right.
device ep0 at isa? port 0x40d0 irq 3
diff --git a/sys/pc98/conf/GENERIC98 b/sys/pc98/conf/GENERIC98
index 9d0d4c0..850ac41 100644
--- a/sys/pc98/conf/GENERIC98
+++ b/sys/pc98/conf/GENERIC98
@@ -233,16 +233,18 @@ device xl0 # 3Com 3c90x (``Boomerang'', ``Cyclone'')
#
# FE_8BIT_SUPPORT is needed to support LAC-98
#
-#device ed0 at isa? port 0x00d0 irq 6
-#device ed5 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0x600000
-#device ed1 at isa? port 0x00d8 irq 6 flags 0x200000
-#device ed3 at isa? port 0x00d0 irq 6 flags 0x400000
-#device ed4 at isa? port 0x56d0 irq 5 flags 0x500000
-#device ed2 at isa? port 0x00d8 irq 6 flags 0x300000
-#device ed7 at isa? port 0x00d0 irq 6 flags 0x900000
-#device ed6 at isa? port 0x0770 irq 6 flags 0x800000
-#device ed9 at isa? port 0x03d0 irq 6 flags 0xb00000
-#device ed8 at isa? port 0xa3d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0xa00000
+device ed0 at isa? port 0x00d0 irq 6
+device ed5 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0x600000
+device ed1 at isa? port 0x00d8 irq 6 flags 0x200000
+device ed3 at isa? port 0x00d0 irq 6 flags 0x400000
+device ed4 at isa? port 0x56d0 irq 5 flags 0x500000
+device ed2 at isa? port 0x00d8 irq 6 flags 0x300000
+device ed7 at isa? port 0x00d0 irq 6 flags 0x900000
+device ed6 at isa? port 0x0770 irq 6 flags 0x800000
+device ed9 at isa? port 0x03d0 irq 6 flags 0xb00000
+device ed8 at isa? port 0xa3d0 irq 6 iomem 0xd0000 iosiz 16384 flags 0xa00000
+device ed11 at isa? port 0x00d0 irq 6 iomem 0xd0000 iosiz 32768 flags 0x610000
+
# NOTE: This removes the isa attachment so that the pccard unit numbers
# come out right.
device ep0 at isa? port 0x40d0 irq 3
diff --git a/sys/pc98/pc98/if_ed.c b/sys/pc98/pc98/if_ed.c
index 6cda964..b363288 100644
--- a/sys/pc98/pc98/if_ed.c
+++ b/sys/pc98/pc98/if_ed.c
@@ -1923,14 +1923,24 @@ ed_probe_SIC98(isa_dev)
/* Reset card to force it into a known state. */
outb(sc->asic_addr, 0x00);
DELAY(100);
- outb(sc->asic_addr, 0x94);
- DELAY(100);
- outb(sc->asic_addr, 0x94);
+ if (ED_TYPE98SUB(isa_dev->id_flags) == 0) {
+ /* SIC-98/SIU-98 */
+ outb(sc->asic_addr, 0x94);
+ DELAY(100);
+ outb(sc->asic_addr, 0x94);
+ } else {
+ /* SIU-98-D */
+ outb(sc->asic_addr, 0x80);
+ DELAY(100);
+ outb(sc->asic_addr, 0x94);
+ DELAY(100);
+ outb(sc->asic_addr, 0x9e);
+ }
DELAY(100);
/* Here we check the card ROM, if the checksum passes, and the
* type code and ethernet address check out, then we know we have
- * a SIC card.
+ * an SIC card.
*/
sum = sc->mem_start[6 * 2];
for (i = 0; i < ETHER_ADDR_LEN; ++i)
@@ -1954,7 +1964,10 @@ ed_probe_SIC98(isa_dev)
/*
* SIC RAM page 0x0000-0x3fff(or 0x7fff)
*/
- outb(sc->asic_addr, 0x90);
+ if (ED_TYPE98SUB(isa_dev->id_flags) == 0)
+ outb(sc->asic_addr, 0x90);
+ else
+ outb(sc->asic_addr, 0x8e);
DELAY(100);
/*
OpenPOWER on IntegriCloud