From a6fbc8577e59b0369bb7a6af91e8b6a4a20829a2 Mon Sep 17 00:00:00 2001 From: jhay Date: Sat, 16 Feb 2002 15:12:14 +0000 Subject: 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 --- sys/conf/NOTES | 11 +++++++++++ sys/conf/files.i386 | 3 +++ sys/conf/options.i386 | 2 ++ 3 files changed, 16 insertions(+) (limited to 'sys/conf') 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 -- cgit v1.1