NetBSD/sys/dev/pci
thorpej 3e3fdc01e9 * After testing for DD on a descriptor, and finding it clear,
sync that descriptor with PREREAD to make sure that it is evicted
  from the data cache.  From Allen Briggs.
* With the above bug fixed, stop using BUS_DMA_COHERENT, resulting in
  a fairly decent performance improvement on systems where BUS_DMA_COHERENT
  causes descriptors to be accessed uncached (most painful in wm_start()).
2002-08-17 20:58:04 +00:00
..
bktr bcmp -> memcmp. 2002-05-22 16:03:14 +00:00
Makefile Install pcidevs.h, pcidevs_data.h, pciio.h, pcireg.h. 2001-09-13 21:52:30 +00:00
Makefile.pcidevs
README
aac_pci.c PR 17719 from Mark Davies: Additional Adaptec RAID controller types. 2002-08-02 12:44:42 +00:00
adv_pci.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
adw_pci.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
agp.c -avoid lock leak in error case 2002-08-11 12:40:47 +00:00
agp_ali.c add RCSID 2001-11-13 07:48:40 +00:00
agp_amd.c Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
agp_i810.c update the is_bound flag for local memory too 2002-08-11 12:36:21 +00:00
agp_intel.c Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
agp_sis.c add RCSID 2001-11-13 07:48:40 +00:00
agp_via.c Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
agpreg.h AGP GART support code. Originally written by Doug Rabson for FreeBSD, 2001-09-10 10:01:00 +00:00
agpvar.h Don't map the aperture into KVA, it isn't needed. 2001-10-01 21:54:48 +00:00
ahc_pci.c Presence looks better with a 'c' instead of an 's'. 2001-11-21 19:01:31 +00:00
amdpm.c Collect random number from AMD 768MPX power management controller. 2002-06-02 02:44:27 +00:00
amdpmreg.h Collect random number from AMD 768MPX power management controller. 2002-06-02 02:44:27 +00:00
amr.c SIMPLEQ rototill: 2002-06-01 23:50:52 +00:00
amrreg.h Bare-bones driver for AMI RAID. Parts taken from FreeBSD. This was tried a 2002-01-30 14:35:43 +00:00
amrvar.h Bare-bones driver for AMI RAID. Parts taken from FreeBSD. This was tried a 2002-01-30 14:35:43 +00:00
auich.c Fix division-by-zero when auich_set_params() is called before auich_calibrate(). 2002-08-16 11:22:13 +00:00
auichreg.h - Port clock calibration code (auich_calibrate) from ich.c of FreeBSD to solve 2002-08-07 10:31:09 +00:00
autri.c Fix playback problem on SiS7018. 2002-05-30 17:04:13 +00:00
autrireg.h Fix playback problem on SiS7018. 2002-05-30 17:04:13 +00:00
autrivar.h ANSIfy driver. 2001-11-18 17:15:48 +00:00
auvia.c Return 0 when no interrupt was handled. 2002-04-02 16:02:38 +00:00
auviavar.h
bha_pci.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
btvmei.c Don't "extern int cold;" - this is in <sys/kernel.h>. 2002-03-04 02:19:07 +00:00
btvmeii.c Don't "extern int cold;" - this is in <sys/kernel.h>. 2002-03-04 02:19:07 +00:00
btvmeireg.h Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
btvmeivar.h
cac_pci.c Adapt to new bridge name. 2002-05-15 14:15:17 +00:00
cmpci.c Fix typo so that 48kHz can be set. From Stephen Ma in kern/15456. 2002-02-02 11:18:42 +00:00
cmpcireg.h Re-implement the mixer 2001-11-04 06:57:40 +00:00
cmpcivar.h Re-implement the mixer 2001-11-04 06:57:40 +00:00
com_puc.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
cs428x.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
cs428x.h rewrite suspend/resume routine. If you suspend while playing audio, 2001-04-18 01:35:06 +00:00
cs428xreg.h
cs4280.c Some casts in printf(). 2002-05-31 10:54:34 +00:00
cs4280_image.h
cs4280reg.h
cs4281.c Print some error messages when the codec fails to initialise (some errors 2002-05-15 09:55:45 +00:00
cs4281reg.h
cy82c693.c cleanup RCSID 2001-11-13 07:35:02 +00:00
cy82c693reg.h
cy82c693var.h
cy_pci.c add RCSID 2001-11-13 07:48:40 +00:00
cz.c Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for 2002-03-17 19:40:26 +00:00
czreg.h
devlist2h.awk
dpt_pci.c add RCSID 2001-11-13 07:48:40 +00:00
eap.c Mask MCCB interrupts since they are not currently handled 2002-07-04 02:20:22 +00:00
eapreg.h
ehci_pci.c Use the correct years for copyright. 2002-02-14 21:58:30 +00:00
emuxki.c enable the joystick port on attach, too 2002-02-02 18:10:28 +00:00
emuxkireg.h Whitespace cleanup, streight from Yannick Montulet. 2001-12-23 22:52:49 +00:00
emuxkivar.h Merge in changes sent by Michael Shalayeff, from OpenBSD port of this driver: 2001-12-23 23:14:59 +00:00
esa.c audit bitmask test mistake (s/&&/&/). from openbsd 2002-08-08 15:08:55 +00:00
esadsp.h Integrate recording support into the driver. Not very heavily tested yet. 2002-01-07 07:33:09 +00:00
esareg.h Fix another typo that I missed last time (foo -> ESA_foo) 2002-03-06 18:30:31 +00:00
esavar.h Add multiple voice support to the ESS Allegro-1 / Maestro-3 family of 2002-03-16 14:34:00 +00:00
esiop_pci.c More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
esm.c Use standard PCI power management definitions from pcireg.h instead 2002-01-14 19:24:39 +00:00
esmreg.h Use standard PCI power management definitions from pcireg.h instead 2002-01-14 19:24:39 +00:00
esmvar.h Avoid an "unmamed fields" warning (gcc 3.1). 2001-12-31 22:06:47 +00:00
eso.c Add a joystick attachment to the ESS Solo-1 driver. 2002-04-25 00:52:21 +00:00
esoreg.h
esovar.h
files.agp Give each AGP controller its own attribute, and let the "agpbus" 2001-09-15 01:32:10 +00:00
files.pci Pull in tea5757.c for the mr driver. Fixes kern/17864. 2002-08-06 23:09:10 +00:00
fms.c add RCSID 2001-11-13 07:48:40 +00:00
fmsvar.h
fwlynx_pci.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
fwohci_pci.c OCHI -> OHCI 2002-01-26 16:30:00 +00:00
hifn7751.c Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
hifn7751reg.h
hifn7751var.h
i82365_pci.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
i82365_pcivar.h
icp_pci.c Match anything with PCI_VENDOR_VORTEX, then use a heuristic to determine the 2002-04-24 15:08:48 +00:00
if_an_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_bge.c Correct obviously switched args to memset() 2002-07-18 02:07:13 +00:00
if_bgereg.h Give BCM5700 Ax and Bx revs the BGE_QUIRK_LINK_STATE_BROKEN quirk, 2002-07-13 22:31:18 +00:00
if_de.c make an auto const variable static. 2002-06-08 17:10:02 +00:00
if_devar.h withough -> without 2001-06-13 10:45:57 +00:00
if_en_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_ep_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_epic_pci.c recognize a SMC9432BTX from PCI subsys id and tell the bus independant 2002-07-15 17:23:06 +00:00
if_esh_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_ex_pci.c Also save/restore the PCI_INTERRUPT_REG. 2002-07-01 16:15:35 +00:00
if_fpa.c Call malloc(9) with M_ZERO flag instead of bzero() after malloc(). 2002-01-14 13:39:14 +00:00
if_fxp_pci.c add support intel C-ICH's embeded Ether MACs. 2002-07-22 08:25:45 +00:00
if_gem_pci.c Match Apple GMAC id #3. 2002-07-09 23:57:59 +00:00
if_gsip.c add RCSID 2001-11-13 07:48:40 +00:00
if_hme_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_le_pci.c Explicitly write explicitly without a second e. 2001-11-21 17:33:26 +00:00
if_levar.h
if_lmc.c Move net/if_sppp.h to net/if_spppvar.h, create a new net/if_sppp.h 2002-01-04 12:21:24 +00:00
if_lmc_common.c Move net/if_sppp.h to net/if_spppvar.h, create a new net/if_sppp.h 2002-01-04 12:21:24 +00:00
if_lmc_media.c Move net/if_sppp.h to net/if_spppvar.h, create a new net/if_sppp.h 2002-01-04 12:21:24 +00:00
if_lmc_nbsd.c Print out interrupt we attached to. 2002-05-09 20:20:18 +00:00
if_lmc_types.h LMC_CTL_LEN1 and LMC_CTL_LEN2 extracted each other's fields. Stop doing 2002-05-09 00:58:45 +00:00
if_lmcioctl.h Make the LMC driver bus_dma and endian clean (big-endian mode does not appear 2001-08-27 17:47:35 +00:00
if_lmcvar.h * Add __unused___ to lmc_system_errors, since it is not used by 2002-05-31 17:53:03 +00:00
if_ne_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_ntwoc_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_ntwoc_pcireg.h
if_pcn.c Fix a typo which caused the wrong register to be updated when 2002-08-02 01:12:32 +00:00
if_pcnreg.h Fix typo in copyright notice. 2001-11-29 17:15:44 +00:00
if_rtk_pci.c TAB/space cosmetics 2002-02-06 12:43:05 +00:00
if_sf_pci.c add RCSID 2001-11-13 07:48:40 +00:00
if_sip.c * Hard-code EXTSR_1000XFDX|EXTSR_1000XHDX for reads of the MII_EXTSR 2002-08-16 07:10:56 +00:00
if_sipreg.h * Give symbolic names to the CFG bits in the EEPROM. 2002-06-30 18:04:12 +00:00
if_ste.c STE_CarrierSenseErrors is 8bit wide, not 16bit. 2002-06-05 16:27:29 +00:00
if_stereg.h Typo fix 2002-06-24 16:55:17 +00:00
if_stge.c add RCSID 2001-11-13 07:48:40 +00:00
if_stgereg.h Driver for the Sundance Tech./Tamarack TC9021 Gigabit Ethernet 2001-07-25 00:11:51 +00:00
if_ti.c Add missing BUS_DMA_NOWAIT to bus_dmamap_load_mbuf() calls. Should fix 2002-07-16 20:20:01 +00:00
if_tireg.h IFM_1000_TX -> IFM_1000_T, as (breifly) discussed on tech-net. 2001-06-30 17:53:58 +00:00
if_tl.c Fix two typos in comments. kern/16386 by Sean Davis. 2002-04-17 09:16:27 +00:00
if_tlp_pci.c Remove TLP_MATCH_* options. 2002-04-17 02:19:13 +00:00
if_tlregs.h Improvement: allocate one page of dmamem for Rx, Tx and nullbuff instead of 2001-08-06 19:20:26 +00:00
if_tlvar.h - Allocate control structures at attach time rather than at init time. 2001-09-20 10:04:10 +00:00
if_vr.c my card prints transmit aborted and then hangs. Let's try to reset it. 2002-07-28 15:41:00 +00:00
if_vrreg.h
if_wi_pci.c move wi_pci_reset() from ic/wi.c to pci/if_wi_pci.c, where is belongs 2002-04-04 17:43:31 +00:00
if_wm.c * After testing for DD on a descriptor, and finding it clear, 2002-08-17 20:58:04 +00:00
if_wmreg.h Add support for the new i82540, i82545, and i82546 Gig-E chips. The 2002-08-08 00:12:08 +00:00
ifpci.c Uniformly pass a "struct isdn_l3_driver *" through layer 2, so we 2002-05-21 10:31:10 +00:00
igsfb_pci.c Add definitions of IGS coprocessor registers (not used yet). 2002-07-21 02:56:35 +00:00
iha_pci.c add RCSID 2001-11-13 07:48:40 +00:00
iop_pci.c add RCSID 2001-11-13 07:48:40 +00:00
isic_pci.c check interrupt status of the PCI interface chip (if possible) 2002-04-19 10:55:46 +00:00
isic_pci.h make the LEDs work with both channels active, some cleanup and 2002-05-03 14:12:59 +00:00
isic_pci_elsa_qs1p.c make the LEDs work with both channels active, some cleanup and 2002-05-03 14:12:59 +00:00
isp_pci.c Various changes to allow for overriding just loopid and/or iid. 2002-08-12 21:33:39 +00:00
joy_eso.c Add a joystick attachment to the ESS Solo-1 driver. 2002-04-25 00:52:21 +00:00
joy_pci.c Fix copyright notice. 2002-04-14 12:24:26 +00:00
ld_amr.c Bare-bones driver for AMI RAID. Parts taken from FreeBSD. This was tried a 2002-01-30 14:35:43 +00:00
ld_twe.c NBPG is not constant on the sparc, so don't use CPP tricks. 2002-05-24 18:10:06 +00:00
lpt_puc.c don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
maxiradio.c Add support for radio cards. Written by Maxim Tsyplakov and Vladimir Popov 2002-01-01 21:51:38 +00:00
mlx_pci.c add RCSID 2001-11-13 07:48:40 +00:00
mly.c SIMPLEQ rototill: 2002-06-01 23:50:52 +00:00
mly_tables.h Add a driver for Mylex AcceleRAID and eXtremeRAID controllers with v6 2001-07-30 19:59:04 +00:00
mlyio.h Add a driver for Mylex AcceleRAID and eXtremeRAID controllers with v6 2001-07-30 19:59:04 +00:00
mlyreg.h Add a driver for Mylex AcceleRAID and eXtremeRAID controllers with v6 2001-07-30 19:59:04 +00:00
mlyvar.h Add a driver for Mylex AcceleRAID and eXtremeRAID controllers with v6 2001-07-30 19:59:04 +00:00
mpu_cmpci.c add RCSID 2001-11-13 07:48:40 +00:00
mpu_eso.c add RCSID 2001-11-13 07:48:40 +00:00
mpu_fms.c add RCSID 2001-11-13 07:48:40 +00:00
mpu_yds.c add RCSID 2001-11-13 07:48:40 +00:00
neo-coeff.h
neo.c Map the device's memory space with BUS_SPACE_MAP_LINEAR, since we 2002-06-14 15:15:23 +00:00
neoreg.h
oboe.c Recognized Danube chip as well. 2001-12-11 21:34:06 +00:00
oboereg.h Add driver for the Toshiba's Oboe IrDA chip. From Jan Sparud. 2001-12-02 16:30:30 +00:00
ohci_pci.c add RCSID 2001-11-13 07:48:40 +00:00
opl_cmpci.c add RCSID 2001-11-13 07:48:40 +00:00
opl_eso.c add RCSID 2001-11-13 07:48:40 +00:00
opl_fms.c add RCSID 2001-11-13 07:48:40 +00:00
opl_sv.c add RCSID 2001-11-13 07:48:40 +00:00
opl_yds.c add RCSID 2001-11-13 07:48:40 +00:00
pccbb.c Patch the CLKRUN enable bit on ToPIC chips. 2002-05-31 13:34:03 +00:00
pccbbreg.h Add some register definitions for TI PCI12XX and Toshiba ToPIC. 2001-08-30 09:20:17 +00:00
pccbbvar.h Add PCI power management control. If the power state of a bridge is 2001-11-02 03:32:33 +00:00
pci.c Return 0, not NULL, when we mean 0. 2002-07-05 00:16:26 +00:00
pci_map.c implement a check whether a BAR is present at all at a given configuration 2002-05-30 12:06:43 +00:00
pci_quirks.c add RCSID 2001-11-13 07:48:40 +00:00
pci_subr.c Fortunately for us, all interrupt controllers are not 8259's 2002-05-19 00:01:09 +00:00
pci_usrreq.c Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for 2002-03-17 19:40:26 +00:00
pciconf.c Number PCI busses using a simple pre-order numbering instead of 2002-07-30 15:00:03 +00:00
pciconf.h Move the declaration of pci_conf_hook down to <machine/pci_machdep.h>; 2002-02-11 17:24:00 +00:00
pcidevs Add Lucent/Agere FW322/323 IEEE 1394 controller 2002-08-16 15:03:02 +00:00
pcidevs.h regen 2002-08-16 15:08:08 +00:00
pcidevs_data.h regen 2002-08-16 15:08:08 +00:00
pciide.c Use UDMA/100 on SiS745 chipset. 2002-08-10 16:33:23 +00:00
pciide_acard_reg.h Make the various timing, etc. tables const, and add the __unused__ 2001-10-21 18:49:19 +00:00
pciide_acer_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_amd_reg.h Make the various timing, etc. tables const, and add the __unused__ 2001-10-21 18:49:19 +00:00
pciide_apollo_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_cmd_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_cy693_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_hpt_reg.h Add "__attribute__((__unused__))" to hpt374_pio, hpt374_dma and hpt374_udma. 2002-06-01 12:47:20 +00:00
pciide_opti_reg.h Make the various timing, etc. tables const, and add the __unused__ 2001-10-21 18:49:19 +00:00
pciide_pdc202xx_reg.h Spell '[Rr]ight' correctly. From Jim Bernard. 2002-07-26 14:11:34 +00:00
pciide_piix_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_sis_reg.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
pciide_sl82c105_reg.h Add bus master DMA support for the Symphony Labs 82C105 PCI IDE 2002-04-03 17:02:21 +00:00
pciidereg.h
pciidevar.h For ports that wire up pciide in compatibility mode, have 2001-06-08 04:48:54 +00:00
pciio.h Fix tyop. 2001-09-14 06:09:42 +00:00
pcireg.h add support for the per-device power management capability. 2002-06-18 13:18:37 +00:00
pcivar.h add support for the per-device power management capability. 2002-06-18 13:18:37 +00:00
pcscp.c add RCSID 2001-11-13 07:48:40 +00:00
pcscpreg.h
plx9060reg.h
plx9060var.h
ppb.c * Add "pcitag_t *pba_bridgetag" to pci_attach_args. This is set to 2002-05-16 01:01:28 +00:00
ppbreg.h Fix the Bridge Control Register bit definitions, add ones that 2001-11-08 03:18:12 +00:00
puc.c add RCSID 2001-11-13 07:48:40 +00:00
puccn.c add RCSID 2001-11-13 07:48:40 +00:00
puccn.h
pucdata.c Add Siig 20x 8 ports and and Oxford x952 cards. From Paul Shupak in kern/17790. 2002-08-02 10:40:30 +00:00
pucvar.h
siop_pci.c More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
siop_pci_common.c It seems that the 1010-33 has a bug: it sometimes generate spurious SCSI gross 2002-05-04 18:11:06 +00:00
siop_pci_common.h More copyright fixes, pointed out by Thomas. Thanks ! 2002-04-23 20:41:13 +00:00
sv.c add RCSID 2001-11-13 07:48:40 +00:00
svreg.h
svvar.h
tga.c alloc_attr -> allocattr 2002-07-04 14:37:10 +00:00
tga_conf.c Added support for the PowerStorm 4d20, initial support that is. 2001-12-12 07:50:05 +00:00
tgareg.h
tgavar.h Added support for the PowerStorm 4d20, initial support that is. 2001-12-12 07:50:05 +00:00
trm.c Implement mstohz() as discussed on tech-kern, and use it in SCSI drivers 2002-04-05 18:27:45 +00:00
trmreg.h Add a driver for the Tekram DC-395U/UW/F and DC-315/U SCSI host adapters, 2001-11-03 17:01:16 +00:00
twe.c Missing comma in aenfmt array initialization. 2002-08-06 20:47:44 +00:00
twereg.h
twevar.h NBPG is not constant on the sparc, so don't use CPP tricks. 2002-05-24 18:10:06 +00:00
uhci_pci.c add RCSID 2001-11-13 07:48:40 +00:00
universe_pci.c add RCSID 2001-11-13 07:48:40 +00:00
universe_pci_var.h
usb_pci.c Use the correct years for copyright. 2002-02-14 21:58:30 +00:00
usb_pci.h Use the correct years for copyright. 2002-02-14 21:58:30 +00:00
vga_pci.c there is at least one VGA chip (Silicon Motion Lynx EM+) where fast scrolling 2002-07-08 19:48:37 +00:00
vga_pcivar.h
viaenv.c There is no need to use a kthread to read the VIA environment 2002-03-25 21:29:58 +00:00
viapm.c There is no need to use a kthread to read the VIA environment 2002-03-25 21:29:58 +00:00
viapmvar.h
weasel_pci.c Watchdog back-end driver for PC Weasel/PCI serial console and remote 2002-01-01 16:48:34 +00:00
weaselreg.h Watchdog back-end driver for PC Weasel/PCI serial console and remote 2002-01-01 16:48:34 +00:00
yds.c Make the yds driver work on big-endian systems. 2002-06-10 16:58:57 +00:00
ydsreg.h Yamaha YMF724/740/744/754 (DS-1) PCI audio driver. 2001-03-30 14:32:08 +00:00
ydsvar.h add 600 times dummy read from codec for YMF744 (revision < 2). 2001-12-25 16:55:50 +00:00

README

$NetBSD: README,v 1.3 1998/08/15 03:02:46 mycroft Exp $

This directory contains files which are used during PCI configuration
and PCI device drivers.  Eventually, most of the device drivers and
some of the configuration support should become machine-independent
and be moved to a more general location.

The configuration support was implemented according to the `PCI Local
Bus Specification, Production Version, Revision 2.0' dated April 30,
1993.  Section numbers referred to in the code may be specific to that
edition of the specification.

Some attempt has been made to insure that the code works on rogue
machines where the BIOS doesn't do its job, but in general I can't
guarantee that.

--
- Charles M. Hannum
  NetBSD group
  August 8, 1994