Commit Graph

65 Commits

Author SHA1 Message Date
thorpej 66f9322f5f EISA and PCI do not require bouncing; specify a bounce threshold of 0. 1998-06-03 06:35:49 +00:00
thorpej c099eb3a4a 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.
1998-05-04 18:49:07 +00:00
thorpej ff701f8abb Garbage-collect the DMA tag's "_cookie" member; it's not used for anything. 1998-04-26 22:37:20 +00:00
cgd 7fa109343c cope with name fixup in pcidevs 1998-03-28 02:12:02 +00:00
cgd ccdea2d9c8 machine-dependent bits (for compat interrupt mapping) of PCI IDE driver. 1998-03-04 06:35:47 +00:00
thorpej 424e1858c4 Use __BROKEN_INDIRECT_CONFIG where appropriate. 1998-02-06 08:00:52 +00:00
thorpej e56b1d0b2d Add an autoconfig node for PCI-EISA bridges. Configures EISA and ISA
bridges via callback.
1998-02-06 07:50:07 +00:00
thorpej 36760d9d94 Update for changes to config. 1998-01-12 18:59:04 +00:00
perry aceff90d16 add yet another PCI brige -- from pr 4780 from Nathan J. Williams 1998-01-10 01:15:14 +00:00
fvdl 83ef3d4928 Switch off CPU-PCI write posting for the Saturn chipset; it is known
to cause problems with PCI busmasters.
1998-01-09 22:34:58 +00:00
jtc 1bcecdd613 Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:48:33 +00:00
drochner e125082627 adapt to changed device names 1997-10-01 18:13:19 +00:00
thorpej 75a4512f7f 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.)
1997-08-26 03:14:06 +00:00
fvdl 62e9894c48 Recognize some more chipsets. 1997-08-03 23:42:05 +00:00
perry 10838cb3ff Add another bridge ID, from pr 3926 submitted by Soren S. Jorvang 1997-07-30 21:25:00 +00:00
thorpej 9fefca0657 Update for repaired Triton MX PCI ID. 1997-06-24 06:21:22 +00:00
thorpej 63bad43fa4 Pull thorpej-bus-dma branch into mainline. 1997-06-06 23:28:40 +00:00
thorpej 14078d838d Remove comment about bus dma tag. I've been convinced otherwise. 1997-05-18 23:14:03 +00:00
thorpej 5e447974cb Add a comment about why the bus dma tag is not provided to the child
bus attaching to the bridge.
1997-05-18 05:30:34 +00:00
thorpej 2b8a15aed4 Add a comment about why the bus dma tag is not forwarded from parent
to child if an auxillary PCI bus is attached to the bridge.  Also,
remove an extra ';'.
1997-05-18 05:29:24 +00:00
jtk 86bf57701c add support for dual PCI bus Intel host/PCI bridge. Thanks to Chris Demetriou for his assistance in educating me about the vagaries of PCI and its configuration model. 1997-05-13 22:47:30 +00:00
mycroft 0b3a169a66 This is no longer needed. 1997-04-24 20:45:10 +00:00
jtk 4ed6c3b834 add support for ACC Micro host bridges 1997-04-13 22:48:27 +00:00
thorpej 01daecba3a Implement pci_decompose_tag(). 1996-12-17 01:55:56 +00:00
thorpej 35a40fda4b Implement a simple generic PCI-ISA bridge driver. This driver exists
primarily to nicely print version information about your PCI chipset
(try with "options PCIVERBOSE").  Eventually, it may be used to
enable/disable features/bugs of a given PCI chipset.  In addition, this
driver uses the PCI-ISA bridge callback mechanism to logically attach the
ISA bus to the PCI-ISA bridge.
1996-11-28 02:53:45 +00:00
thorpej 30612943e3 Implement a simple generic PCI-Host bridge driver. At the moment, this
driver is a place-holder, which will nicely print version information
about your PCI chipset (try with "options PCIVERBOSE").  Eventually,
this can be used to enable/disable features/bugs of individual PCI
chipsets.
1996-11-28 02:49:01 +00:00
fvdl 753949629e Make this compile again if PCI_CONF_MODE is defined (unused label). 1996-10-24 12:32:29 +00:00
thorpej 16c4c5af26 New bus.h implementation/interface:
- No more distinction between i/o-mapped and memory-mapped
	  devices.  It's all "bus space" now, and space tags
	  differentiate the space with finer grain than the
	  bus chipset tag.
	- Add memory barrier methods.
	- Implement space alloc/free methods.
	- Implement region read/write methods (like memcpy to/from
	  bus space).
This interface provides a better abstraction for dealing with
machine-independent chipset drivers.
1996-10-21 22:24:37 +00:00
christos bd73314ed9 backout previous kprintf changes 1996-10-13 03:19:38 +00:00
christos 06555645c2 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:24:36 +00:00
cgd 79e0a8a2b9 update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
1996-04-11 22:15:08 +00:00
mycroft 30c174cdcf Use a more standard and more sane error cleanup convention... 1996-03-27 06:49:54 +00:00
cgd da3136aba8 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.
1996-03-27 04:01:10 +00:00
cgd 0926920201 (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.)
1996-03-14 02:37:59 +00:00
cgd c8487c701e reorganize mapping register definitions 1996-03-04 19:30:50 +00:00
cgd 591c6fd2cd make PCI bus match/attach and sub-device attachment machine-independent.
(remove that code from this file.)
1996-02-28 01:50:02 +00:00
mycroft 3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
cgd 0d41f58879 fix a pasto 1995-07-27 21:39:59 +00:00
mycroft fc427776a7 Add stuff for I/O mapping. 1995-07-27 00:29:02 +00:00
cgd 3722386a41 use new pcireg.h macros 1995-06-18 02:36:41 +00:00
mycroft 1922f9e648 Use the memory mapping set up by the BIOS. 1995-06-05 03:07:34 +00:00
cgd 471cfd3fc5 define pcicd, pciattach() here now. 1995-05-23 03:43:58 +00:00
cgd 8a640328ed clean up several ISA device interfaces: autoconfiguration, header
inclusion, and interrupt configuration.  more work still needs to be done,
but it's getting better...
1995-04-17 12:06:30 +00:00
mycroft e25c1817cf kernel_pmap --> pmap_kernel() 1995-04-10 13:08:28 +00:00
mycroft 38c309142a Clean up deleted files. 1995-01-27 05:46:40 +00:00
cgd 249527c4f1 move mi pci files to /sys/dev 1995-01-27 05:46:39 +00:00
mycroft 52f079131b Incorporate recent changes from Wolfgang. Recognize the 815. 1995-01-16 21:48:35 +00:00
mycroft 290ed068ab Remove many of the `static's, to facilitate debugging. 1995-01-04 09:02:32 +00:00
mycroft 93a0c4a258 Add interrupt sharing types. 1995-01-03 01:42:11 +00:00
mycroft ff315ba9a4 Don't turn on the SCE bit in the enable register. 1994-12-28 19:45:41 +00:00