Revision tags: vendor/ath/0.9.14.9, vendor/tzdata/tzdata2004g, vendor/acpica/20041119 |
|
#
5e1ba6d4 |
| 23-Nov-2004 |
John Baldwin <jhb@FreeBSD.org> |
Rework the ACPI PCI link code. - Use a new-bus device driver for the ACPI PCI link devices. The devices are called pci_linkX. The driver includes suspend/resume support so that the ACPI bridge
Rework the ACPI PCI link code. - Use a new-bus device driver for the ACPI PCI link devices. The devices are called pci_linkX. The driver includes suspend/resume support so that the ACPI bridge drivers no longer have to poke the links to get them to handle suspend/resume. Also, the code to handle which IRQs a link is routed to and choosing an IRQ when a link is not already routed is all contained in the link driver. The PCI bridge drivers now ask the link driver which IRQ to use once they determine that a _PRT entry does not use a hardwired interrupt number. - The new link driver includes support for multiple IRQ resources per link device as well as preserving any non-IRQ resources when adjusting the IRQ that a link is routed to. - The entire approach to routing when using a link device is now link-centric rather than pci bus/device/pin specific. Thus, when using a tunable to override the default IRQ settings, one now uses a single tunable to route an entire link rather than routing a single device that uses the link (which has great foot-shooting potential if the user tries to route the same link to two different IRQs using two different pci bus/device/pin hints). For example, to adjust the IRQ that \_SB_.LNKA uses, one would set 'hw.pci.link.LNKA.irq=10' from the loader. - As a side effect of having the link driver, unused link devices will now be disabled when they are probed. - The algorithm for choosing an IRQ for a link that doesn't already have an IRQ assigned is now much closer to the one used in $PIR routing. When a link is routed via an ISA IRQ, only known-good IRQs that the BIOS has already used are used for routing instead of using probabilities to guess at which IRQs are probably not used by an ISA device. One change from $PIR is that the SCI is always considered a viable ISA IRQ, so that if the BIOS does not setup any IRQs the kernel will degenerate to routing all interrupts over the SCI. For non ISA IRQs, interrupts are picked from the possible pool using a simplistic weighting algorithm.
Tested by: ru, scottl, others on acpi@ Reviewed by: njl
show more ...
|
#
20447d54 |
| 11-Nov-2004 |
John Baldwin <jhb@FreeBSD.org> |
Only warn about missing _PRT tables if bootverbose is set. I've yet to see a bridge without a _PRT were a _PRT was needed. Instead, the warning in dmesg is a false warning and only serves to cause
Only warn about missing _PRT tables if bootverbose is set. I've yet to see a bridge without a _PRT were a _PRT was needed. Instead, the warning in dmesg is a false warning and only serves to cause unnecessary concern.
MFC after: 1 week
show more ...
|
Revision tags: release/5.3.0_cvs, release/5.3.0, vendor/openssh/3.9p1, vendor/libreadline/5.0p1-p5, vendor/libreadline/5.0, vendor/tzdata/tzdata2004e, vendor/gcc/3.4.2-20041014, vendor/ngatm/1.1.1, vendor/libbegemot/1.1.1, vendor/bind9/9.3.0, vendor/bind9/9.3.0rc4, vendor/pf/3.5.001, vendor/NetBSD/lukemftpd/20040809, vendor/isc-dhcp/3.0.1, vendor/openssl/0.9.7-dev |
|
#
bbf7c27a |
| 13-Aug-2004 |
Nate Lawson <njl@FreeBSD.org> |
MPSAFE locking
* Serialize calls to acpi_pcib_route_interrupt(). * Note that acpi_pcib_attach() should not be called concurrently.
|
#
12f57103 |
| 12-Aug-2004 |
Nate Lawson <njl@FreeBSD.org> |
Only print the link name if there is a link. For the hardwired case, don't bother printing it. This fixes a panic and acpi_name() has been more robust as well.
Bug from: Tai-hwa Liang <avatar-at-m
Only print the link name if there is a link. For the hardwired case, don't bother printing it. This fixes a panic and acpi_name() has been more robust as well.
Bug from: Tai-hwa Liang <avatar-at-mmlab.cse.yzu.edu.tw>
show more ...
|
Revision tags: vendor/pf-sys/3.5.004, vendor/pf-sys/3.5.003, vendor/misc-GNU/sort/20040812, vendor/gcc/3.4.2-20040728 |
|
#
310953d9 |
| 12-Aug-2004 |
Nate Lawson <njl@FreeBSD.org> |
Fix the PRT entry code in acpi_pci_link to always add the entry, even if there is no irq link. Since we now use the stored copy of PRT, not the one that used to be passed into acpi_pcib_route_interr
Fix the PRT entry code in acpi_pci_link to always add the entry, even if there is no irq link. Since we now use the stored copy of PRT, not the one that used to be passed into acpi_pcib_route_interrupt(), we need it in the list. [1]
Fix a bug in acpi_pci_find_prt() where we weren't checking the bus, thus choosing the wrong PRT entry to use for routing the link. Also, add a printf for the case where the PRT entry is not found as this should not happen.
Tested by: marcel [1]
show more ...
|
#
e4116e93 |
| 11-Aug-2004 |
Nate Lawson <njl@FreeBSD.org> |
Re-work ACPI PCI IRQ routing (_PRT, link devices). The old approach was incomplete in that the PRT routing was not aware of link programming. Fix this by doing all routing through the link devices.
Re-work ACPI PCI IRQ routing (_PRT, link devices). The old approach was incomplete in that the PRT routing was not aware of link programming. Fix this by doing all routing through the link devices. The new algorithm for setting up links is:
1. Read _CRS to get current setting. If invalid (not in _PRS), then set to 0. 2. Attempt to call _DIS on the link. If successful, mark the link as not routed. Otherwise, assume it still is.
Then when a routing request occurs:
3. Update weights for all IRQs 4. Attempt to route the initial IRQ if valid 5. If that fails, walk through the sorted list, attempting to route IRQs. 6. Configure the trigger/polarity based on _PRS.
Other changes: * Add acpi_pci_find_prt() to look up the PRT entry for a given device and acpi_pci_link_route() to select/route the best IRQ for it. * Remove duplicated code in acpi_pcib_route_interrupt() that picked the first IRQ from _PRS. * Remove unneeded arguments from acpi_pcib_resume() and friends. * Ignore _STA on link devices but report if it seems strange. * Add a prt_source handle to the PRT structure since the ACPI struct ACPI_PCI_ROUTING_TABLE uses a fixed-size entry for it. We'll need to dynamically size this object if we want to use it the same way ACPI-CA does. Null-terminate the source.
Tested by: Luo Hong <luohong99_at_mails.tsinghua.edu.cn>, Jeffrey Katcher <jmkatcher_at_yahoo.com> Info from: jhb, Len Brown (Intel)
show more ...
|
Revision tags: vendor/ngatm/1.1, vendor/file/4.10, vendor/bsnmp/1.7, vendor/sendmail/8.13.1, vendor/ntp/4.2.0, vendor/pf-sys/3.5.002, vendor/tcsh/6.13, vendor/ngatm/1.0, vendor/amd/6.0.10p1, vendor/misc-GNU/grep/2.5.1, vendor/libregex/from-grep-2.5.1, vendor/misc-GNU/sort/5.2.1, vendor/acpica/20040527 |
|
#
39981fed |
| 01-Jul-2004 |
John Baldwin <jhb@FreeBSD.org> |
Trim a few things from the dmesg output and stick them under bootverbose to cut down on the clutter including PCI interrupt routing, MTRR, pcibios, etc.
Discussed with: USENIX Cabal
|
Revision tags: vendor/zlib/1.2.1, vendor/isc-dhcp/3.0.1rc14, vendor/gdb/marcel_contrib |
|
#
95957f62 |
| 23-Jun-2004 |
John Baldwin <jhb@FreeBSD.org> |
- Defer BUS_CONFIG_INTR() on ACPI IRQ resources until the resources are actually used. For most ACPI devices this means deferring the call until bus_alloc_resource(). - Add a function acpi_con
- Defer BUS_CONFIG_INTR() on ACPI IRQ resources until the resources are actually used. For most ACPI devices this means deferring the call until bus_alloc_resource(). - Add a function acpi_config_intr() to call BUS_CONFIG_INTR() for an ACPI IRQ resource using the trigger mode and polarity information stored in the ACPI resource object. - Add a function acpi_lookup_irq_resource() to lookup the ACPI IRQ resource that corresponds to a specified rid and new-bus resource. - Have the ACPI PCI bridge driver call BUS_CONFIG_INTR() on interrupts that it routes through link devices. - Remove needactivate variable from acpi_alloc_resource() by changing the function not modify the flags variable but just mask off RF_ACTIVE when calling rman_reserve_resource().
Reviewed by: njl (1, an earlier version)
show more ...
|
Revision tags: vendor/ipfilter/3.4.35, vendor/ipfilter-sys/3-4-35, vendor/tzcode/tzcode2004a, vendor/pf-sys/3.5.001, vendor/pf/3.5, vendor/pf-sys/3.5, vendor/altq/20040607, vendor/misc-GNU/cvs/1.11.17 |
|
#
4dc4ea26 |
| 07-Jun-2004 |
John Baldwin <jhb@FreeBSD.org> |
- Use PCI_INVALID_IRQ macro rather than a magic number. - Remove obsolete comment about APIC_IO routing.
|
Revision tags: release/4.10.0_cvs, release/4.10.0, vendor/acpica/20040514, vendor/libuwx/BETA7 |
|
#
869ec176 |
| 06-May-2004 |
Nate Lawson <njl@FreeBSD.org> |
Make unnecessary globals static and remove unused includes.
Pointed out by: cscout
|
Revision tags: vendor/pf-sys/3.4.003, vendor/NetBSD/lukemftp/20040426, vendor/tnftp/20040426, vendor/openssh/3.8.1p1 |
|
#
4ed2b85d |
| 19-Apr-2004 |
Nate Lawson <njl@FreeBSD.org> |
Add a temporary workaround for acpi_AppendBufferResource() returning with a NULL crsbuf pointer. This shouldn't happen if it returns AE_OK. We'll figure out why this is happening later.
Submitted
Add a temporary workaround for acpi_AppendBufferResource() returning with a NULL crsbuf pointer. This shouldn't happen if it returns AE_OK. We'll figure out why this is happening later.
Submitted by: Bruno Ducrot <ducrot@poupinou.org>
show more ...
|
Revision tags: vendor/less/v381, vendor/misc-GNU/cvs/1.11.15, vendor/bsnmp/1.6, vendor/acpica/20040402, vendor/pf-sys/3.4.002, vendor/openssl/0.9.7d-p1, vendor/heimdal/0.6.1, vendor/com_err/0.6.1, vendor/tcpdump/3.8.3, vendor/libpcap/0.8.3, vendor/pf-sys/3.4.001 |
|
#
e548abe7 |
| 22-Mar-2004 |
Nate Lawson <njl@FreeBSD.org> |
Use the correct length for appending an extended irq resource. This may have broken APIC routing. This bug has been present since rev 1.33.
|
#
3dc52520 |
| 22-Mar-2004 |
Nate Lawson <njl@FreeBSD.org> |
Shorten some printfs to fit better. No other functional changes.
|
#
3304735d |
| 22-Mar-2004 |
Nate Lawson <njl@FreeBSD.org> |
Whitespace and comment changes. No MD5 change to the object file.
|
#
8e1624b6 |
| 20-Mar-2004 |
Nate Lawson <njl@FreeBSD.org> |
Fix loop termination condition for parsing resources in _PRS buffers. This completes the effort to handle dependent functions, which are used in some machines for irq link resources. Also, clean up
Fix loop termination condition for parsing resources in _PRS buffers. This completes the effort to handle dependent functions, which are used in some machines for irq link resources. Also, clean up some nearby comments while I'm at it.
show more ...
|
Revision tags: vendor/acpica/20040311 |
|
#
d19b6e67 |
| 18-Mar-2004 |
Nate Lawson <njl@FreeBSD.org> |
Support the DPF (start dependent function) resource type in parsing _PRS. This should fix this error people get attaching cardbus controllers:
pcib0: _PRS resource entry has unsupported type 2
|
Revision tags: vendor/openssl/0.9.7d, vendor/openssl/0.9.7c-patch1, vendor/misc-GNU/grep/2.4.2, vendor/acpica/20040220, vendor/pf/3.4, vendor/openssh/3.8p1, vendor/pf-sys/3.4, vendor/SGI/vjs_20020502, vendor/libregex/from-grep-2.4.2, release/5.2.1_cvs, release/5.2.1, vendor/sendmail/8.12.11, vendor/libreadline/4.3p1-p5, vendor/openpam/EELGRASS, vendor/one-true-awk/20040207, vendor/one-true-awk/20030731, vendor/bsnmp/1.5a, vendor/gdtoa/20040118, release/5.2.0_cvs, release/5.2.0, vendor/alsa/1.9, vendor/openssh/3.7.1p2 |
|
#
2b26028d |
| 18-Dec-2003 |
Alexander Kabaev <kan@FreeBSD.org> |
Initialize acpi buffer structs early in order to avoid freeing unallocated pointers later in done: section.
|
#
1e4925e8 |
| 18-Dec-2003 |
Nate Lawson <njl@FreeBSD.org> |
Add support for multiple CIDs since _CID can contain a package of values. Implement this in acpi_MatchHid() and acpi_isa_get_compatid(). This should fix mouse support for some users.
Move all users
Add support for multiple CIDs since _CID can contain a package of values. Implement this in acpi_MatchHid() and acpi_isa_get_compatid(). This should fix mouse support for some users.
Move all users of AcpiGetObjectInfo() to use dynamic storage instead of a devinfo on the stack. This is necessary since ACPI-CA needs to allocate different sized arrays for the CompatList.
show more ...
|
Revision tags: vendor/acpica/20031203, vendor/ath/0.9.6.3, vendor/ath/0.9.6.1, vendor/bind/8.3.7 |
|
#
3500189b |
| 20-Nov-2003 |
John Baldwin <jhb@FreeBSD.org> |
Fix a typo in my patches to support extended IRQ resources that broke the type checking for _PRS for a link device's interrupt resources.
Approved by: re (scottl)
|
#
3d9644ef |
| 14-Nov-2003 |
John Baldwin <jhb@FreeBSD.org> |
Improve support for extended IRQ resources: - For acpi_pci_link_entry_dump(), add a few helper functions to display the trigger mode, polarity, and sharemode of an individual IRQ resource. These
Improve support for extended IRQ resources: - For acpi_pci_link_entry_dump(), add a few helper functions to display the trigger mode, polarity, and sharemode of an individual IRQ resource. These functions are then called for both regular and extended IRQ resources. - In acpi_pci_link_set_irq(), use the same type of IRQ resource (regular vs. extended) for the new current resource as the type of the resources from _PRS. - When routing an interrupt don't ignore extended IRQ resources. Also, use the same type of IRQ resource (regular vs. extended) for the new current resource when as the type of the resource from _PRS.
Tested by: peter
show more ...
|
Revision tags: vendor/bsnmp/1.4, vendor/ngatm/0.91, vendor/gcc/3.3.3-20031106, vendor/NetBSD/lukemftp/20031103, vendor/tnftp/20031103, vendor/ath/0.9.5.17, vendor/ngatm/0.9, vendor/libuwx/BETA6, release/4.9.0_cvs, release/4.9.0, vendor/tzdata/tzdata2003d, vendor/heimdal/cvs-20030922, vendor/heimdal/0.6, vendor/libuwx/BETA5, vendor/openssl/0.9.7c, vendor/sendmail/8.12.10, vendor/sendmail/200309_parseaddr_patch, vendor/openssh/200309-xrealloc-patch, vendor/openssh/200309-buffer-patch, vendor/amd/6.0.9, vendor/isc-dhcp/3.0.1rc12, vendor/libreadline/4.3, vendor/misc-GNU/sort/2.1 |
|
#
aad970f1 |
| 24-Aug-2003 |
David E. O'Brien <obrien@FreeBSD.org> |
Use __FBSDID(). Also some minor style cleanups.
|
#
cace7a2a |
| 22-Aug-2003 |
Warner Losh <imp@FreeBSD.org> |
Prefer new location of pci include files (which have only been in the tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
|
Revision tags: vendor/gcc/3.3.1, vendor/acpica/20030619, vendor/ath/0.9.5.2, vendor/one-true-awk/20030729, vendor/openpam/DOGWOOD |
|
#
6fca9360 |
| 13-Jul-2003 |
Nate Lawson <njl@FreeBSD.org> |
Update code to work with 0619 dist
* Use ACPI_BUFFER as the type for AcpiGetObjectInfo * Remove AcpiEnableEvent/AcpiClearEvent for ACPI_EVENT_FIXED (power/sleep buttons) as they are no longer need
Update code to work with 0619 dist
* Use ACPI_BUFFER as the type for AcpiGetObjectInfo * Remove AcpiEnableEvent/AcpiClearEvent for ACPI_EVENT_FIXED (power/sleep buttons) as they are no longer needed * Change calls to use the new GPE functions * Add AcpiOs*Lock functions
show more ...
|
Revision tags: vendor/gcc/3.3.1-20030711, vendor/NetBSD/lukemftp/20030630, vendor/tnftp/20030630, vendor/ath/0.9.4.0, vendor/misc-GNU/texinfo/4.6, vendor/bind/8.3.6, vendor/NetBSD/lukemftp/20030615, vendor/tnftp/20030615, release/5.1.0_cvs, release/5.1.0, vendor/openpam/DIGITALIS, vendor/acpica/20030228b, vendor/acpica/20030228a, vendor/libuwx/BETA4, vendor/openpam/DIANTHUS, vendor/misc-GNU/texinfo/4.5, vendor/groff/1.19, vendor/acpica/20030228, vendor/tzdata/tzdata2003a, vendor/openssh/3.6.1p1, vendor/alsa/1.8, vendor/alsa/1.51, vendor/alsa/1.39, release/4.8.0_cvs, release/4.8.0, vendor/sendmail/8.12.9, vendor/gdtoa/20030324, vendor/openssl/secfix-20030317, vendor/openssl/secfix-20030319, vendor/gdtoa/20030318, vendor/one-true-awk/20030314, vendor/gdtoa/20030305, vendor/sendmail/8.12.8, vendor/tcpdump/3.7.2, vendor/file/3.41, vendor/ext2fs/2.4.3-rh7.1, vendor/openssl/0.9.7a, vendor/file/3.40, vendor/ipfilter/3.4.31, vendor/ipfilter-sys/3-4-31, vendor/sendmail/8.12.7-protofix, vendor/gcc/3.2.2-20030205, vendor/sendmail/8.12.7, vendor/NetBSD/lukemftpd/20030122, vendor/openssl/0.9.7-stable-1, vendor/openssl/0.9.7, vendor/bind/8.3.4, vendor/misc-GNU/cvs/1.11.5, vendor/heimdal/0.5.1-patch, release/5.0.0_cvs, release/5.0.0, vendor/isc-dhcp/3.0.1rc11, vendor/isc-dhcp/3.0.1rc10, vendor/openpam/DAFFODIL, vendor/NetBSD/lukemftpd/20030105, vendor/one-true-awk/20021213, vendor/openpam/CYCLAMEN, vendor/one-true-awk/20021129, vendor/gcc/3.2.1, vendor/binutils/2.13.2_20021127, vendor/misc-GNU/cvs/1.11.2.1-20021201, vendor/acpica/20021118, vendor/heimdal/0.5.1, vendor/bind/8.3.3.patched, vendor/NetBSD/lukemftpd/1.2-beta2, vendor/ntp/4.1.1b, vendor/ntp/4.1.1a |
|
#
ebc4ae3b |
| 29-Oct-2002 |
John Baldwin <jhb@FreeBSD.org> |
Add a missing newline to the end of a device_printf().
Reported by: Michael G. Petry <petry@NetMasters.Com>
|
Revision tags: vendor/openssh/3.5p1, vendor/tzdata/tzdata2002d, vendor/gdb/5.2.1, vendor/ncurses/5.2-20020907-ac-fix, vendor/binutils/2.13.20021011, vendor/groff/1.18.1, vendor/gcc/3.2-20021009, release/4.7.0_cvs |
|
#
ba835e3f |
| 05-Oct-2002 |
Mitsuru IWASAKI <iwasaki@FreeBSD.org> |
Add code for ACPI PCI link object manipulation. This allocate the best IRQ to boot-disable devices (have IRQ 0). Allocated IRQ will be used for PCI interrupt routing when ACPI is enabled.
Note that
Add code for ACPI PCI link object manipulation. This allocate the best IRQ to boot-disable devices (have IRQ 0). Allocated IRQ will be used for PCI interrupt routing when ACPI is enabled.
Note that verbose messaging enabled for the time being so that people can easily notice the strange behavior if it happened.
show more ...
|