summaryrefslogtreecommitdiff
path: root/sys/arch/i386/pci
AgeCommit message (Collapse)Author
2007-05-29Fix compilation of kernels without I686_CPU: piixpcib is alwaysTom Cosgrove
needed (not just for I686_CPU), but it and ichpcib only call the update_cpuspeed functions for I686_CPU. ok tedu@ deraadt@
2007-05-23timecounter support (e.g. soekris net4501); ok grange@Markus Friedl
2007-05-21Implement deep interrupt swizzling by mapping all four PCI interrupt pinsMark Kettenis
for PCI-PCI bridges and passing the mapping to the attached bus device. MD code can use these when mapping PCI device interrupts. This diff adds such code for amd64 and i386. This fixes interrupt mapping for devices that sit behind two PCI-PCI bridges where the firmware only provides a mapping for the first PCI-PCI bridge. tested by sturm@, krw@, and a few others, ok deraadt@
2007-04-26Add a setperf mechanism for ich speedstep controlled by SMI on certainGordon Willem Klok
parings of the Intel Pentium 3 and the ich southbridges. Written by Stefan Sperling <stsp AT tsp DOT in-berlin DOT de> based on a driver in NetBSD and sys/arch/i386/pci/ichpcib.c. Tested my mpf@ among others, ok tedu
2007-03-26ichss_cookie is a bad name, and should not be a void pointer.Gordon Willem Klok
Spotted by Stefan Sperling <stsp AT tsp.in-berlin.de> when reviewing his piix speedstep diff. ok tedu@
2007-03-19typo fixes; didickman@gmailTheo de Raadt
2007-02-20Revert PAE pmap for now, until the strange bug is found. This stopsTom Cosgrove
the freezes many of us are seeing (especially on amd64 machines running OpenBSD/i386). Much testing by nick@ (as always - thanks!), hugh@, ian@, kettenis@ and Sam Smith (s (at) msmith (dot) net). Requested by, input from, and ok deraadt@ ok art@, kettenis@, miod@
2007-02-12Enable the AES acceleration. Won't be picked up for IPsec, since weTom Cosgrove
don't support the other required operations in the driver, but will be used by OpenSSL. ok deraadt@
2007-01-19Update comment (on how long we wait for operation to complete) reflectTom Cosgrove
reality, and remove the maxpolls stuff at the same time. Still disabled in-tree.
2007-01-02Use bus_space_write_region_4() instead of doing the same thing bit byTom Cosgrove
bit (well, uint32 by uint32). Inspired by a claudio commit to malo.c. Still disabled (awaiting a code review), but works for me here. ok claudio@
2006-12-20Don't bail out on a bad interrupt line if we have a valid apic interrupt pinMark Kettenis
for a pci device.
2006-12-14Make pci subsystem aware of domains. Each host bridge gets assigned a uniqueMark Kettenis
domain number such that we can distinguish between busses with the same bus number that are behind different host bridges. Domains can be accessed by using different device nodes. ok deraadt@
2006-12-12Complete gwk's previous patch to stop setperf methods from returningDimitry Andric
errors to userland: make all cpu_setperf functions return void. Tested by many, ok gwk@
2006-12-11do not bus_space_map devices which are at address 0; ok kettenisTheo de Raadt
2006-12-11On i386, swizzle interrupts for devices for which we don't have explicitMark Kettenis
inetrrupt routing information. ok deraadt@
2006-11-29Nuke all commons but one, and enable --warn-common in LINKFLAGS.Miod Vallat
2006-11-29Remove all the extern cpu_{id,model,whatever} declarations from mostDimitry Andric
stuff in arch/i386/i386. This should prevent more screwups like the one I did before in ichpcib.c... ok dlg@ kettenis@
2006-11-29Fix cpu_model string screwup.Dimitry Andric
2006-11-28acpi may steal the timer and speedstep functionality, in which case weTheo de Raadt
cannot io map the device. rest of the attach() functionality is still safely intact. we simply do not have to warn about mapping failing. ok kettenis
2006-11-27Only use the ichpcib speedstep feature if we're running on a (Mobile) Pentium 4,Dimitry Andric
since Celerons don't support it. prodded by gwk@
2006-11-19Handle operations larger than will fit in the buffer we allocate,Tom Cosgrove
by processing in a loop. And bump the size of this buffer (32KB taken by the driver shouldn't be a problem). Also reduce the places we hard-code the AES block size of 16. Still disabled (doing more testing), but I want to commit before the aged hard disk I have in the system here dies. (This commit from the Geode system with the AES enabled.)
2006-11-19Improve the AES acceleration, by allocating a contiguous DMA-ableTom Cosgrove
buffer on attach, and using it for encrypt/decrypt operations. Still disabled, since the driver cannot currently handle an operation larger than supported by this buffer. (Interactive ssh does work with this code, however.) "commit, of course" deraadt@
2006-11-17Add code for AES acceleration. This is currently disabled withTom Cosgrove
`#undef CRYPTO' since it doesn't work properly yet. Committing in order to get it into the tree. "get it in" deraadt@
2006-11-11Get rid of magic isa and eisa bus numbers in mpbios code. Pave the way forMark Kettenis
alternative sources for interrupt information. ok gwk@, brad@
2006-10-26Driver for the AMD Geode LX series processor security block.Tom Cosgrove
Currently just uses the RNG; AES support to be added later. ok deraadt@
2006-10-18do not enable watchdog functionality if small kernelTheo de Raadt
2006-10-17Set the Geode SC1100-specific reset function in the geodesc driver,Tom Cosgrove
rather than when CPUID says we're on any Geode. Should avoid reset failure on Nokia IP110s and other non-SC1100 Geode-based systems. Reset should hopefully still work on Soekris Net4801s and PC Engines WRAP systems, but no-one bothered to test and report back in two days. "commit" deraadt@
2006-09-29kill trailing some spacesMarco Pfatschbacher
2006-09-19ansi/deregisterJonathan Gray
2006-09-19add 82801GHM and 82801HBrad Smith
2006-08-18Don't renumber the PCI bus if we don't need to. Fixes some machines (DellMark Kettenis
PowerEdge 2900, 2950) that otherwise lock up at the end of autoconf. ok dlg@, marco@
2006-08-14say which type of header is unknownTheo de Raadt
2006-08-06add the Intel 6321ESB LPCBrad Smith
2006-08-06add the Intel 82801GHM LPC and 6321ESB LPCBrad Smith
2006-08-06add the Intel 82801DBM LPC.Brad Smith
2006-07-13Switch to a three-phase pci resource fixup:Mark Kettenis
1. Reserve resources for enabled devices. 2. Reserve resources for disabled devices. 3. Allocate resources. This way we no longer need to enable/disable devices during fixup. Based on an earlier patch by drahn@. ok deraadt@, drahn@
2006-06-25reorganize the code to be more sane.Brad Smith
ok toby@
2006-06-02Spelling.Christopher Pascoe
2006-05-15Add AGP support for Intel 945G/GM chipsets. The 945GM (mobile) variantDimitry Andric
also needs a X.org update, which will go in later. Tested by a bunch of people; ok deraadt@
2006-04-27implement separate PAE pmap that allows access to 64g of physmemMichael Shalayeff
if supported by the cpu(s). currently not enabled by default and not compiled into ramdisks. this grows paddr_t to 64bit but yet leaves bus_addr_t at 32bits. measures are taken to favour dmaable memory allocation from below 4g line such that buffer cache is already allocated form below, pool backend allocator prefers lower memory and then finally bounce buffers are used as last resort. PAE is engaged only if global variable cpu_pae is manually set to non-zero and there is physical memory present above 4g. simplify pcibios address math to use u_long as we always will be in the 32bit space.
2006-03-13* Add "pcitag_t *pba_bridgetag" to pci_attach_args. This is set toBrad Smith
NULL for root PCI busses. For busses behind a bridge, it points to a persistent copy of the bridge's pcitag_t. This can be very useful for machine-dependent PCI bus enumeration code. From NetBSD ok grange@ kettenis@
2006-03-07- Use the correct initialization routine for the VIA VT8233 chipsetBrad Smith
now that kettenis@ has corrected the PCI id entry. - Add the SiS 962 chipset. ok kettenis@ mickey@
2006-02-14Find additional noncoherent HyperTransport links by looking at theMark Kettenis
HyperTransport configuration on AMD Athlon 64 & Opteron CPU's. This makes us detect the missing PCI busses on various Opteron systems. tested by krw@, brad@; ok brad@
2006-02-11New version of i915 supprotm adapted from freebsd by Dimitry Andric, withMatthieu Herrb
one tweak suggested by miod@.
2006-02-03Back out i915 changes; they broke some i810-based machines.Todd C. Miller
2006-02-01implement a much better 27mhz tc found on geode; inspired by freebsd; grange@ okMichael Shalayeff
2006-01-26make timecounter behave; grange@ okMichael Shalayeff
2006-01-13support i915. adapted from freebsd by Dimitry Andric. does not breakTheo de Raadt
at least i810 on x40, but made x41 work. ok matthieu
2006-01-12Fix up interrupt routing on SiS 963.Jonathan Gray
From Ian McWilliam ian at dodo.com.au. ok mickey@
2006-01-05Don't change pins state on attach.Alexander Yurchenko