| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
before.
|
|
|
|
|
|
| |
able to fit "Hyper_V_Gen_Counter_V1".
ok mlarkin@ deraadt@
|
|
|
|
|
|
|
|
|
|
| |
uses the mapping between AML nodes and PCI devices that we establish.
Because _INIT methods may end up calling aml_rdpciaddr(), make sure we
create that mapping early. Also handle devices that aren't actually present.
These devices are now included in the mapping and reads will return an
all-ones patterm whereas writes are a no-op..
ok mlarkin@
|
|
|
|
|
|
|
| |
This is needed by an upcoming acpiec commit that handles machines breaking
the current ACPI specifications.
Change suggested by and ok kettenis@, guenther@
|
|
|
|
|
|
|
|
|
|
|
|
| |
when acpicpu tries to attach, leading to a NULL dereference. The ACPI
processor object on the Dells where this was reported is bogus and useless
anyway so apply the same test when deciding whether to attach to processor
objects as acpicpu would when matching them to cpus.
Problem reported by Eivind Eide (xenofil (at) gmail.com) and
Johan Huldtgren (johan+openbsd-bugs (at) huldtgren.com).
Testing by Eivind Eide.
ok kettenis@ mlarkin@
|
|
|
|
|
|
|
| |
This fixes the problem that long-running machines which were not
shut down properly would reboot with a badly offset system time.
hints and ok kettenis@
|
|
|
|
|
|
| |
Fixes at least one machine that woke up from sleep / poweroff immediately.
ok kettenis@, tested by kettenis and martijn@
|
|
|
|
|
|
| |
acpicpu(4) drivers to the right cpu(4).
ok mlarkin@, guenther@
|
|
|
|
|
|
|
|
| |
attempt to attach acpitimer(4) if the timer isn't present.
Pointed out by jcs@
ok jcs@
|
|
|
|
|
|
|
|
|
|
|
| |
we attach the device itself. The _DEP methode, introduced in ACPI 5.0,
is a hint that the device in question depends on OpRegion support from
the devices listed by _DEP, so we have to order them the proper way.
To prevent us from attaching those devices again when we encounter them
later walking down the device tree, keep track of our attempts to
attach a device driver to them using aflag in the aml_node structure.
ok guenther@
|
|
|
|
|
|
| |
report it in the dmesg.
OK deraadt@, mlarkin@.
|
|
|
|
|
|
| |
driver.
ok mpi@
|
|
|
|
|
|
|
| |
us from reporting devices as "not configured" that aren't actually present,
and allows us to remove duplicated code from several drivers.
ok deraadt@, ok jsg@
|
|
|
|
|
|
| |
a platform-specific method of controlling the backlight.
ok millert@, mlarkin@, jung@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gettinga bit of the burden. And it really isn't how our autoconf
framework is supposed to work for busses that can be enumerated. All
the drivers already check for a matching _HID in their attach
function. So we can just drop the checks in acpi_foundhid() and let
the drivers sort themselves out.
Print a "not configured" line for devices for which we don't attach adriver.
This may be a bit much as there are devices for which we will not have a
driver. This will be removed if it causes too much dmesg spam.
ok deraadt@, mlarkin@
|
|
|
|
| |
kernel can find and attach dwiic(4) and sdhc(4).
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
SPL_TYPx, SLP_EN and WAK_STS using the new SLEEP_STATUS_REG and
SLEEP_CONTROL_REG registers. Makes the transition into S5 (powerdown) work
on the ASUS X205TA.
ok deraadt@, mlarkin@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on the Samsung ATIV Book 9 laptop. This initial version only
supports ACPI config/attachment.
Add ihidev, a HID-over-i2c driver largely based on uhidev. dwiic
handles attaching ihidev devices found in ACPI.
Add ims, a HID-over-i2c mouse/trackpad driver to get basic cursor
and button functionality from HID-compliant i2c trackpads.
ok kettenis deraadt
|
| |
|
|
|
|
|
|
|
| |
by emulating the PM_CNT register such that SCI_EN is always enabled. It also
skip attaching acpitimer(4) since the relevant registers are no longer there.
ok deraadt@, mlarkin@
|
|
|
|
|
|
|
|
| |
been enabled and don't bother enabling it again if it is. This should fix
systems that don't implement legacy mode and therefore set ACPI_ENABLE and
ACPI_DISABLE to zero.
ok mlarkin@, yasuoka@
|
|
|
|
|
| |
people with old/broken batteries didn't like this change, and the
underlying heuristics are wrong.
|
|
|
|
|
|
|
|
|
| |
stack, is currently set to 25%. With 25% battery left, a typical
modern laptop will have at least one hour runtime left. It is an
arbitrary value, and other APM power layers in the kernel set CRITICAL
to something like 5% or 10%, so set it to 10% for now.
OK mlarkin@
|
|
|
|
|
|
|
|
| |
spit out a ddb trace to console. This should allow us to find suspend
or resume routines which break the rules. It depends on the console
output function being non-sleeping.... but that's another codepath which
should try to be safe when cold is set.
ok kettenis
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This version also makes sure writes are properly aligned, preventing
the panics seen with the previous incarnation of this change.
Fixes battery status passthrough in vmware, brightness keys on my x220
and who knows what else.
ok mlarkin@, deraadt@
|
|
|
|
|
| |
repeat this action at resume time.
ok mlarkin guenther
|
|
|
|
|
| |
on some laptops. Mailing lists threads mention x220 and Asus machines.
Reverting for now.
|
|
|
|
|
|
|
|
| |
Fixes battery status passthrough in vmware and who knows what else.
Tested by many.
ok mlarkin@, deraadt@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
buttons are wired to the trackpad and need to be re-routed to the
trackstick. Without this change the buttons on 2015 thinkpads
get picked up as extended buttons that show up as scroll up/down.
Remove the X1 Carbon 2015 (LEN0048) and X250 (LEN0046) from the
top button area/soft buttons quirks list. Also avoid using the
quirk list entirely if the capability bit is set.
Based on work from jcs@ with feedback from mpi@
ok mpi@ jcs@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to all functions on a device. This makes no sense in the context of accessing
PCI config space. Nevertheless stsp@ has a machine with AML that tries to
do config space reads from a device where _ADR encodes function number FFFF.
This is almost certainly buggy AML, but since Linux (and presumably Windows)
boot just fine on this machine we need to work around this. Linux effectively
treats function FFFF as function 7, which isn't present on this machine.
Instead we simulate a read from a non-existent device by returning a bit
pattern of all ones. Writes to function FFFF will still panic.
ok mlarkin@
|
|
|
|
|
|
|
| |
handling into RAMDISK. This is now possible because the install media
has ample room. The goal is to reduce special cases where we may be
skipping (unknown) important operations...
ok mlarkin kettenis
|
|
|
|
|
|
|
| |
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
|
|
|
| |
boot.
ok mlarkin
|
|
|
|
|
|
|
|
| |
may not have been mapped previously (in the failure to hibernate case).
Also ensure that the lowmem ptp is mapped in all cases (not just MP).
ok kettenis
|
| |
|
|
|
|
|
|
|
|
|
|
| |
physical buttons. This will be used if the acpi pnpid for the mouse
matches a list provided by Synaptics found in Linux.
Combined with the xenocara changes this will remove the need for an xorg
config file for the x240/t440/t540 generation of thinkpads.
ok matthieu@ shadchin@ kettenis@
|
|
|
|
|
|
|
|
| |
there are machines out there with broken BIOSen with such checksum errors in
thier RSDT tables. Windows runs fine on these machines, so it probably does
not check. Linux ignores checksum errors as well (and prints a warning).
ok deraadt@, krw@
|
|
|
|
| |
ok reyk djm
|
|
|
|
| |
ok tedu@ deraadt@
|
|
|
|
|
|
|
| |
is still closed when resuming. This allows docked laptop to be resumed
without opening them.
ok mlarkin@
|
|
|
|
|
|
|
|
| |
where machines without any _LIDs were going back to sleep after hibernate
due to the recent suspend-if-lid-closed-on-resume diff. Noticed on qemu,
which doesn't have any _LIDs.
discussed with deraadt
|
|
|
|
| |
ok miod@
|
|
|
|
|
|
|
| |
sleep. This prevents accidental lid flex or slight opening in a backpack
from waking the machine up and leaving it resumed (powered on).
ok deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
deep down in the suspend path, where it is really hard to recover from
allocation failure. So allocate the piglet early on in the suspend path.
Also change the piglet and piglet allocation functions to use km_alloc(9)
instead of doing pmemrange magic. This removes a bunch of code which, in the
case of the piglet allocation, is broken since it results in a NULL pointer
dereference. Also switch the piglet allocation to not wait. If we can't
allocate 16MB of phys contig memory on a halfway modern machine we're almost
certainly under a lot of memory pressure and we're better off not trying to
hibernate anyway.
ok mlarkin@
|
|
|
|
|
|
|
|
| |
safe to restore perflevel when resuming. Should fix the issues people
see with the processor running at full speed heating up the machine while
the apm command reports that the CPUs are running at a low speed.
ok dcoppa@, deraadt@
|