#       $NetBSD: files.pci,v 1.27 2023/04/12 06:39:15 riastradh Exp $

device  aapic
attach  aapic at pci
file    arch/x86/pci/aapic.c            aapic

file    arch/x86/pci/agp_machdep.c      agp

define  agp_x86: agp_ali, agp_amd, agp_amd64, agp_i810, agp_intel, agp_sis, agp_via
defflag AGP_X86

# PCI-Host bridge chipsets
device  pchb:   pcibus, agpbus, agp_x86
attach  pchb at pci
file    arch/x86/pci/pchb.c             pchb            needs-flag

# PCI-ISA bridges
device  pcib: isabus
attach  pcib at pci
file    arch/x86/pci/pcib.c             pcib | ichlpcib | gscpcib | piixpcib |
                                       viapcib | amdpcib | gcscpcib | rdcpcib |
                                       tcpcib

device  amdpcib {} : isabus
attach  amdpcib at pci
file    arch/x86/pci/amdpcib.c                  amdpcib

attach  hpet at amdpcib with amdpcib_hpet
file    arch/x86/pci/amdpcib_hpet.c             amdpcib_hpet

# AMD Processors -- Miscellaneous Control
define  amdnb_miscbus {}
device  amdnb_misc: amdnb_miscbus
attach  amdnb_misc at pci
file    arch/x86/pci/amdnb_misc.c       amdnb_misc

device  amdtemp: sysmon_envsys
attach  amdtemp at amdnb_miscbus
file    arch/x86/pci/amdtemp.c          amdtemp

# AMD Family 17h system management network
define  amdsmnbus {}
device  amdsmn: amdsmnbus
attach  amdsmn at pci
file arch/x86/pci/amdsmn.c              amdsmn

# AMD Family 17h CPU temp sensor
device  amdzentemp: sysmon_envsys
attach  amdzentemp at amdsmnbus
file    arch/x86/pci/amdzentemp.c               amdzentemp

attach  dwiic at pci with pcidwiic
file    arch/x86/pci/dwiic_pci.c        pcidwiic

# PCI-LPC bridges
device rdcpcib: isabus, sysmon_wdog
attach rdcpcib at pci
file    arch/x86/pci/rdcpcib.c          rdcpcib

define  fwhichbus {}
define  hpetichbus {}
device  ichlpcib: acpipmtimer, isabus, fwhichbus, hpetichbus, gpiobus, tcoichbus
attach  ichlpcib at pci
file    arch/x86/pci/ichlpcib.c         ichlpcib

attach  hpet at hpetichbus with ichlpcib_hpet
file    arch/x86/pci/ichlpcib_hpet.c    ichlpcib_hpet

device  tco: sysmon_wdog
attach  tco at tcoichbus
file    arch/x86/pci/tco.c              tco

device  tcpcib: isabus, sysmon_wdog, hpetichbus
attach  tcpcib at pci
file    arch/x86/pci/tcpcib.c           tcpcib

device  fwhrng
attach  fwhrng at fwhichbus
file    arch/x86/pci/fwhrng.c           fwhrng needs-flag

# Intel Integrated Memory Controller and associated SMBus
# (Experimental)

device  imc {}
attach  imc at pci
file    arch/x86/pci/imcsmb/imc.c               imc

device  imcsmb: i2cbus
attach  imcsmb at imc
file    arch/x86/pci/imcsmb/imcsmb.c            imcsmb