summaryrefslogtreecommitdiffstats
path: root/sys/conf
diff options
context:
space:
mode:
authorjhay <jhay@FreeBSD.org>2002-02-16 15:12:14 +0000
committerjhay <jhay@FreeBSD.org>2002-02-16 15:12:14 +0000
commita6fbc8577e59b0369bb7a6af91e8b6a4a20829a2 (patch)
treea1cbdb342a7c5e53ca19b8b1853265d6794be13b /sys/conf
parent4c0d10cd1b5a5716ef37c0b77c6255d4532b9d02 (diff)
downloadFreeBSD-src-a6fbc8577e59b0369bb7a6af91e8b6a4a20829a2.zip
FreeBSD-src-a6fbc8577e59b0369bb7a6af91e8b6a4a20829a2.tar.gz
Add the puc (PCI "Universal" Communications) driver. The idea and some of
the structure definitions come from NetBSD to make it easier to share card definitions. The driver only acts as a shim between the pci bus and the sio driver. Later pci parallel ports could also be supported through this driver. Support for most single and multiport pci serial cards should be as simple as adding its definition to pucdata.c Tested with the following pci cards: Moxa Industio CP-114, 4 port RS-232,RS-422/485 Syba Tech Ltd. PCI-4S2P-550-ECP, 4 port RS-232 + 2 parallel ports Netmos NM9835 PCI-2S-550, 2 port RS-232
Diffstat (limited to 'sys/conf')
-rw-r--r--sys/conf/NOTES11
-rw-r--r--sys/conf/files.i3863
-rw-r--r--sys/conf/options.i3862
3 files changed, 16 insertions, 0 deletions
diff --git a/sys/conf/NOTES b/sys/conf/NOTES
index eeec5e8..7a97e43 100644
--- a/sys/conf/NOTES
+++ b/sys/conf/NOTES
@@ -1700,6 +1700,17 @@ options COM_MULTIPORT #code for some cards with shared IRQs
# 0x20000 enable hardware RTS/CTS and larger FIFOs. Only works for
# ST16650A-compatible UARTs.
+# PCI Universal Communications driver
+# Supports various single and multi port PCI serial cards. Maybe later
+# also the parallel ports on combination serial/parallel cards. New cards
+# can be added in srs/sys/dev/pucdata.c.
+#
+# If the PUC_FASTINTR option is used the driver will try to use fast
+# interrupts. The card must then be the only user of that interrupt.
+# Interrupts cannot be shared when using PUC_FASTINTR.
+device puc
+options PUC_FASTINTR
+
#
# Network interfaces:
#
diff --git a/sys/conf/files.i386 b/sys/conf/files.i386
index 1aac8fc..314da6b 100644
--- a/sys/conf/files.i386
+++ b/sys/conf/files.i386
@@ -115,6 +115,8 @@ dev/kbd/kbd.c optional sc
dev/kbd/kbd.c optional ukbd
dev/kbd/kbd.c optional vt
dev/lnc/if_lnc_isa.c optional lnc isa
+dev/puc/puc.c optional puc
+dev/puc/pucdata.c optional puc
dev/sbni/if_sbni.c optional sbni
dev/sbni/if_sbni_isa.c optional sbni isa
dev/sbni/if_sbni_pci.c optional sbni pci
@@ -123,6 +125,7 @@ dev/sio/sio_isa.c optional sio isa
dev/sio/sio_pccard.c optional sio card
dev/sio/sio_pccard.c optional sio pccard
dev/sio/sio_pci.c optional sio pci
+dev/sio/sio_puc.c optional sio puc
dev/sr/if_sr_isa.c optional sr isa
dev/syscons/apm/apm_saver.c optional apm_saver apm
dev/syscons/schistory.c count sc
diff --git a/sys/conf/options.i386 b/sys/conf/options.i386
index 3ef3f2e..b505dbd 100644
--- a/sys/conf/options.i386
+++ b/sys/conf/options.i386
@@ -107,6 +107,8 @@ PSM_HOOKRESUME opt_psm.h
PSM_RESETAFTERSUSPEND opt_psm.h
PSM_DEBUG opt_psm.h
+PUC_FASTINTR opt_puc.h
+
ATKBD_DFLT_KEYMAP opt_atkbd.h
KBD_DISABLE_KEYMAP_LOAD opt_kbd.h
OpenPOWER on IntegriCloud