#
267654 |
|
19-Jun-2014 |
gjb |
Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
257497 |
|
01-Nov-2013 |
kib |
MFC r257071: Add some definitions for the bits in root control and status PCIe cap registers.
|
#
250964 |
|
24-May-2013 |
kib |
MFC r250740: Add new capability types encodings from HyperTransport I/O Link Specification revisions 3.00 and 3.10.
|
#
247357 |
|
26-Feb-2013 |
jhb |
MFC 240473: Add some registers defined in PCI 3.0 including new AER bits.
|
#
242015 |
|
24-Oct-2012 |
gavin |
Merge r240680 from head:
Align the PCI Express #defines with the style used for the PCI-X #defines. This has the advantage that it makes the names more compact, and also allows us to correct the non-uniform naming of the PCIM_LINK_* defines, making them all consistent amongst themselves.
This is a mostly mechanical rename: s/PCIR_EXPRESS_/PCIER_/g s/PCIM_EXP_/PCIEM_/g s/PCIM_LINK_/PCIEM_LINK_/g
In this MFC, #defines have been added for the old names to assist out-of-tree drivers.
|
#
241383 |
|
09-Oct-2012 |
jimharris |
MFC r240695:
Add constants for programming interfaces for NVM/solid state storage controller sub-class code.
Reference: PCI Code and ID Assignment Specification Rev 1.2
|
#
241101 |
|
01-Oct-2012 |
gavin |
Merge the following from head:
r240694 Add PCI subclass for NVM Express devices.
r240699, r240739 Recognise NVM devices and pretty-print their name.
|
#
237731 |
|
28-Jun-2012 |
jhb |
MFC 228161,230774,230822,236415: Add a new -e flag to pciconf(8)'s list mode to display PCI error details. Currently this dumps the status of any error bits in the PCI status register and PCI-express device status register. It also lists any errors indicated by version 1 of PCI-express Advanced Error Reporting (AER).
|
#
225736 |
|
22-Sep-2011 |
kensmith |
Copy head to stable/9 as part of 9.0-RELEASE release cycle.
Approved by: re (implicit)
|
#
222018 |
|
17-May-2011 |
ru |
Renamed PCI_INTERFACE_XHCI to PCIP_SERIALBUS_USB_XHCI and moved it to <dev/pci/pcireg.h>.
Reviewed by: hselasky MFC after: 3 days
|
#
220195 |
|
31-Mar-2011 |
jhb |
Explicitly track the state of all known BARs for each PCI device. The PCI bus driver will now remember the size of a BAR obtained during the initial bus scan and use that size when doing lazy resource allocation rather than resizing the BAR. The bus driver will now also report unallocated BARs to userland for display by 'pciconf -lb'. Psuedo-resources that are not BARs (such as the implicit I/O port resources for master/slave ATA controllers) will no longer be listed as BARs in 'pciconf -lb'. During resume, BARs are restored from their new saved state instead of having the raw registers saved and restored across resume. This also fixes restoring BARs at unusual loactions if said BAR has been allocated by a driver.
Add a constant for the offset of the ROM BIOS BAR in PCI-PCI bridges and properly handle ROM BIOS BARs in PCI-PCI bridges. The PCI bus now also properly handles the lack of a ROM BIOS BAR in a PCI-Cardbus bridge.
Tested by: jkim
|
#
214122 |
|
20-Oct-2010 |
jkim |
Update PCI power management registers per PCI Bus Power Management Interface Specification Rev. 1.2. Rename pp_pcmcsr field of PM capabilities to pp_bse to avoid further confusions and adjust some comments accordingly. The real PMCSR (Power Management Control/Status Register) is PCIR_POWER_STATUS and it is actually BSE (PCI-to-PCI Bridge Support Extensions) register.
|
#
212368 |
|
09-Sep-2010 |
jhb |
- Rename the constant for the Master Data Parity Error flag in the PCI status register to map its current name. - Use PCIM_* rather than PCIR_* for constants for fields in various AER registers. I got about half of them right in the previous commit.
MFC after: 1 week
|
#
212326 |
|
08-Sep-2010 |
jhb |
- Add register definitions related to extended capability IDs in PCI-express. I used PCIZ_* for ID constants (plain capability IDs use PCIY_*). - Add register definitions for the Advanced Error Reporting, Virtual Channels, and Device Serial Number extended capabilities. - Teach pciconf -c to list extended as well as plain capabilities. Adds more detailed parsing for AER, VC, and device serial numbers.
MFC after: 2 weeks
|
#
209907 |
|
11-Jul-2010 |
raj |
Provide more defines for PCI-Express device ctrl.
|
#
203355 |
|
01-Feb-2010 |
yongari |
Add more bit definitions to PCI express device control and device status register.
Reviewed by: jhb
|
#
197450 |
|
24-Sep-2009 |
avg |
number of cleanups in i386 and amd64 pci md code
o introduce PCIE_REGMAX and use it instead of ad-hoc constant o where 'reg' parameter/variable is not already unsigned, cast it to unsigned before comparison with maximum value to cut off negative values o use PCI_SLOTMAX in several places where 31 or 32 were explicitly used o drop redundant check of 'bytes' in i386 pciereg_cfgread() - valid values are already checked in the subsequent switch
Reviewed by: jhb MFC after: 1 week
|
#
197077 |
|
10-Sep-2009 |
avg |
pci: remove definitions of duplicate constants
Suggested by: jhb Reviewed by: jhb MFC after: 1 week
|
#
191222 |
|
17-Apr-2009 |
jhb |
- Add a few more register defintions for the PCI express capability registers. - Cleanup PCI-X capability printf to not leave a dangling "supports" for some PCI-X bridges. - Display additional PCI express details including the negotiated and max link width and the actual and maximum supported max payload.
MFC after: 1 month
|
#
189401 |
|
05-Mar-2009 |
jhb |
Always read/write the full 64-bit value of 64-bit BARs. Specifically, when determining the size of a BAR by writing all 1's to the BAR and reading back the result, always operate on the full 64-bit size.
Reviewed by: imp MFC after: 1 month
|
#
189285 |
|
02-Mar-2009 |
rnoland |
Disable INTx when enabling MSI/MSIX
This addresses interrupt storms that were noticed after enabling MSI in drm. I think this is due to a loose interpretation of the PCI 2.3 spec, which states that a function using MSI is prohibitted from using INTx. It appears that some vendors interpretted that to mean that they should handle it in hardware, while others felt it was the drivers responsibility.
This fix will also likely resolve interrupt storm related issues with devices other than drm.
Reviewed by: jhb@ MFC after: 3 days
|
#
188639 |
|
15-Feb-2009 |
mav |
Add SATA and PCI Advanced Features capabilities constants.
|
#
188018 |
|
02-Feb-2009 |
jhb |
- Add a new ioctl to /dev/pci to fetch details on an individual BAR of a device. The details include the current value of the BAR (including all the flag bits and the current base address), its length, and whether or not it is enabled. Since this operation is not invasive, non-root users are allowed to use it (unlike manual config register access which requires root). The intention is that userland apps (such as Xorg) will use this interface rather than dangerously frobbing the BARs from userland to obtain this information. - Add a new sub-mode to the 'list' mode of pciconf. The -b flag when used with -l will now list all the active BARs for each device.
MFC after: 1 month
|
#
184594 |
|
03-Nov-2008 |
imp |
Nit: Add a few leading zeros to make this match other mask constants in this file. Also to make sure that I got other ASI constants right.
|
#
184141 |
|
21-Oct-2008 |
mav |
Add HDA multimedia subclass.
|
#
181934 |
|
20-Aug-2008 |
jhb |
The config space registers holding the upper 32-bits of the prefetchable memory area's base and limit are optional. The low 4-bits of the "low" prefetchable registers indicates whether or not a 32-bit or 64-bit region is supported. The PCI-PCI driver had been assuming that all bridges supported a 64-bit region (and thus the two upper 32-bit registers). Fix the driver to only use those registers if the low 4-bits of the "low" registers indicate that a 64-bit region is supported. The PCI-PCI bridge in the XBox happens to be a bridge that only supports a 32-bit region.
Reported by: rink MFC after: 1 week
|
#
172242 |
|
19-Sep-2007 |
sepotvin |
- Fix a small bit slip in PCIM_PCAP_D[0-2]PME defines. - Add the definitions for D3PME_COLD and D3PME_HOT capabilities.
Reviewed by: njl (mentor), imp Approved by: re (kensmith) MFC after: 1 week
|
#
169616 |
|
16-May-2007 |
imp |
Change PCIM_CIS_ASI_TUPLE to _CONFIG. Add PCI_MAX_BAR_0 minor style nit. Add PCIM_CIS_CONFIG_MASK
|
#
169037 |
|
25-Apr-2007 |
jhb |
- HT 2.00b added a new flag to the MSI mapping HT capability to indicate that the MSI mapping window is fixed at 0xfee00000 and the capability does not include two more dwords used to program the address. Supporting this mostly results in quieting spurious warnings during boot about non-default MSI mapping windows. - HT 2.00b also added a new HT capability type, so support that in pciconf.
MFC after: 3 days Tested by: jmg
|
#
168162 |
|
31-Mar-2007 |
jhb |
Add constants for the fields in a BAR. Also, add two new macros PCI_BAR_(IO|MEM)() that return true if the passed in value from a BAR is for an IO or memory BAR, respectively.
Reviewed by: imp
|
#
168157 |
|
31-Mar-2007 |
jhb |
- Add missing constants for subclasses. - Add a few progif constants as well.
|
#
167238 |
|
05-Mar-2007 |
jhb |
- Flesh out list of UART simple comms programming interfaces. - Add list of PIC base peripheral programming interfaces. - Add VPD capability register offsets.
MFC after: 3 days
|
#
166434 |
|
02-Feb-2007 |
jhb |
Add constants for the PCIY_VENDOR (vendor-specific), PCIY_DEBUG (EHCI debug port), and PCIY_EXPRESS (PCI-express) capabilities.
|
#
166109 |
|
19-Jan-2007 |
jhb |
- Change the PCI-X registers constants to be relative to the PCI-X PCI capability rather than hardcoded offsets for a particular card. While I'm here, expand the constants some. - Change the ahd(4) driver to use pci_find_extcap() to locate the PCI-X capability to keep up with the first change.
Reviewed by: scottl, gibbs (earlier version)
|
#
166048 |
|
16-Jan-2007 |
jhb |
Fix the subvendor ID for PCI-PCI bridges. - Retire the PCI_SUB*_1 constants and don't try to read a subvendor ID out of them. There isn't a standard subvendor ID field for PCI-PCI bridges. Instead, the dword at offset 0x34 is actually mostly reserved except for the LSB which is the capabilities pointer. - Add support for the PCI-PCI bridge subvendor ID capability (13) and use it to set the subvendor ID for PCI-PCI bridges.
MFC after: 1 month
|
#
165217 |
|
14-Dec-2006 |
jhb |
Replace #define<space> with #define<tab> so the code is consistent with style(9) and avoids mixing the two formats.
|
#
165131 |
|
12-Dec-2006 |
jhb |
- Add constants for HT PCI capability registers including the various subtypes of HT capabilities. - Add constants for the MSI mapping window HT PCI capability. - On i386 and amd64, enable the MSI mapping window on any HT bridges we encounter and report any non-standard mapping window addresses.
|
#
164264 |
|
13-Nov-2006 |
jhb |
First cut at MI support for PCI Message Signalled Interrupts (MSI): - Add 3 new functions to the pci_if interface along with suitable wrappers to provide the device driver visible API: - pci_alloc_msi(dev, int *count) backed by PCI_ALLOC_MSI(). '*count' here is an in and out parameter. The driver stores the desired number of messages in '*count' before calling the function. On success, '*count' holds the number of messages allocated to the device. Also on success, the driver can access the messages as SYS_RES_IRQ resources starting at rid 1. Note that the legacy INTx interrupt resource will not be available when using MSI. Note that this function will allocate either MSI or MSI-X messages depending on the devices capabilities and the 'hw.pci.enable_msix' and 'hw.pci.enable_msi' tunables. Also note that the driver should activate the memory resource that holds the MSI-X table and pending bit array (PBA) before calling this function if the device supports MSI-X. - pci_release_msi(dev) backed by PCI_RELEASE_MSI(). This function releases the messages allocated for this device. All of the SYS_RES_IRQ resources need to be released for this function to succeed. - pci_msi_count(dev) backed by PCI_MSI_COUNT(). This function returns the maximum number of MSI or MSI-X messages supported by this device. MSI-X is preferred if present, but this function will honor the 'hw.pci.enable_msix' and 'hw.pci.enable_msi' tunables. This function should return the largest value that pci_alloc_msi() can return (assuming the MD code is able to allocate sufficient backing resources for all of the messages). - Add default implementations for these 3 methods to the pci_driver generic PCI bus driver. (The various other PCI bus drivers such as for ACPI and OFW will inherit these default implementations.) This default implementation depends on 4 new pcib_if methods that bubble up through the PCI bridges to the MD code to allocate IRQ values and perform any needed MD setup code needed: - PCIB_ALLOC_MSI() attempts to allocate a group of MSI messages. - PCIB_RELEASE_MSI() releases a group of MSI messages. - PCIB_ALLOC_MSIX() attempts to allocate a single MSI-X message. - PCIB_RELEASE_MSIX() releases a single MSI-X message. - Add default implementations for these 4 methods that just pass the request up to the parent bus's parent bridge driver and use the default implementation in the various MI PCI bridge drivers. - Add MI functions for use by MD code when managing MSI and MSI-X interrupts: - pci_enable_msi(dev, address, data) programs the MSI capability address and data registers for a group of MSI messages - pci_enable_msix(dev, index, address, data) initializes a single MSI-X message in the MSI-X table - pci_mask_msix(dev, index) masks a single MSI-X message - pci_unmask_msix(dev, index) unmasks a single MSI-X message - pci_pending_msix(dev, index) returns true if the specified MSI-X message is currently pending - Save the MSI capability address and data registers in the pci_cfgreg block in a PCI devices ivars and restore the values when a device is resumed. Note that the MSI-X table is not currently restored during resume. - Add constants for MSI-X register offsets and fields. - Record interesting data about any MSI-X capability blocks we come across in the pci_cfgreg block in the ivars for PCI devices.
Tested on: em (i386, MSI), bce (amd64/i386, MSI), mpt (amd64, MSI-X) Reviewed by: scottl, grehan, jfv MFC after: 2 months
|
#
159085 |
|
30-May-2006 |
imp |
Add a define for the Standard SD Host Controller Base Peripheral.
|
#
153906 |
|
30-Dec-2005 |
imp |
Make RID2BAR actually return a number that can be plugged into PCIR_BAR() rather than a bitmask.
Submitted by: ru@
|
#
153861 |
|
29-Dec-2005 |
imp |
Add a macro to map from BAR to rid # (inverse of PCIR_BARS).
|
#
153560 |
|
20-Dec-2005 |
jhb |
Add a new method PCI_FIND_EXTCAP() to the pci bus interface that is used to search for a specific extended capability. If the specified capability is found for the given device, then the function returns success and optionally returns the offset of that capability. If the capability is not found, the function returns an error.
|
#
151846 |
|
29-Oct-2005 |
imp |
Use symbolic name rather thanhard coding the cap pointer offset for type two devices.
|
#
151788 |
|
28-Oct-2005 |
imp |
Add PCIM_BIOS_ADDR_MASK too
|
#
151787 |
|
28-Oct-2005 |
imp |
Some cardbus CIS definitions moved here since they are PCI registers.
|
#
147033 |
|
05-Jun-2005 |
imp |
As threatened by BURN_BRIDGES, restire PCIR_MAPS and PCIR_HEADERTYPE
|
#
145650 |
|
28-Apr-2005 |
marcel |
Add defines for the Bridge Control Register bits.
Obtained from: jhb@
|
#
144511 |
|
01-Apr-2005 |
jmg |
fix misspelling of 0x30...
Spotted by: reviewing MFC commit
|
#
144162 |
|
26-Mar-2005 |
jmg |
fix a copy/paste typo for scanner/gameport...
Spotted by: Michal Mertl <mime@traveller.cz>
|
#
144156 |
|
26-Mar-2005 |
jmg |
add some additional pci classes and sub-classes..
Reviewed by: imp (almost 6 months ago)
|
#
139749 |
|
05-Jan-2005 |
imp |
Start each of the license/copyright comments with /*-, minor shuffle of lines
|
#
120063 |
|
14-Sep-2003 |
scottl |
Teach the PCI code to parse MSI extended capabilities. Re-arrange the pcicfg struct a bit to hold extcap structures instead of structure members.
|
#
120055 |
|
14-Sep-2003 |
scottl |
Expand the extended capabilities list and add definitions for MSI.
|
#
119722 |
|
03-Sep-2003 |
jhb |
Bring back PCIR_HEADERTYPE as an alias for PCIR_HDRTYPE under BURN_BRIDGES for backwards compat. The old name will be gone in 6.0, but will be around in 5.x. This will help unbreak 3rd party code, e.g. the nvidia DRM module.
|
#
119689 |
|
02-Sep-2003 |
jhb |
- Deprecate PCIR_MAPS under BURN_BRIDGES (meaning it will be gone in 6.0) and replace it with the more intuitive name PCIR_BARS. - Add a PCIR_BAR(x) macro that returns the config space register offset of the 32-bit BAR x.
MFC after: 3 days
|
#
119539 |
|
28-Aug-2003 |
jhb |
- Rename PCIx_HEADERTYPE* to PCIx_HDRTYPE* so the constants aren't so long. - Add a new PCIM_HDRTYPE constant for the field in PCIR_HDRTYPE that holds the header type. - Replace several magic numbers with appropriate constants for the header type register and a couple of PCI_FUNCMAX. - Merge to amd64 the fix to the i386 bridge code to skip devices with unknown header types.
Requested by: imp (1, 2)
|
#
119538 |
|
28-Aug-2003 |
jhb |
Add constants for capability IDs and header types.
Submitted by: Samy Al Bahra <samy@kerneled.com>
|
#
118327 |
|
01-Aug-2003 |
imp |
Define PCI_MAXHDRTYPE to be 2. We know about header types 0, 1 and 2. Update the MI device scanning code to use PCI_MAXHDRTYPE rather than the hard coded 2.
|
#
113906 |
|
23-Apr-2003 |
des |
Add constants for USB programming interfaces. These are already defined (with other names) in the USB driver sources, but I felt that pcireg.h should have a complete list - at least of classes and interfaces that we know about and use.
|
#
97892 |
|
05-Jun-2002 |
gibbs |
Add some PCI-X register definitions.
PCIM_CMD_SERREN -> PCIM_CMD_SERRESPEN to be consistent with the PERR definition.
|
#
70230 |
|
20-Dec-2000 |
gibbs |
Add PCIR_CAP_PTR as a define for the location of the capability pointer of type 0 devices. This is required by my last aic7xxx change.
|
#
69953 |
|
12-Dec-2000 |
msmith |
Next round of PCI subsystem updates:
- Break out the /dev/pci driver into a separate file. - Kill the COMPAT_OLDPCI support. - Make the EISA bridge attach a bit more like the old code; explicitly check for the existence of eisa0/isa0 and only attach if they don't already exist. Only make one bus_generic_attach() pass over the bridge, once both busses are attached. Note that the stupid Intel bridge's class is entirely unpredictable. - Add prototypes and re-layout the core PCI modules in line with current coding standards (not a major whitespace change, just moving the module data to the top of the file). - Remove redundant type-2 bridge support from the core PCI code; the PCI-CardBus code does this itself internally. Remove the now entirely redundant header-class-specific support, as well as the secondary and subordinate bus number fields. These are bridge attributes now. - Add support for PCI Extended Capabilities. - Add support for PCI Power Management. The interface currently allows a driver to query and set the power state of a device. - Add helper functions to allow drivers to enable/disable busmastering and the decoding of I/O and memory ranges. - Use PCI_SLOTMAX and PCI_FUNCMAX rather than magic numbers in some places. - Make the PCI-PCI bridge code a little more paranoid about valid I/O and memory decodes. - Add some more PCI register definitions for the command and status registers. Correct another bogus definition for type-1 bridges.
|
#
69908 |
|
12-Dec-2000 |
msmith |
- We have access to our own device_t here, so use pci_read_config rather than finding our parent pcib and using its PCI_READ_CONFIG method.
- Fix the defines for the 32-bit I/O decode registers, and properly process the 16-bit versions. Now we will correctly check that I/O resources behind the bridge are going to be decoded.
- Bring the quirk for the Orion PCI:PCI bridge in here (since it seems to want to set the secondary/supplementary bus numbers).
- Use PCI_SLOTMAX rather than a magic number.
|
#
66515 |
|
01-Oct-2000 |
archie |
Add definition for PCIS_SERIALBUS_SMBUS PCI device subclass. Remove cut & paste leftovers.
|
#
65944 |
|
16-Sep-2000 |
gibbs |
Add PCIM_CMD_MWRICEN, the bit in the command register in PCI space that enables memory write and invalidate cycles on a bus master.
|
#
61047 |
|
28-May-2000 |
peter |
Encapsulate the old PCI compatability support and APIs completely under "options COMPAT_OLDPCI". This option already existed, but now also tidies up the declarations in #include <pci/pci*.h>. It is amazing how much stuff was using the old pre-FreeBSD 3.x names and going silently undetected.
|
#
55770 |
|
10-Jan-2000 |
yokota |
Added PCIR_BIOS (0x30).
|
#
52063 |
|
09-Oct-1999 |
peter |
Add the 16550 programming interface code for PCIS_SIMPLECOMM_UART.
|
#
50477 |
|
27-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
#
45720 |
|
16-Apr-1999 |
peter |
Bring the 'new-bus' to the i386. This extensively changes the way the i386 platform boots, it is no longer ISA-centric, and is fully dynamic. Most old drivers compile and run without modification via 'compatability shims' to enable a smoother transition. eisa, isapnp and pccard* are not yet using the new resource manager. Once fully converted, all drivers will be loadable, including PCI and ISA.
(Some other changes appear to have snuck in, including a port of Soren's ATA driver to the Alpha. Soren, back this out if you need to.)
This is a checkpoint of work-in-progress, but is quite functional.
The bulk of the work was done over the last few years by Doug Rabson and Garrett Wollman.
Approved by: core
|
#
40030 |
|
07-Oct-1998 |
gibbs |
ahc_pci.c: Disable DPARCKEN in the DSCOMMAND0 register on the aic7890/91/96/97. Parity checking is broken for some chip/MB combinations and this is the work around recommended by Adaptec.
dpt_pci.c: Remove a superflous '{' that prevented DPT_ALLOW_MEMIO from working.
pcireg.h: Add a definition for Parity Error Reponse bit in the PCI Space command register.
|
#
29636 |
|
20-Sep-1997 |
dyson |
Addition of support of the slightly rogue Promise IDE interface(Dyson), support of multiple PCI IDE controllers(Dyson), and some updates and cleanups from John Hood, who originally made our IDE DMA stuff work :-).
I have run tests with 7 IDE drives connected to my system, all in DMA mode, with no errors. Modulo any bugs, this stuff makes IDE look really good (within it's limitations.)
Submitted by: John Hood <cgull@smoke.marlboro.vt.us>
|
#
26347 |
|
01-Jun-1997 |
peter |
PCI_CLASS_MASS_STORAGE (under PCI_COMPAT) was used in a driver in LINT still (stallion.c).
|
#
26253 |
|
28-May-1997 |
se |
Add one more compatibility define to make the Adaptec driver compile with option AHC_ALLOW_MEMIO again ....
|
#
26232 |
|
28-May-1997 |
se |
Define command register enable bits, which are required for a consitency test added to pci_compat.c
|
#
26159 |
|
26-May-1997 |
se |
Completely replace the PCI bus driver code to make it better reflect reality. There will be a new call interface, but for now the file pci_compat.c (which is to be deleted, after all drivers are converted) provides an emulation of the old PCI bus driver functions. The only change that might be visible to drivers is, that the type pcici_t (which had been meant to be just a handle, whose exact definition should not be relied on), has been converted into a pcicfgregs* .
The Tekram AMD SCSI driver bogusly relied on the definition of pcici_t and has been converted to just call the PCI drivers functions to access configuration space register, instead of inventing its own ...
This code is by no means complete, but assumed to be fully operational, and brings the official code base more in line with my development code.
A new generic device descriptor data type has to be agreed on. The PCI code will then use that data type to provide new functionality:
1) userconfig support 2) "wired" PCI devices 3) conflicts checking against ISA/EISA 4) maps will depend on the command register enable bits 5) PCI to Anything bridges can be defined as devices, and are probed like any "standard" PCI device.
The following features are currently missing, but will be added back, soon:
1) unknown device probe message 2) suppression of "mirrored" devices caused by ancient, broken chip-sets
This code relies on generic shared interrupt support just commited to kern_intr.c (plus the modifications of isa.c and isa_device.h).
|
#
25121 |
|
24-Apr-1997 |
se |
Add definition of PCI_SUBID_REG2, the subvendor/device ID for a header type 2 device.
|
#
25039 |
|
20-Apr-1997 |
phk |
The bit of the cardbus bridge support code se and I have been able to agree on so far... :-) Reviewed by: se
|
#
22975 |
|
22-Feb-1997 |
peter |
Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not ready for it yet.
|
#
21673 |
|
14-Jan-1997 |
jkh |
Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
|
#
19696 |
|
12-Nov-1996 |
se |
Add support for header type == 1 devices (PCI 2.1 compatible PCI to PCI bridges with support for 64 bit memory addresses and 32 bit I/O addresses).
The code is not complete. It ignores the upper half of the long addresses. This is not a problem on PC compatible systems, but has to be fixed for real computers.
|
#
19695 |
|
12-Nov-1996 |
se |
Fix PCI to PCI bridge register bit field masks.
Thanks to "Mike Durian" <durian@plutotech.com> for the very good problem report and his support as a beta tester of this patch.
|
#
19101 |
|
22-Oct-1996 |
se |
Add support for ioctl() accesses to PCI config space registers. Garrett Wollman sent me this code a few weeks ago for review, and I made some significant changes, which he in turn accepted ...
In order to make use of these changes, a device entry has to added to /dev.
Submitted by: wollman
|
#
13633 |
|
25-Jan-1996 |
se |
Add support for multi-function devices.
|
#
13497 |
|
19-Jan-1996 |
se |
Fix bad typo: > was used instead of >> ...
Submitted by: Matt Thomas <matt@lkg.dec.com>
|
#
7233 |
|
21-Mar-1995 |
se |
Completely new PCI code:
1) Supports PCI to PCI bridge devices (and tries to initialise them, even if the BIOS is brain dead). 2) Supports shared PCI interrupts. Interrupt handlers now MUST return '0' if they found nothing to do, '1' otherwise.
New features tested with i486 systems based on the Intel Saturn and a DEC 4channel Ethernet card only, but expected to work on most systems.
The option PCI_REMAP has been removed !
Submitted by: Wolfgang Stanglmeier <wolf@kintaro.cologne.de>
|
#
6140 |
|
02-Feb-1995 |
se |
Removed misleading copyright note. This file contains just definitions taken from the PCI specs. Part of them were typed in by Wolfgang Stanglmeier, the (at that time unneeded) rest by Charles Hannum (thanks !).
|
#
6132 |
|
02-Feb-1995 |
dg |
Reapplied all of Stefan's changes. What a mess - the files were modified and moved at the same time. This made it *very* difficult to fix the revision log lossage that happend when the files were moved. SIGH.
|
#
4100 |
|
02-Nov-1994 |
se |
Submitted by: Added hooks for "lsdev" ... PCI devices should need no individual code for lsdev.
|
#
3531 |
|
12-Oct-1994 |
se |
Submitted by: Wolfgang Stanglmeier <wolf@dentaro.GUN.de> Files merged and name change: pci_device.h + pcibios.h -> pcireg.h
|