OpenGrok
Cross Reference: prep_pciconf_direct.c
xref
: /
src
/
sys
/
arch
/
prep
/
pci
/
prep_pciconf_direct.c
Home
|
History
|
Annotate
|
Download
|
only in
pci
History log of
/src/sys/arch/prep/pci/prep_pciconf_direct.c
Revision
Date
Author
Comments
1.10
19-Oct-2016
nonaka
Added MSI/MSI-X and interrupt_distribute(9) support for powerpc.
1.9
02-Oct-2015
msaitoh
branches: 1.9.2;
PCI Extended Configuration stuff written by nonaka@:
- Add PCI Extended Configuration Space support into x86.
- Check register offset of pci_conf_read() in MD part. It returns (pcireg_t)-1
if it isn't accessible.
- Decode Extended Capability in PCI Extended Configuration Space.
Currently the following extended capabilities are decoded:
- Advanced Error Reporting
- Virtual Channel
- Device Serial Number
- Power Budgeting
- Root Complex Link Declaration
- Root Complex Event Collector Association
- Access Control Services
- Alternative Routing-ID Interpretation
- Address Translation Services
- Single Root IO Virtualization
- Page Request
- TPH Requester
- Latency Tolerance Reporting
- Secondary PCI Express
- Process Address Space ID
- LN Requester
- L1 PM Substates
The following extended capabilities are not decoded yet:
- Root Complex Internal Link Control
- Multi-Function Virtual Channel
- RCRB Header
- Vendor Unique
- Configuration Access Correction
- Multiple Root IO Virtualization
- Multicast
- Resizable BAR
- Dynamic Power Allocation
- Protocol Multiplexing
- Downstream Port Containment
- Precision Time Management
- M-PCIe
- Function Reading Status Queueing
- Readiness Time Reporting
- Designated Vendor-Specific
1.8
01-Jul-2011
dyoung
branches: 1.8.12; 1.8.30;
#include <sys/bus.h> instead of <machine/bus.h>.
1.7
18-Jun-2011
matt
struct device * -> device_t
struct cfdata * -> cfdata_t
use device accessors, use device_private.
some softc/device_t splits (macppc needs a bunch more)
aprint*_dev used considerably more
1.6
17-Oct-2007
garbled
branches: 1.6.52;
Merge the ppcoea-renovation branch to HEAD.
This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.
TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.
NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
1.5
09-Jun-2006
garbled
branches: 1.5.16; 1.5.24; 1.5.34; 1.5.36; 1.5.38; 1.5.40;
Completely rework how we look up PCI interrupts on prep:
1) Rather than build an array of the pci->intr mappings, build a proplib
tree.
2) add a SIMPLEQ of device properties to the pci_chipset_tag to hold the
proplib trees of each bus.
3) Move the interrupt routing code from pci_conf_interrupt to pci_map_intr()
4) Deal properly with non-native PCI bridge chips that are not recognized
by the prep firmware, and therefore are not noted in the residual data.
The major win of this restructure is #4. Hopefully I haven't broken
anything. Tested on a 7248-100, 7043-140 and 7024-E20.
1.4
11-Dec-2005
christos
branches: 1.4.4; 1.4.8; 1.4.14;
merge ktrace-lwp.
1.3
15-Jul-2003
lukem
branches: 1.3.16;
__KERNEL_RCSID()
1.2
18-Mar-2003
matt
branches: 1.2.2;
Switch/adapt to new bus space infrastructure.
1.1
24-Feb-2002
kleink
branches: 1.1.2; 1.1.8;
In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation. The appropriate PCI
chipset tag is provided by platform-specific code.
1.1.8.2
16-Mar-2002
jdolecek
Catch up with -current.
1.1.8.1
24-Feb-2002
jdolecek
file prep_pciconf_direct.c was added on branch kqueue on 2002-03-16 15:59:23 +0000
1.1.2.2
28-Feb-2002
nathanw
Catch up to -current.
1.1.2.1
24-Feb-2002
nathanw
file prep_pciconf_direct.c was added on branch nathanw_sa on 2002-02-28 04:11:30 +0000
1.2.2.3
21-Sep-2004
skrll
Fix the sync with head I botched.
1.2.2.2
18-Sep-2004
skrll
Sync with HEAD.
1.2.2.1
03-Aug-2004
skrll
Sync with HEAD
1.3.16.2
27-Oct-2007
yamt
sync with head.
1.3.16.1
21-Jun-2006
yamt
sync with head.
1.4.14.1
19-Jun-2006
chap
Sync with head.
1.4.8.1
26-Jun-2006
yamt
sync with head.
1.4.4.1
09-Sep-2006
rpaulo
sync with head
1.5.40.1
25-Oct-2007
bouyer
Sync with HEAD.
1.5.38.1
18-Oct-2007
yamt
sync with head.
1.5.36.1
06-Nov-2007
matt
sync with HEAD
1.5.34.1
26-Oct-2007
joerg
Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
1.5.24.2
10-May-2007
garbled
convert printf's to aprint_*.
1.5.24.1
01-May-2007
garbled
Convert prep to use the new generic powerpc PCI stuff. There are
probably a few more things that can be made generic here. Tested on
7248-100.
1.5.16.1
23-Oct-2007
ad
Sync with head.
1.6.52.1
23-Jun-2011
cherry
Catchup with rmind-uvmplock merge.
1.8.30.2
05-Dec-2016
skrll
Sync with HEAD
1.8.30.1
27-Dec-2015
skrll
Sync with HEAD (as of 26th Dec)
1.8.12.1
03-Dec-2017
jdolecek
update from HEAD
1.9.2.1
04-Nov-2016
pgoyette
Sync with HEAD
Indexes created Tue Oct 14 21:09:58 GMT 2025