Implement a loadable module for the oltr Olicom Token Ring driver. I

could only get a chance of testing it under 4.3, but together with the
if_oltr.c fixes at least it seems to work now.  If someone has the chance
to test this under -current, please do.

Unfortunaltey, the TR code itself (if_iso88025subr.c) is not written
in a way that would allow to make a seaparate KLD out of it.  By now,
just link it directly into the oltr KLD since it's probably the POLA
to be able to load the TR code together with the only TR hardware
driver we've got by now.

I've got one single unexplained panic (in doreti_switch or somewhere
there, calling a 0xc1XXXXXX address that did no longer belong to the
kernel at all) after unloading the modules once, thus i don't propose
a MFC of this module despite my testing has been done solely on 4.3,
unless someone is really going to test this stuff in -current.
This commit is contained in:
Joerg Wunsch 2001-06-14 15:16:04 +00:00
parent d6287c5081
commit c45b4c1e58
2 changed files with 36 additions and 1 deletions

View File

@ -19,7 +19,7 @@ SUBDIR= 3dfx accf_data accf_http agp aha amr an aue \
# XXX some of these can move to the general case when de-i386'ed
.if ${MACHINE_ARCH} == "i386"
SUBDIR+=aac aic ar asr atspeaker bktr coff el fpu gnufpu ibcs2 mly \
pecoff ray s3 smbfs splash sr streams vesa wi
oltr pecoff ray s3 smbfs splash sr streams vesa wi
.endif
.if ${MACHINE} == "pc98"

35
sys/modules/oltr/Makefile Normal file
View File

@ -0,0 +1,35 @@
# $FreeBSD$
.PATH: ${.CURDIR}/../../contrib/dev/oltr ${.CURDIR}/../../net
KMOD = if_oltr
SRCS = if_oltr.c trlldbm.c trlldhm.c trlldmac.c if_iso88025subr.c \
opt_inet.h opt_inet6.h opt_ipx.h device_if.h bus_if.h pci_if.h
OBJS+= trlld.o
NOMAN=
TR_INET?= 1 # 0/1 requires INET to be configured in the kernel
TR_INET6?= 0 # 0/1 requires INET6 to be configured in the kernel
TR_IPX?= 0 # 0/1 requires IPX to be configured in the kernel
trlld.o:
uudecode < ${.CURDIR}/../../contrib/dev/oltr/i386-${OBJFORMAT}.trlld.o.uu
opt_inet.h:
touch opt_inet.h
.if ${TR_INET} > 0
echo "#define INET 1" > opt_inet.h
.endif
opt_inet6.h:
touch opt_inet6.h
.if ${TR_INET6} > 0
echo "#define INET6 1" > opt_inet6.h
.endif
opt_ipx.h:
touch opt_ipx.h
.if ${TR_IPX} > 0
echo "#define IPX 1" > opt_ipx.h
.endif
.include <bsd.kmod.mk>