| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
it makes CPU freq transition smooth.
|
|
|
|
|
|
|
|
|
| |
cooling thread which refers psv, tc1, tc2 and tsp. The previous
code made the period where sc->tz_zone.tsp was zero, and it caused
panic at msleep().
Reported by: keramida
Tested by: keramida
|
|
|
|
|
|
|
|
| |
effect. since CPU speed is restored by degrees, we cannot use
the facility of saving cpu speed by CPUFREQ_set() effectively.
so, we need to save the value when passive cooling is in effect.
Repoeted by: Kevin Oberman <oberman__at__es.net>
|
|
|
|
|
|
| |
just skip summing it if it's unknown.
MFC after: 1 day
|
|
|
|
|
|
|
|
| |
Previously, we used all info (including -1 or "not present") which would
keep the system from reaching 100% when charging.
Reported by: Eric Anderson
MFC after: 2 days
|
|
|
|
| |
Reported by: Maxim Maximov <mcsi__at__mcsi.pp.ru>
|
|
|
|
| |
MFC after: 1 day
|
|
|
|
|
|
|
|
| |
later sum capacities for all batteries, even those that weren't actually
present. We only need to do this for _BST but do it for all of them.
Reported by: Eric Anderson
MFC after: 1 day
|
|
|
|
|
|
| |
unable to route an IRQ when we do route an IRQ ok but bootverbose is off.
Reported by: Ben Kaduk minimarmot at gmail dot com
|
|
|
|
|
|
|
|
| |
the overall discharge rate is 0, mark the battery remaining time as
"unknown", not 0.
Reported by: Eric Kjeldergaard
MFC after: 4 days
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(i.e., smart battery) and fix various bugs found during the cleanup.
API changes:
* kernel access:
Access to individual batteries is now via devclass_find("battery").
Introduce new methods ACPI_BATT_GET_STATUS (for _BST-formatted data) and
ACPI_BATT_GET_INFO (for _BIF-formatted data). The helper function
acpi_battery_get_battinfo() now takes a device_t instead of a unit #
argument. If dev is NULL, this signifies all batteries.
* ioctl access:
The ACPIIO_BATT_GET_TYPE and ACPIIO_BATT_GET_BATTDESC ioctls have been
removed. Since there is now no need for a mapping between "virtual" unit
and physical unit, usermode programs can just specify the unit directly and
skip the old translation steps. In fact, acpiconf(8) was actually already
doing this and virtual unit was the same as physical unit in all cases
since there was previously only one battery type (acpi_cmbat). Additionally,
we now map the ACPIIO_BATT_GET_BIF and ACPIIO_BATT_GET_BST ioctls for all
batteries, if they provide the associated methods.
* apm compatibility device/ioctls: no change
* sysctl: no change
Since most third-party applications use the apm(4) compat interface, there
should be very few affected applications (if any).
Reviewed by: bruno
MFC after: 5 days
|
|
|
|
| |
MFC after: 2 days
|
|
|
|
|
|
| |
it is available.
Reviewed by: njl
|
|
|
|
|
|
| |
Approved by: re (scottl)
Approved by: nate
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the driver has unholy private knowledge of its great-*cgrandchildren.
The ACPI allocation routine lacked such knowledge when it tried to do
a default allocation for all descendants, rather than just its
immeidate children, so would access grandchild's ivar in an unsafe
way. This could lead to a panic when devices were present which had
no addresses setup by the BIOS, but which were later allocated in a
lazy manner via pci_alloc_map. As such, only do the default
allocation adjustments for immediate children. The manner that
acpi_sysres_find accesses the resource list, used later in
acpi_alloc_resource, is safe and proper so no additional test is
needed there.
This fixes a panic when probing an disabled ata controller on some
newer intel blades.
Reported by: dwhite
|
|
|
|
|
|
| |
and amd64. The optimization is a trivial on recent machines.
Reviewed by: -arch (imp, marcel, dfr)
|
|
|
|
|
|
|
|
|
| |
pointer. If kernel malloc(0) returns a valid pointer, it needs to be
freed. If it returns NULL, it's ok to free this also.
Submitted by: pjd
Reviewed by: imp, dfr
Obtained from: Coverity Prevent
|
| |
|
|
|
|
|
|
|
|
| |
allocated for it. The normal exit case handles this correctly so we
use it as well for errors.
Submitted by: pjd
Obtained from: Coverity Prevent
|
|
|
|
|
|
|
|
| |
of swi. This allows us to use the taskqueue_thread_* functions instead of
rolling our own. It also avoids a double trip through the queue.
Submitted by: njl
Reviewed by: sam
|
|
|
|
|
|
|
|
|
| |
number of task threads to start on boot. Go back to a default of 3
threads to work around lost battery state problems. Users that need
a setting of 1 can set this via the tunable. I am investigating the
underlying issues and this tunable can be removed once they are solved.
MFC after: 2 days
|
|
|
|
|
|
| |
future versions of acpica.
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
| |
we start turning any of them back on again. This works around a bug in
some BIOSen that alias two different link devices for APIC vs ATPIC modes
onto the same physical hardware link.
Submitted by: njl
Tested by: Antoine Brodin antoine dot brodin at laposte dot net
|
|
|
|
|
|
|
|
|
| |
systems that boot with this value at the lowest setting. Change the
default boot config back to "leave frequency as BIOS set it". Also, fix
buglet where acpi_throttle wouldn't be used if p4tcc was present but
disabled by the user.
MFC after: 1 week
|
|
|
|
| |
states, idling, etc. This has been supported since the cpufreq import.
|
|
|
|
|
| |
buffer. Also, reference the Intel document where the _PDC values were
found. This now supports ACPI-assisted SpeedStep on my borrowed T42.
|
|
|
|
| |
it would give false info to other parts of the driver.
|
|
|
|
| |
states as otherwise we will try to free the buffer twice.
|
|
|
|
|
|
|
|
|
|
| |
to see what features they may support before calling identify/probe/attach.
This is necessary because the ACPI 3.0 spec requires driver support be
advertised before running any methods. For now, the flags are as specified
in for the _PDC and _OSC methods but we can support private flags as needed.
Add an implementation of this for acpi_cpu. It checks all its children
(notably cpufreq drivers) and calls the _PDC method to report the results.
|
|
|
|
|
|
| |
verbose mode.
Found by: Coverity Prevent (via sam)
|
|
|
|
|
|
| |
acpi_bus_alloc_gas() to delete the resource it set if alloc fails. Then,
change acpi_perf to delete the resource after releasing it if alloc fails.
This should make probe and attach both fully restartable if either fails.
|
|
|
|
|
|
|
|
| |
may help with various interdependencies between subsystems. More testing
is needed to understand what the underlying issues are here.
Tested by: Juho Vuori
MFC after: 2 days
|
|
|
|
|
|
|
| |
the unused ivars also.
Submitted by: pjd
Obtained from: Coverity Prevent analysis
|
|
|
|
|
|
|
|
| |
count of valid frequencies and use that as the final package count, don't
give up when the first invalid state is found. Also, add 0x9999 and expand
our upper check to >= 0xffff Mhz [2].
Submitted by: Bruno Ducrot, Jung-uk Kim [2]
|
|
|
|
| |
this before setting a new resource.
|
|
|
|
|
| |
to other devices, it needs to be attached first. (Multi-pass newbus
probes would be a better solution.)
|
|
|
|
|
|
|
| |
(like an EC/SMbus controller) to access the EC address space. Access
is synchronized by the EcLock/Unlock routines in EcSpaceHandler().
Tested by: Hans Petter Selasky
|
|
|
|
|
|
| |
/imp/a\
pointy hat
.
|
|
|
|
|
|
|
| |
same value as the previous ioctls so no binary change. Also, make a few
style changes to reduce diffs to my tree.
Loosely based on code from: Hans Petter Selasky
|
|
|
|
|
|
|
| |
- Fix a bug in the same condition where we forgot to drop the ACPI pcib
lock. This fixes hangs after the pcib0 attach on some machines.
Tested by: sos (2)
|
|
|
|
|
|
|
|
|
| |
modulating the STPCLK# pin based on the duty cycle. Since p4tcc uses the
same mechanism (but internal to the CPU), we triggered a hang on some
systems at low frequencies when both were in use. Now, disable
acpi_throttle when p4tcc is also present.
Tested by: Kevin Oberman
|
|
|
|
| |
they don't actually support Px states.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
SMP systems. It appears all drivers except ichss should attach to each
CPU and that settings should be performed on each CPU. Add comments about
this. Also, add a guard for p4tcc's identify method being called more than
once.
|
|
|
|
| |
Suggested by: Jung-uk Kim
|
|
|
|
| |
Noticed by: Coverity tool
|
|
|
|
| |
a bitfield.
|