#
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.
|
#
78a49a45 |
| 16-Aug-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Give timecounters a numeric quality field.
A timecounter will be selected when registered if its quality is not negative and no less than the current timecounters.
Add a sysctl to report all availa
Give timecounters a numeric quality field.
A timecounter will be selected when registered if its quality is not negative and no less than the current timecounters.
Add a sysctl to report all available timecounters and their qualities.
Give the dummy timecounter a solid negative quality of minus a million.
Give the i8254 zero and the ACPI 1000.
The TSC gets 800, unless APM or SMP forces it negative.
Other timecounters default to zero quality and thereby retain current selection behaviour.
show more ...
|
Revision tags: release/5.1.0_cvs, release/5.1.0 |
|
#
214475d8 |
| 30-Apr-2003 |
Marcel Moolenaar <marcel@FreeBSD.org> |
o Don't announce that the timer is good when in fact it isn't timing at all (ie reads yield constant values). Display the width as the difference between max and min so that constant timers ha
o Don't announce that the timer is good when in fact it isn't timing at all (ie reads yield constant values). Display the width as the difference between max and min so that constant timers have width zero. o Get the address of the timer from the XPmTmrBlk field instead of the V1_PmTmrBlk field. The former is a generic address and can specify a memory mapped I/O address. Remove <machine/bus_pio.h> to account for this. The timer is now properly configured on machines with ACPI v2 tables, whether PIO or MEMIO. Note that the acpica code converts v1 tables into v2 tables so the address is always present in XPmTmrBlk. o Replace the TIMER_READ macro with a call to the read_counter() function and add a barrier to make sure that we observe proper ordering of the reads.
show more ...
|
Revision tags: release/4.8.0_cvs, release/4.8.0, release/5.0.0_cvs, release/5.0.0 |
|
#
3a65df00 |
| 16-Oct-2002 |
John Baldwin <jhb@FreeBSD.org> |
struct timecounter is defined in sys/time.h on 4-stable.
Sponsored by: The Weather Channel
|
#
87e5d361 |
| 09-Oct-2002 |
John Baldwin <jhb@FreeBSD.org> |
Include <dev/acpica/acpivar.h> instead of <acpica/acpivar.h> like all the other sys/dev/acpica files.
|
Revision tags: release/4.7.0_cvs, release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
b4a05238 |
| 19-May-2002 |
Peter Wemm <peter@FreeBSD.org> |
Brutally deal with __func__ being 'const char *' on gcc-3.1.
|
#
2266fe77 |
| 30-Apr-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Don't export timecounter structures under debug. with sysctl, they contain no truly interesting data anymore.
|
#
7e2d76ff |
| 26-Apr-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove the tc_update() function. Any frequency change to the timecounter will be used starting at the next second, which is good enough for sysctl purposes. If better adjustment is needed the NTP P
Remove the tc_update() function. Any frequency change to the timecounter will be used starting at the next second, which is good enough for sysctl purposes. If better adjustment is needed the NTP PLL should be used.
show more ...
|
#
d786139c |
| 17-Apr-2002 |
Maxime Henrion <mux@FreeBSD.org> |
Rework the kernel environment subsystem. We now convert the static environment needed at boot time to a dynamic subsystem when VM is up. The dynamic kernel environment is protected by an sx lock.
Rework the kernel environment subsystem. We now convert the static environment needed at boot time to a dynamic subsystem when VM is up. The dynamic kernel environment is protected by an sx lock.
This adds some new functions to manipulate the kernel environment : freeenv(), setenv(), unsetenv() and testenv(). freeenv() has to be called after every getenv() when you have finished using the string. testenv() only tests if an environment variable is present, and doesn't require a freeenv() call. setenv() and unsetenv() are self explanatory.
The kenv(2) syscall exports these new functionalities to userland, mainly for kenv(1).
Reviewed by: peter
show more ...
|
#
116caf7c |
| 24-Mar-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Hide the ACPI counter probing printf behind bootverbose.
The conclusion is that this method really can tell the perfect from the less than perfect ACPI counters.
It is in fact probably a bit more d
Hide the ACPI counter probing printf behind bootverbose.
The conclusion is that this method really can tell the perfect from the less than perfect ACPI counters.
It is in fact probably a bit more discriminative than that, but we will rather condemn some otherwise perfect counters to the slightly slower "-safe" version, than certify a counter as perfect which will let us down later.
Many thanks to all the people who sent email reports!
show more ...
|
#
cb877d00 |
| 25-Feb-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add a new test_counter() function which tries to determine the width of the inter-value histogram for 2000 samples. If the width is 3 or less for 10 consequtive samples, we trust the counter to be g
Add a new test_counter() function which tries to determine the width of the inter-value histogram for 2000 samples. If the width is 3 or less for 10 consequtive samples, we trust the counter to be good, otherwise we use the *_safe() method.
This method may be too strict, but the worst which can happen is that we take the performance hit of the *_safe() method when we should not.
Make the *_safe() method more discriminating by mandating that the three samples do not span more than 15 ticks on the counter.
Disable the PCI-ident based probing as a means to recognize good counters.
Inspiration from: dillon and msmith
show more ...
|
#
d32e27a9 |
| 24-Feb-2002 |
Matthew Dillon <dillon@FreeBSD.org> |
Tests by numerous people have shown that many chipsets do not properly latch the acpi timer, resulting in weird deltas. The problem is severe enough to adversely effect the timecounter code.
Defaul
Tests by numerous people have shown that many chipsets do not properly latch the acpi timer, resulting in weird deltas. The problem is severe enough to adversely effect the timecounter code.
Default to the 'safe' version of the get-timecount function. The probe will override it if a known-good chipset is found. This is temporary until a more complete solution is found.
Reviewed by: phk
show more ...
|
#
72e5754c |
| 23-Feb-2002 |
Mike Smith <msmith@FreeBSD.org> |
Match namespace cleanup changes in ACPI CA 20020217 update.
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
3273b005 |
| 08-Jan-2002 |
Mike Smith <msmith@FreeBSD.org> |
Staticise devclasses and some unnecessarily global variables.
|
#
b2c98acc |
| 06-Aug-2001 |
Mike Smith <msmith@FreeBSD.org> |
The Intel 440MX ACPI timer seems to work properly, so add it to the list here. Restructure slightly so that adding more devices is easier.
Submitted by: Jose Gabriel J Marcelino <gabriel@maquina.co
The Intel 440MX ACPI timer seems to work properly, so add it to the list here. Restructure slightly so that adding more devices is easier.
Submitted by: Jose Gabriel J Marcelino <gabriel@maquina.com>
show more ...
|
#
feade919 |
| 03-Aug-2001 |
Mike Smith <msmith@FreeBSD.org> |
Reverse the logic here again with regards to "trusted" ACPI timer implementations. More of them seem to be broken, so only "trust" timers we know work.
|
#
d8a9fe36 |
| 30-Jul-2001 |
Mike Smith <msmith@FreeBSD.org> |
Minor updates (no functional changes)
- Remove the beer-ware license (reqested by phk) - Reorganise so that the PIIX4 workaround code is kept together, and switch the workaround function via th
Minor updates (no functional changes)
- Remove the beer-ware license (reqested by phk) - Reorganise so that the PIIX4 workaround code is kept together, and switch the workaround function via the timecounter struct, saving a compare in the read-timecounter codepath. Also indicate that the workaround is active by changing the timecounter hardware string.
show more ...
|
#
7b60d04d |
| 27-Jul-2001 |
Mike Smith <msmith@FreeBSD.org> |
The ACPI timer register corruption problem is resolved in the PIIX4 starting with the PIIX4M. Restrict enabling the workaround to those chips known to be buggy.
|
#
787fa5b8 |
| 21-Jul-2001 |
Mike Smith <msmith@FreeBSD.org> |
Implement a "proper" timecounter hung off the ACPI timer device.
This code is based on the mp_clock code by phk. It attempts to detect the PIIX4 (see comments for details) and use a workaround for
Implement a "proper" timecounter hung off the ACPI timer device.
This code is based on the mp_clock code by phk. It attempts to detect the PIIX4 (see comments for details) and use a workaround for its problems.
This code is experimental, and could use some testing and review by a timekeeping enthusiast.
show more ...
|
#
2a4ac806 |
| 29-May-2001 |
Mike Smith <msmith@FreeBSD.org> |
- Updates for new constant naming in the ACPI CA 20010518 update. - Use __func__ instead of __FUNCTION. - Support power-off to S3 or S5 (takawata) - Enable ACPI debugging earlier (with a sysinit)
- Updates for new constant naming in the ACPI CA 20010518 update. - Use __func__ instead of __FUNCTION. - Support power-off to S3 or S5 (takawata) - Enable ACPI debugging earlier (with a sysinit) - Fix a deadlock in the EC code (takawata) - Improve arithmetic and reduce the risk of spurious wakeup in AcpiOsSleep. - Add AcpiOsGetThreadId. - Simplify mutex code (still disabled).
show more ...
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
91467fc6 |
| 31-Jan-2001 |
Mike Smith <msmith@FreeBSD.org> |
ACPI_NUMBER becomes ACPI_INTEGER. acpi_EvaluateNumber becomes acpi_EvaluateInteger.
Use acpi_EvaluateInteger instead of doing things the hard way where possible.
AcpiSetSystemSleepState (unofficia
ACPI_NUMBER becomes ACPI_INTEGER. acpi_EvaluateNumber becomes acpi_EvaluateInteger.
Use acpi_EvaluateInteger instead of doing things the hard way where possible.
AcpiSetSystemSleepState (unofficial) becomes AcpiEnterSleepState.
Use the AcpiGbl_FADT pointer rather than searching for the FADT.
show more ...
|
#
0ae55423 |
| 08-Dec-2000 |
Mike Smith <msmith@FreeBSD.org> |
- Convert a lot of homebrew debugging output to use the ACPI CA debugging infrastructure. It's not perfect, but it's a lot better than what we've been using so far. The following rules apply
- Convert a lot of homebrew debugging output to use the ACPI CA debugging infrastructure. It's not perfect, but it's a lot better than what we've been using so far. The following rules apply to this: o BSD component names should be capitalised o Layer names should be taken from the non-CA set for now. We may elect to add some new BSD-specific layers later.
- Make it possible to turn off selective debugging flags or layers by listing them in debug.acpi.layer or debug.acpi.level prefixed with !.
- Fully implement support for avoiding nodes in the ACPI namespace. Nodes may be listed in the debug.acpi.avoid environment variable; these nodes and all their children will be ignored (although still scanned over) by ACPI functions which scan the namespace. Multiple nodes can be specified, separated by whitespace.
- Implement support for selectively disabling ACPI subsystem components via the debug.acpi.disable environment variable. The following components can be disabled: o bus creation/scanning of the ACPI 'bus' o children attachment of children to the ACPI 'bus' o button the acpi_button control-method button driver o ec the acpi_ec embedded-controller driver o isa acpi replacement of PnP BIOS for ISA device discovery o lid the control-method lid switch driver o pci pci root-bus discovery o processor CPU power/speed management o thermal system temperature detection and control o timer ACPI timecounter Multiple components may be disabled by specifying their name(s) separated by whitespace.
- Add support for ioctl registration. ACPI subsystem components may register ioctl handlers with the /dev/acpi generic ioctl handler, allowing us to avoid the need for a multitude of /dev/acpi* control devices, etc.
show more ...
|
#
042283a6 |
| 01-Dec-2000 |
Mike Smith <msmith@FreeBSD.org> |
Update to work with the new ACPI CA snapshot.
- Use ACPI_PHYSICAL_ADDRESS - RSDT -> XSDT - FACP -> FADT - No APIC table support - Don't install a global EC handler; this has bad side-effects
Update to work with the new ACPI CA snapshot.
- Use ACPI_PHYSICAL_ADDRESS - RSDT -> XSDT - FACP -> FADT - No APIC table support - Don't install a global EC handler; this has bad side-effects (it invokes _REG in *all* EC spaces in the namespace!) - Check for PCI bus instances already existing before adding them
show more ...
|
Revision tags: release/4.2.0 |
|
#
15e32d5d |
| 28-Oct-2000 |
Mike Smith <msmith@FreeBSD.org> |
Initial FreeBSD OSPM (operating system power management) modules for ACPICA. Most of these are still works in progress. Support exists for:
- Fixed feature and control method power, lid and sleep
Initial FreeBSD OSPM (operating system power management) modules for ACPICA. Most of these are still works in progress. Support exists for:
- Fixed feature and control method power, lid and sleep buttons. - Detection of ISA PnP devices using ACPI namespace. - Detection of PCI root busses using ACPI namespace. - CPU throttling and sleep states (incomplete) - Thermal monitoring and cooling control (incomplete) - Interface to platform embedded controllers (mostly complete) - ACPI timer (incomplete) - Simple userland control of sleep states. - Shutdown and poweroff.
show more ...
|
#
7e857dd1 |
| 12-Jun-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- Merge from HEAD
|