NetBSD/sys/dev/pci
drochner c8a35368a7 Replace the hooribly overloaded use of pci_enumerate_bus() - to find out
the chipset revision - by pci_find_device().
While the latter isn't better technically (works around the otherwise
hierarchical device tree), using it doesn't require PCI configuration
functions to support stuff which philosophically doesn't belong there.
So we get the hands free to restructure things for better loadable
driver support.
(Actually, since this is about chipset internal IDE interfaces where
the PCI device/function numbers are well known, this all is unnecessary.)
2004-07-22 19:09:34 +00:00
..
bktr Fix typo in comment; from Robert Nagy via OpenBSD. 2004-05-12 20:43:17 +00:00
Makefile Install twereg.h and tweio.h 2003-09-25 18:05:53 +00:00
Makefile.pcidevs netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
README
aac_pci.c Add support for Adaptec AAR 2810SA raid controller. 2004-05-10 06:21:09 +00:00
acardide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
aceride.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
adv_pci.c
adw_pci.c
agp.c Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
agp_ali.c Apply patch from "pandre" at netbsd.ports.i386, stops panic during attachment. 2004-06-02 18:36:06 +00:00
agp_amd.c
agp_i810.c eliminate redundant aperture size printouts 2004-03-20 14:00:40 +00:00
agp_intel.c
agp_sis.c
agp_via.c
agpreg.h Use the right bits for the AGP version. 2004-02-04 06:58:24 +00:00
agpvar.h
ahc_pci.c Fix an assigned-to-but-not-used variable in the non AHC_ALLOW_MEMIO case. 2004-03-16 05:32:09 +00:00
ahd_pci.c parameter with two es. From Peter Postma. 2004-02-24 15:22:01 +00:00
amdpm.c
amdpmreg.h
amr.c sprintf -> snprintf 2004-04-22 00:17:10 +00:00
amrreg.h
amrvar.h
artsata.c Split the Intel i31244 SATA controller ("Artisea") driver out of piixide 2003-12-14 01:32:01 +00:00
atppc_puc.c checkpoint DMA support; still disabled, not tested yet 2004-02-10 18:19:47 +00:00
auich.c Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
auichreg.h For ICH4/ICH5, use native BARs instead of compatible BARs. 2003-11-22 08:49:41 +00:00
autri.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
autrireg.h
autrivar.h
auvia.c Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
auviavar.h
bha_pci.c
btvmei.c
btvmeii.c
btvmeireg.h Spell interrupt with two rs. From Peter Postma. 2004-02-24 15:16:04 +00:00
btvmeivar.h remove license clauses 3 and 4 from my cpoyright notices 2004-03-24 17:26:53 +00:00
cac_pci.c
cmdide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
cmpci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
cmpcireg.h netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
cmpcivar.h netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
com_puc.c Fix a warning about possibly uninitialized variable. 2004-02-03 20:35:17 +00:00
cs428x.c There's no need to halt the input and output pipes in the close routine -- 2004-07-09 01:02:32 +00:00
cs428x.h
cs428xreg.h
cs4280.c Attempt to make these safer against stray interrupts. 2004-07-09 02:49:37 +00:00
cs4280_image.h
cs4280reg.h
cs4281.c Attempt to make these safer against stray interrupts. 2004-07-09 02:49:37 +00:00
cs4281reg.h
cy82c693.c
cy82c693reg.h
cy82c693var.h
cy_pci.c
cyber.c The variables to hold the registers don't need to be declared volatile. 2004-02-04 01:58:44 +00:00
cyberreg.h Enable the 8X clock on the SIIG Cyberserial serial and combination PCI 2004-02-03 19:51:39 +00:00
cybervar.h Enable the 8X clock on the SIIG Cyberserial serial and combination PCI 2004-02-03 19:51:39 +00:00
cypide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
cz.c uninitialized variables 2003-10-27 07:07:34 +00:00
czreg.h
devlist2h.awk Fixes from PR#23177. Various lint/logic fixes: 2003-12-15 07:32:20 +00:00
dpt_pci.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
eap.c Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
eapreg.h support the game port on eap1371 2004-07-08 19:39:00 +00:00
eapvar.h support the game port on eap1371 2004-07-08 19:39:00 +00:00
ehci_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
emuxki.c PR/25731: Adam K kirchhoff: Audigy support with the emuxki driver. 2004-05-27 20:20:52 +00:00
emuxkireg.h PR/25731: Adam K kirchhoff: Audigy support with the emuxki driver. 2004-05-27 20:20:52 +00:00
emuxkivar.h PR/25731: Adam K kirchhoff: Audigy support with the emuxki driver. 2004-05-27 20:20:52 +00:00
esa.c - Don't hardcode buffer size and block size in esa_round_buffersize() and 2004-07-21 07:36:18 +00:00
esadsp.h
esareg.h
esavar.h
esiop_pci.c
esm.c Fix AUDIO_DEBUG printf formats. 2004-07-08 18:08:58 +00:00
esmreg.h netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
esmvar.h netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
eso.c There's no need to halt the input and output pipes in the close routine -- 2004-07-09 01:02:32 +00:00
esoreg.h Fix a shift-by-one-bit glitch in the MONO_OUT mixer register's definition; 2004-05-25 20:59:37 +00:00
esovar.h General mixer initialization improvements around the MONO_IN/MONO_OUT/ 2004-05-25 21:38:11 +00:00
files.agp
files.ath Files belonging to the ath(4) PCI front-end. 2003-10-13 05:10:00 +00:00
files.pci Add geodeide(4), a driver for the AMD Geode CS5530A IDE controller. 2004-07-09 18:38:37 +00:00
fms.c
fmsvar.h
fwlynx_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
fwohci_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
geodeide.c Add geodeide(4), a driver for the AMD Geode CS5530A IDE controller. 2004-07-09 18:38:37 +00:00
gtp.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
hifn7751.c Identify AES-capable chips (7955, 7956) in the driver attach message. 2004-04-29 01:46:06 +00:00
hifn7751reg.h Spell length with h after t. Inspired by a commit by brad@openbsd. 2004-02-13 18:02:05 +00:00
hifn7751var.h Support symmetric crypto ops, including AES, on hifn 7955 and 7956. 2003-11-16 00:22:09 +00:00
hptide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
i82365_pci.c
i82365_pcivar.h
iavc_pci.c Ready the kernel side of i4b for primary rate interface support by 2003-10-03 16:38:44 +00:00
icp_pci.c
if_an_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
if_ath_pci.c This should be done in the HAL, but until then... 2004-06-30 05:58:17 +00:00
if_atw_pci.c Move the RF Microdevices RF3000 & Silicon Laboratories SI4126/SI4136 2004-02-17 21:20:55 +00:00
if_bce.c Keep track of what we set the interrupt mask to, rather than reading it from 2004-07-09 05:08:22 +00:00
if_bcereg.h - convert to new aprint*() autoconfig print mechanism 2003-09-29 01:53:02 +00:00
if_bge.c Remaining sysctl descriptions under hw subtree (ath and bge) 2004-05-25 04:38:36 +00:00
if_bgereg.h Add PAUSE-related event counters. Slightly modified from patch supplied by 2004-05-15 22:19:27 +00:00
if_de.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
if_devar.h
if_dge.c Fix a couple of whitespace nits. 2004-05-10 02:36:56 +00:00
if_dgereg.h Add driver for Intel PRO/10GbE ethernet adapter. Now NetBSD has no 2004-03-12 13:46:52 +00:00
if_en_pci.c Remove some assigned-to but otherwise unused variables. 2003-10-30 01:58:17 +00:00
if_ep_pci.c
if_epic_pci.c
if_esh_pci.c
if_ex_pci.c Add support for 3Com 3c920B-EMB-WNM Integrated Fast Ethernet, 2004-07-15 13:18:08 +00:00
if_fpa.c
if_fxp_pci.c Add a default case to the product ID attachment to print the chip 2004-04-28 04:12:16 +00:00
if_gem_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
if_gsip.c
if_hme_pci.c Fix hme for pci based sparcs (krups). 2004-03-17 08:58:23 +00:00
if_le_pci.c
if_levar.h
if_lmc.c
if_lmc_common.c
if_lmc_media.c
if_lmc_nbsd.c
if_lmc_types.h
if_lmcioctl.h
if_lmcvar.h
if_mtd_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
if_ne_pci.c RealTek -> Realtek. 2004-02-13 10:00:54 +00:00
if_ntwoc_pci.c boundary, not boundry. Inspired by Tom Cosgrove. 2003-11-02 10:31:06 +00:00
if_ntwoc_pcireg.h
if_pcn.c Fix uninitialized variable warnings 2003-10-25 18:29:12 +00:00
if_pcnreg.h
if_re.c #include <sys/device.h> 2004-06-01 15:17:49 +00:00
if_rtk_pci.c RealTek -> Realtek. 2004-02-13 10:00:54 +00:00
if_sf_pci.c
if_sip.c Add PAUSE-related event counters for sip(4) and gsip(4), slightly modified 2004-05-15 22:33:13 +00:00
if_sipreg.h Improvements to DP83820 support, from HITOSHI Osada: 2004-04-11 16:57:44 +00:00
if_sk.c Fix a glitch in the initial import: The XMAC hash function is actually 2004-05-24 20:12:01 +00:00
if_skreg.h
if_skvar.h boundary, not boundry. Inspired by Tom Cosgrove. 2003-11-02 10:31:06 +00:00
if_ste.c Program the "MaxFrameSize" register so that it's correct for VLAN 2004-07-08 18:27:14 +00:00
if_stereg.h
if_stge.c
if_stgereg.h
if_ti.c Use the bus_space_*_stream_* methods to access the chip's registers. 2004-03-18 23:20:32 +00:00
if_tireg.h Use the bus_space_*_stream_* methods to access the chip's registers. 2004-03-18 23:20:32 +00:00
if_tl.c Apply patch from kern/25936 by Michael Blake: Add support for the 2004-06-15 19:47:23 +00:00
if_tlp_pci.c For sparc*: myetheraddr is no more 2004-03-17 13:54:09 +00:00
if_tlregs.h
if_tlvar.h Spell address with two d's. Inspired by similar changes in OpenBSD, 2003-11-10 08:51:51 +00:00
if_txp.c disestablish the interupt if we fail to (among other things) download 2004-07-01 08:34:24 +00:00
if_txpreg.h
if_vr.c add rnd hooks 2004-02-15 09:40:32 +00:00
if_vrreg.h - No need to set VR_TXCTL_TLINK in vr_start() because all TX buffers have 2003-10-17 17:42:35 +00:00
if_wi_pci.c Remove special-casing of Intersil product name. 2004-07-17 20:05:39 +00:00
if_wm.c Reduce transmit queue len to 16 for the Intel i82547 to avoid FIFO 2004-07-15 15:21:57 +00:00
if_wmreg.h Add flow control support, based on work by HITOSHI Osada. 2004-05-16 02:34:47 +00:00
ifpci.c fix uninitialized uses caught by gcc 2003-10-28 17:01:19 +00:00
ifpci2.c Give a magic value a name - inspired by a post on the FreeBSD isdn mailing 2004-07-06 08:53:16 +00:00
igsfb_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
igsfb_pcivar.h
iha_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
iop_pci.c Match Promise controllers. 2003-12-09 19:43:53 +00:00
isic_pci.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
isic_pci.h netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
isic_pci_elsa_qs1p.c
isp_pci.c Fixes for that only support for the 2030 can be compiled in. 2004-03-10 22:42:47 +00:00
iwic_bchan.c
iwic_dchan.c
iwic_fsm.c
iwic_pci.c Ready the kernel side of i4b for primary rate interface support by 2003-10-03 16:38:44 +00:00
iwicreg.h
iwicvar.h
joy_eap.c support the game port on eap1371 2004-07-08 19:39:00 +00:00
joy_eso.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
joy_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
ld_amr.c
ld_twe.c Add a "flush" operation so the array's write cache is flushed on 2004-05-27 23:48:34 +00:00
lpt_puc.c
machfb.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
machfbreg.h
mlx_pci.c
mly.c
mly_tables.h
mlyio.h
mlyreg.h
mlyvar.h
mpt_pci.c
mpu_cmpci.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
mpu_eso.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
mpu_fms.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
mpu_yds.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
neo-coeff.h
neo.c Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
neoreg.h
oboe.c Remove unnecessary code. 2003-10-28 23:56:00 +00:00
oboereg.h
ohci_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
opl_cmpci.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
opl_eso.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
opl_fms.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
opl_sv.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
opl_yds.c netbsd.org -> NetBSD.org 2003-12-04 13:57:30 +00:00
optiide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
pccbb.c If the bus number has not been initialized, do not attach a cardslot, and 2004-07-22 16:39:51 +00:00
pccbbreg.h Power up the card without OE enabled to avoid letting SanDisks enter 2003-12-10 02:55:48 +00:00
pccbbvar.h If the bus number has not been initialized, do not attach a cardslot, and 2004-07-22 16:39:51 +00:00
pci.c Fix typo (func8 -> func7) 2004-05-17 16:57:49 +00:00
pci_map.c
pci_quirks.c Remove SKIP_FUNCn quirks for SC1100 companion chip; the fix to SMM in 2004-07-10 21:30:58 +00:00
pci_subr.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
pci_usrreq.c
pciconf.c Use PRIu64 and PRIx64 in place of %llu and %llx format strings for 2004-03-17 20:27:57 +00:00
pciconf.h
pcidevs Add SIS 741. 2004-07-21 16:39:38 +00:00
pcidevs.h Regen. 2004-07-21 16:39:51 +00:00
pcidevs_data.h Regen. 2004-07-21 16:39:51 +00:00
pciide.c Split pciide in per-chip family driver, as proposed in 2003-10-08 11:51:59 +00:00
pciide_acard_reg.h Add support for Acard ATP865/A Ultra100 IDE Controllers. From Tsubai Masanari. 2003-10-24 15:50:02 +00:00
pciide_acer_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_apollo_reg.h Split pciide in per-chip family driver, as proposed in 2003-10-08 11:51:59 +00:00
pciide_cmd_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_common.c Don't try to bus_space_subregion() registers that didn't get mapped. 2004-06-04 21:15:00 +00:00
pciide_cy693_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_geode_reg.h Add geodeide(4), a driver for the AMD Geode CS5530A IDE controller. 2004-07-09 18:38:37 +00:00
pciide_hpt_reg.h Add the HPT370 DPLL output frequency register. 2004-03-10 21:55:21 +00:00
pciide_i31244_reg.h
pciide_opti_reg.h Rename "struct channel_softc" to "struct wdc_channel". 2004-01-03 01:50:52 +00:00
pciide_pdc202xx_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_piix_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_sii3112_reg.h Add support for the Silicon Image 3114 SATALink 4-port SATA controller. 2003-12-20 03:51:27 +00:00
pciide_sis_reg.h Remove references to University of California from my copyright notices. 2003-10-05 17:48:49 +00:00
pciide_sl82c105_reg.h
pciidereg.h There are some cards that map the ATA control and IDE DMA registers 2003-11-27 23:02:40 +00:00
pciidevar.h Rename "struct channel_softc" to "struct wdc_channel". 2004-01-03 01:50:52 +00:00
pciio.h
pcireg.h Use the right bits for the AGP version. 2004-02-04 06:58:24 +00:00
pcivar.h GC pci_{g,s}et_powerstate into pci_powerstate(). Idea from mycroft and gimpy. 2004-05-08 23:41:40 +00:00
pcscp.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
pcscpreg.h
pdcide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
piixide.c Handle the i6300ESB IDE / SATA controllers. These are apparently just ICH5. 2004-05-11 23:15:37 +00:00
plx9060reg.h
plx9060var.h
ppb.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
ppbreg.h
puc.c Enable the 8X clock on the SIIG Cyberserial serial and combination PCI 2004-02-03 19:51:39 +00:00
puccn.c
puccn.h
pucdata.c Support for the VS-Com PCI-210H 2s/1p card, from PR 18478. 2004-07-04 10:02:03 +00:00
pucvar.h Enable the 8X clock on the SIIG Cyberserial serial and combination PCI 2004-02-03 19:51:39 +00:00
rccide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
satalink.c Add Adaptec AAR-1210SA serial ATA RAID. 2004-07-19 17:04:36 +00:00
siop_pci.c
siop_pci_common.c The 1010-66 always generate AIP values on the bus, regardless of the SCNTL4 2004-03-10 22:02:53 +00:00
siop_pci_common.h
siside.c Add the SiS 741, per PR 26394. 2004-07-21 16:40:50 +00:00
slide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
stpcide.c More wdc_channel structure member namespace cleanup: 2004-01-03 22:56:52 +00:00
sv.c Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
svreg.h
svvar.h
tga.c Remove redundant tga_getconf() and tga_identify() prototypes. 2004-06-29 21:32:42 +00:00
tga_conf.c
tgareg.h
tgavar.h
trm.c Remove some assigned-to but otherwise unused variables. 2003-10-30 01:58:17 +00:00
trmreg.h
twe.c twe_ccb_map(): Remove the DEBUG panic case of "unknown" S/G list offset. 2004-06-04 20:11:17 +00:00
tweio.h - Protect against multiple inclusion. 2003-09-25 18:05:40 +00:00
twereg.h Add a few additional control bits and opcodes. From FreeBSD. 2003-09-22 01:28:25 +00:00
twevar.h Rename twe_tweio_command_handler() to twe_ccb_wait_handler() and expose it. 2004-05-27 23:47:23 +00:00
ubsec.c
ubsecreg.h
ubsecvar.h
uhci_pci.c pass string length (= boundary info) to pci_devinfo so that we do not run over 2004-04-23 21:13:05 +00:00
universe_pci.c
universe_pci_var.h
usb_pci.c
usb_pci.h
vga_pci.c Fix typo in comment; from Sergey Svishchev. 2004-05-11 22:45:09 +00:00
vga_pcivar.h
viaenv.c
viaide.c Replace the hooribly overloaded use of pci_enumerate_bus() - to find out 2004-07-22 19:09:34 +00:00
viapm.c
viapmvar.h
weasel_pci.c
weaselreg.h
yds.c There's no need to halt the input and output pipes in the close routine -- 2004-07-09 01:02:32 +00:00
ydsreg.h
ydsvar.h

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