#
d541eb80 |
| 13-Nov-2002 |
Maxime Henrion <mux@FreeBSD.org> |
Unbreak kernel build.
Submitted by: Hiten Pandya <hiten@angelica.unixdaemons.com>
|
#
1c54ff33 |
| 13-Nov-2002 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
Convert kernel compile option PCI_ALLOW_UNSUPPORTED_IO_RANGE to a loader tunable hw.pci.allow_unsupported_io_range.
Submitted by: Hiten Pandya <hiten@angelica.unixdaemons.com> Approved by: re (mur
Convert kernel compile option PCI_ALLOW_UNSUPPORTED_IO_RANGE to a loader tunable hw.pci.allow_unsupported_io_range.
Submitted by: Hiten Pandya <hiten@angelica.unixdaemons.com> Approved by: re (murray)
show more ...
|
Revision tags: release/4.7.0_cvs |
|
#
38906aed |
| 07-Sep-2002 |
John Baldwin <jhb@FreeBSD.org> |
Export pcib_attach() as a "protected" for use in subclasses of the PCI-PCI bridge driver.
|
#
cea0a895 |
| 06-Sep-2002 |
John Baldwin <jhb@FreeBSD.org> |
Prefer the physical bus number of the PCI bus as the unit of the pciX device created.
|
#
c6a121ab |
| 05-Sep-2002 |
John Baldwin <jhb@FreeBSD.org> |
Make the printf messages when routing interrupts more consistent in the various PCI bridge drivers.
|
#
6f0d5884 |
| 26-Aug-2002 |
John Baldwin <jhb@FreeBSD.org> |
Export a few symbols as globals to allow subclassing of this driver. In OOP speak, you would mark these as 'protected' members. Specifically: - Make the pcib_softc struct public so it can be used b
Export a few symbols as globals to allow subclassing of this driver. In OOP speak, you would mark these as 'protected' members. Specifically: - Make the pcib_softc struct public so it can be used by subclasses. - Make pcib_{read,write}_ivar(), pcib_alloc_resource(), pcib_maxslots(), and pcib_{read,write}_config() globals that can be used by subclasses. - Make the pcib devclass a global variable. - Move most of the pcib_attach() function into a global pcib_attach_common() function that can be called by the attach routines of subclasses.
Tested on: i386, alpha, sparc64, ia64
show more ...
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
8961964d |
| 13-Apr-2002 |
Warner Losh <imp@FreeBSD.org> |
Fix an edge case wrt membase, but more changes needed
|
#
1efefb2d |
| 26-Feb-2002 |
Warner Losh <imp@FreeBSD.org> |
Fix warnings introduced in the PCI_ALLOW_UNSUPPORTED_IO_RANGE case.
|
#
6e47a4f6 |
| 22-Feb-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Allow PCI_ALLOW_UNSUPPORTED_IO_RANGE to leave broken setups broken enough to work.
|
#
12b8c86e |
| 19-Feb-2002 |
Warner Losh <imp@FreeBSD.org> |
Put the stard/end adjustments back. They are needed. Also make start == 0 a special case. I hope this fixes the real problem that phk and others were seeing.
|
#
8046c4b9 |
| 12-Feb-2002 |
Mike Smith <msmith@FreeBSD.org> |
Don't claim to have routed an interrupt when the method actually returned an error.
|
#
34428485 |
| 09-Feb-2002 |
Warner Losh <imp@FreeBSD.org> |
Make unsupported memory range message bootverbose only
|
#
d0036d6e |
| 08-Feb-2002 |
Warner Losh <imp@FreeBSD.org> |
Remove bogus range restrictions that attempted to restrict the range of I/O in 1.5. It looks like I got it right only for some of the cases. Instead, allow ISA addresses as a special case. Most PC
Remove bogus range restrictions that attempted to restrict the range of I/O in 1.5. It looks like I got it right only for some of the cases. Instead, allow ISA addresses as a special case. Most PCI bridges decode this range. I need to investigate PCI bridges better to know if this is always true or not, but for now assume that it is since that seems to be the most common case.
# We need to allocate addresses better for the pccard stuff...
Submitted by: phk, mitsunaga-san
show more ...
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
7a852c22 |
| 15-Jan-2002 |
Warner Losh <imp@FreeBSD.org> |
Make PCI_ALLOW_UNSUPPORTED_IO_RANGE an option until the ISA address problem is fixed at the bridge level. This is needed for some newer laptops that have the cardbus bridge not on pci0.
|
#
7eea743e |
| 26-Nov-2001 |
Warner Losh <imp@FreeBSD.org> |
Experimental patch to try to properly clip the range of the memory request to one that's supported by the bridge. I'm not 100% sure this is correct, but it makes it easier for the cardbus bridge to
Experimental patch to try to properly clip the range of the memory request to one that's supported by the bridge. I'm not 100% sure this is correct, but it makes it easier for the cardbus bridge to allocate its memory.
Similar code is needed for the I/O range. Also, I'm not sure if I should be doing this based on memory or pmemory (but likely should do it based on some flag that tells us to prefetch or not).
Talked about a long time ago with: msmith
show more ...
|
#
9efaa0ae |
| 26-Sep-2001 |
Brooks Davis <brooks@FreeBSD.org> |
Add a standard hack in the spirit of PCI_ENABLE_IO_MODES to allow systems with weird PCI-PCI bridge configurations to work. Defining PCI_ALLOW_UNSUPPORTED_IO_RANGE causes the sanity checks to pass e
Add a standard hack in the spirit of PCI_ENABLE_IO_MODES to allow systems with weird PCI-PCI bridge configurations to work. Defining PCI_ALLOW_UNSUPPORTED_IO_RANGE causes the sanity checks to pass even with out of range values.
Reviewed by: msmith
show more ...
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
8983cfbf |
| 13-Dec-2000 |
Mike Smith <msmith@FreeBSD.org> |
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
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.
show more ...
|
#
4fa59183 |
| 12-Dec-2000 |
Mike Smith <msmith@FreeBSD.org> |
- 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 registe
- 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.
show more ...
|
#
bb0d0a8e |
| 08-Dec-2000 |
Mike Smith <msmith@FreeBSD.org> |
Next phase in the PCI subsystem cleanup.
- Move PCI core code to dev/pci. - Split bridge code out into separate modules. - Remove the descriptive strings from the bridge drivers. If you want
Next phase in the PCI subsystem cleanup.
- Move PCI core code to dev/pci. - Split bridge code out into separate modules. - Remove the descriptive strings from the bridge drivers. If you want to know what a device is, use pciconf. Add support for broadly identifying devices based on class/subclass, and for parsing a preloaded device identification database so that if you want to waste the memory, you can identify *anything* we know about. - Remove machine-dependant code from the core PCI code. APIC interrupt mapping is performed by shadowing the intline register in machine- dependant code. - Bring interrupt routing support to the Alpha (although many platforms don't yet support routing or mapping interrupts entirely correctly). This resulted in spamming <sys/bus.h> into more places than it really should have gone. - Put sys/dev on the kernel/modules include path. This avoids having to change *all* the pci*.h includes.
show more ...
|