Home | History | Annotate | Download | only in include
History log of /src/sys/arch/i386/include/pci_machdep.h
RevisionDateAuthorComments
 1.19  26-Feb-2003  fvdl Redirect some includes to x86/foo.h
 1.18  15-May-2002  thorpej branches: 1.18.4;
Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
 1.17  08-Jun-2001  simonb branches: 1.17.4;
For ports that wire up pciide in compatibility mode, have
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.

Ports that don't need to do this no longer need to supply a
dummy function.
 1.16  28-Dec-2000  sommerfeld branches: 1.16.4;
Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
 1.15  18-Jul-2000  soda add "#define I386_PCI_INTERRUPT_LINE_NO_CONNECTION 0xff"
 1.14  04-Jun-2000  cgd branches: 1.14.2;
Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
 1.13  01-Jun-2000  cgd kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
 1.12  19-Mar-1999  cgd branches: 1.12.8; 1.12.18;
Moved from arch/i386/pci/pci_machdep.h,v
 1.11  15-Aug-1998  mycroft Make copyright notices with my name consistent.
 1.10  13-Aug-1998  thorpej vm_offset_t -> {vaddr_t,paddr_t}, vm_size_t -> vsize_t
 1.9  04-May-1998  thorpej Add a function, pci_bus_flags(), that determines which flags (for memory
and i/o enabled) should be passed to the primary PCI bus's autconfiguration
node. Use this function to detect broken PCI-Host bridges, which have
problems with memory-mapped access. Add the SIS 85C496 to this list.
 1.8  26-Aug-1997  thorpej Notify drivers that we "prefer" I/O mapped space, per discussion with
Chris Demetriou and Matt Thomas, some two or three months ago. (This hint
is used by the latest "de" driver.)
 1.7  06-Jun-1997  thorpej branches: 1.7.4;
Pull thorpej-bus-dma branch into mainline.
 1.6  17-Dec-1996  thorpej branches: 1.6.8;
Implement pci_decompose_tag().
 1.5  27-Mar-1996  cgd modify these to provide a new, better-specified PCI interface
(soon to be documented on mailing lists; eventually in section 9 manual
pages), most importantly:
(1) support interrupt pin swizzling on non-i386 systems with
PCI-PCI bridges (per PPB spec; done, but meaningless, on i386).
(2) provide pci_{io,mem}_find(), to determine what I/O or memory
space is described by a given PCI configuration space
mapping register.
(3) provide pci_intr_map(), pci_intr_string(), and
pci_intr_{,dis}establish() to manipulate and print info about
PCI interrupts.
(4) deprecate the pci_map_* functions, and provide them only
as compatibility interfaces (in pci_compat.c) which will
eventually go away, implemented as wrappers around
the functions described above.
(5) make pci functions take as an argument a machine-dependent
cookie, to allow more flexibility in implementation.
 1.4  14-Mar-1996  cgd (1) remove the #ifdef i386 from pci.c, and provide a machine-dependent
hook (pci_md_attach_hook()) to do any machine-dependent attachment
gunk, e.g. on the i386 printing out the configuration mode (if bus 0)
(2) don't pass max device number for a given bus in, use
PCI_MAX_DEVICE_NUMBER, which can be defined on a per-machine basis.
(defaults to 32. on i386, it's 32 if pci conf mode == 1, 16 if 2.)
 1.3  17-Apr-1995  cgd clean up several ISA device interfaces: autoconfiguration, header
inclusion, and interrupt configuration. more work still needs to be done,
but it's getting better...
 1.2  27-Oct-1994  cgd new RCS ID format.
 1.1  09-Aug-1994  mycroft Add PCI autoconfiguration support.
 1.6.8.1  18-May-1997  thorpej Add an external declaration for the pci dma tag.
 1.7.4.1  27-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.12.18.1  22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.12.8.2  05-Jan-2001  bouyer Sync with HEAD
 1.12.8.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.14.2.1  10-Aug-2000  soda Pull up to netbsd-1-5 branch
Approved by: thorpej

- define PCI_INTERRUPT_PIN_MAX and use it instead of magic number.
- define I386_PCI_INTERRUPT_LINE_NO_CONNECTION and use it instead of
magic number.

Revisions pulled up:
> cvs rdiff -r1.28 -r1.29 syssrc/sys/dev/pci/pcireg.h
> cvs rdiff -r1.14 -r1.15 syssrc/sys/arch/i386/include/pci_machdep.h
> cvs rdiff -r1.38 -r1.39 syssrc/sys/arch/i386/pci/pci_machdep.c
> cvs rdiff -r1.1 -r1.2 syssrc/sys/arch/i386/pci/opti82c558.c \
> syssrc/sys/arch/i386/pci/sis85c503.c \
> syssrc/sys/arch/i386/pci/via82c586.c
 1.16.4.2  20-Jun-2002  nathanw Catch up to -current.
 1.16.4.1  21-Jun-2001  nathanw Catch up to -current.
 1.17.4.1  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.18.4.2  15-May-2002  thorpej Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
 1.18.4.1  15-May-2002  thorpej file pci_machdep.h was added on branch sommerfeld_i386mp_1 on 2002-05-15 19:23:55 +0000

RSS XML Feed