145 Commits
Author SHA1 Message Date
Abdelkader Boudih 44ceda0a53 acpi_apple: rename source files to match the driver name
The driver, module, kernel option and manual page are all named
acpi_apple, but the sources lived in sys/dev/apple_acpi/ with an
apple_ prefix. Every other vendor ACPI driver in the tree uses the
acpi_<vendor> form for both the directory and the file names.

No functional change.

Reviewed by:	adrian
Differential Revision:	https://reviews.freebsd.org/D60792
2026-10-17 20:48:49 +01:00
Abdelkader Boudih d7d237ce73 acpi_apple: Apple platform ACPI driver,
handles wake-on-LAN arming and lid state on the PCH
PMC/GMUX platform instance, and panel backlight
control on the PNLF instance, registering with
backlight(9).

Reviewed by:	ziaee, adrian
Differential Revision:	https://reviews.freebsd.org/D58867
2026-10-15 14:03:22 +01:00
Andrew Turner 237c69a990 acpi_einj: Add acpi_if.h to SRCS
This is included via acpivar.h so needs to be in SRCS to be generated.

Reported by:	bz
Fixes:	bc49842769 ("acpi_einj: Support for ACPI error injection")
Sponsored by:	Arm Ltd
2026-07-08 07:13:43 +01:00
John Baldwin bc49842769 acpi_einj: Support for ACPI error injection
This driver parses the ACPI EINJ table and builds a list of
instructions associated with known actions.  It then exports ioctls to
fetch the set of supported errors and inject system errors by
executing specific sequences of actions.  This can be used to test
error reporting facilities for events such as ECC errors.

Reviewed by:	gallatin
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D58025
2026-07-07 14:15:27 -04:00
Pouria Mousavizadeh Tehrani 105869a2c7 acpi_system76: Add backlight(9) support for keyboard
Reviewed by: wulf
Differential Revision: https://reviews.freebsd.org/D55716
2026-03-09 12:42:01 +03:30
Pouria Mousavizadeh Tehrani cdad55809e acpi_system76: Support for acpi-controlled buttons on System76
Add acpi_system76 for handling acpi-controlled buttons
on System76 Laptops.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D55694
2026-03-07 18:57:08 +03:30
John Baldwin bd8296bd81 Build acpi kernel modules on aarch64
For now, the only kernel module built is acpi_ged.ko.

Sponsored by:	Netflix
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D54315
2025-12-26 10:37:34 -05:00
John Baldwin fe74d52de5 sys/modules/acpi/Makefile: One line per subdirectory
This makes diffs that add or remove modules easier to read.

Reviewed by:	imp
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D54314
2025-12-26 10:37:20 -05:00
Vladimir Kondratyev f134662a1a acpi_asus_wmi(4): Improve keyboard backlight support.
- Fix maximal keyboard backlight level, Although Linux source code
  comment says that backlight level is encoded in 3 bits of data,
  actual code limits maximum level to 3.
- Add backlight(9) support for keyboard
- Turn off/on keyboard backlight on suspend/resume

Sponsored by:	Future Crew LLC
MFC after:	1 month
Reviewed by:	mav
Differential Revision:	https://reviews.freebsd.org/D48983
2025-03-17 18:45:14 +03:00
Vladimir Kondratyev 5e41194bfc acpi_asus_wmi(4): Add EVDEV support
Use input event device to export hotkey events.

Sponsored by:	Future Crew LLC
MFC after:	1 month
Reviewed by:	mav
Differential Revision:	https://reviews.freebsd.org/D48982
2025-03-17 18:45:14 +03:00
Gleb Smirnoff c21f5751ef acpi_ibm: pass brightness events to evdev(4)
unless the dev.acpi_ibm.0.handlerevents sysctl is set to process
them internally.  The default for the latter is to ignore them,
so passing to evdev(4) is enabled by default.

Reviewed by:		wulf, imp
Tested on:		Lenovo Thinpad X11 Carbon 7Th Gen
Differential Revision:	https://reviews.freebsd.org/D48174
2024-12-23 18:10:56 -08:00
Kristof Provost 96f1dfc1be acpi_sbl_wmi: add a driver to trigger SBL firmware updates
Expose a sysctl knob to inform the SBL bootloader that a firmware update is
available and should be applied on the next reboot.

See also:	https://slimbootloader.github.io/security/firmware-update.html#triggering-firmware-update
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D47035
2024-10-15 16:29:11 +02:00
Warner Losh e9ac41698b Remove residual blank line at start of Makefile
This is a residual of the $FreeBSD$ removal.

MFC After: 3 days (though I'll just run the command on the branches)
Sponsored by: Netflix
2024-07-15 16:43:39 -06:00
Warner Losh 031beb4e23 sys: Remove $FreeBSD$: one-line sh pattern
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
2023-08-16 11:54:58 -06:00
Warner Losh ef1851fb43 acpi_ged: Module build no longer needs to define INTRNG
Now that we properly define INTRNG generically on all the platforms that
need it in opt_global.h, we don't need to define it here.

Sponsored by:		Netflix
Reviewed by:		kevans
Differential Revision:	https://reviews.freebsd.org/D37110
2022-10-24 12:13:04 -06:00
Takanori Watanabe 9cf5db6369 acpi_ged: fix build, as module and non INTRNG case.
Reviewed-by: cy

Differential Revision: https://reviews.freebsd.org/D37104
2022-10-24 23:37:28 +09:00
Takanori Watanabe a9880bfe11 acpi_ged: New driver to ACPI generic event device
New driver to ACPI generic event device, defined in ACPI spec.
Some ACPI power button may not work without this.

In qemu arm64 with "virt" machine, with ACPI firmware,
enable devd check devd message by
and invoke following command in qemu monitor
(qemu) system_powerdown
and make sure some power button input event appear.
(setting sysctl hw.acpi.power_button_state=S5 is not work,
because ACPI tree does not have \_S5 object.)

Reviewed by: andrew, hrs
Differential Revision: https://reviews.freebsd.org/D37032
2022-10-24 18:57:36 +09:00
Kyle Evans 58ca99d116 modules: acpi_video: need opt_evdev.h
This fixes the standalone build.
2021-09-29 23:08:25 -05:00
Enji Cooper 193d9e768b sys/modules: normalize .CURDIR-relative paths to SRCTOP
This simplifies make output/logic

Tested with:	`cd sys/modules; make ALL_MODULES=` on amd64
MFC after:	1 month
Sponsored by:	Dell EMC Isilon
2017-03-04 10:10:17 +00:00
Jung-uk Kim f49794cc8f Sort SUBDIR. 2016-04-27 19:38:24 +00:00
Jung-uk Kim b5a90a4f96 Remove obsolete Makefile for acpi.ko. 2014-10-02 20:13:52 +00:00
Marcel Moolenaar e7d939bda2 Remove ia64.
This includes:
o   All directories named *ia64*
o   All files named *ia64*
o   All ia64-specific code guarded by __ia64__
o   All ia64-specific makefile logic
o   Mention of ia64 in comments and documentation

This excludes:
o   Everything under contrib/
o   Everything under crypto/
o   sys/xen/interface
o   sys/sys/elf_common.h

Discussed at: BSDcan
2014-07-07 00:27:09 +00:00
Jung-uk Kim a9d8d09c46 Merge ACPICA 20130517. 2013-05-20 23:52:49 +00:00
Takanori Watanabe df07418447 A driver for Intel Rapid Start Technology ACPI device.
Note that it is just for 'Advanced' configuration for Rapid start technology.
2013-05-08 12:53:21 +00:00
Jung-uk Kim 895f26a936 Merge ACPICA 20130418. 2013-04-19 23:49:34 +00:00
Jung-uk Kim 9c48c75ed6 Merge ACPICA 20130214. 2013-02-15 20:36:28 +00:00
Jung-uk Kim ed17e06e2c Merge ACPICA 20121114. 2012-11-20 21:01:59 +00:00
Jung-uk Kim 1df130f1d4 Merge ACPICA 20120816. 2012-08-16 20:54:52 +00:00
Jung-uk Kim e8241eabbb Merge ACPICA 20120711. 2012-07-11 23:18:35 +00:00
Alexander Motin 461a98a279 Add acpi_asus_wmi(4) -- driver for random extras found on WMI-compatible
Asus laptops. It is alike to acpi_asus(4), but uses WMI interface instead
of separate ACPI device.

On Asus EeePC T101MT netbook it allows to handle hotkeys and on/off WLAN,
Bluetooth, LCD backlight, camera, cardreader and touchpad.

On Asus UX31A ultrabook it allows to handle hotkeys, on/off WLAN, Bluetooth,
Wireless LED, control keyboard backlight brightness, monitor temperature
and fan speed. LCD brightness control doesn't work now for unknown reason,
possibly requiring some video card initialization.

Sponsored by:	iXsystems, Inc.
2012-07-02 08:31:29 +00:00
Jung-uk Kim a159c266a9 Merge ACPICA 20120215. 2012-02-16 22:59:29 +00:00
Jung-uk Kim ec3fc72f94 Merge ACPICA 20120111. 2012-01-11 23:06:37 +00:00
Jung-uk Kim 3f0275a033 Merge ACPICA 20111123. 2011-11-28 23:36:48 +00:00
Jung-uk Kim d052a1cc33 Merge ACPICA 20110413. 2011-04-15 18:34:27 +00:00
Jung-uk Kim 0b94ba42b0 Merge ACPICA 20110211. 2011-02-12 01:03:15 +00:00
Jung-uk Kim 5a77b11bd3 Merge ACPICA 20101209. 2010-12-15 23:48:45 +00:00
Jung-uk Kim 729850d919 Warn users that acpi.ko is deprecated and exit immediately unless the user
set FORCE_BUILD.  This is to avoid foot-shooting while making MFC to stable
branches easier.

Discussed with:	jhb
2010-11-12 21:11:49 +00:00
Jung-uk Kim a3c464fb3c MFamd64: (based on) r209957
Move logic of building ACPI headers for acpi_wakeup.c into better places,
remove intermediate makefile and shell script, and reduce diff between i386
and amd64.
2010-11-12 20:55:14 +00:00
Jung-uk Kim 7c2bf852d7 Refactor acpi_machdep.c for amd64 and i386, move APM emulation into a new
file acpi_apm.c, and place it on sys/x86/acpica.
2010-11-10 01:29:56 +00:00
John Baldwin 13e25cb7a5 Move the MADT parser for amd64 and i386 to sys/x86/acpica now that it is
identical on both platforms.
2010-11-08 20:57:02 +00:00
John Baldwin bfda18fcb6 Disconnect acpi.ko from the build on i386. ACPI is now only supported when
compiled into the kernel, not as a loadable module.
2010-11-08 20:30:59 +00:00
Jung-uk Kim 37d696a38e Stop hard coding nm(1) and make it overridable. 2010-10-14 23:31:58 +00:00
Jung-uk Kim 42fecd1294 Merge ACPICA 20100915. 2010-09-16 20:08:00 +00:00
Warner Losh c09808d0d6 MFtbemd:
Use MACHINE_CPUARCH in preference to MACHINE_ARCH.  The former is the
source code location of the machine, the latter the binary output.  In
general, we want to use MACHINE_CPUARCH instead of MACHINE_ARCH unless
we're tesitng for a specific target.  The isn't even moot for
i386/amd64 where there's momemntum towards a MACHINE_CPUARCH == x86,
although a specific cleanup for that likely would be needed...
2010-08-23 06:13:29 +00:00
Jung-uk Kim 709fac0616 Merge ACPICA 20100806. 2010-08-06 23:11:19 +00:00
Rui Paulo daef39e7ae Remove the acpi_aiboost driver. It has been replaced by aibs(4). 2010-07-25 17:55:57 +00:00
Jung-uk Kim 2f3dabf426 Define SMP unconditionally for amd64 and remove opt_global.h from SRCS.
Note it is done just for correctness sake because we do not build, ship, or
support acpi.ko on amd64.

Prodded by:	bde
2010-07-13 16:57:52 +00:00
Jung-uk Kim 588697d478 Move i386-inherited logic of building ACPI headers for acpi_wakeup.c into
better places and remove intermediate makefile and shell scripts.  This
makes parallel kernel build little bit safer for amd64.
2010-07-12 21:08:35 +00:00
Rui Paulo bbe4a97d41 Import the acpi_aibs(4) driver written by Constantine A. Murenin.
It has more features than acpi_aiboost(4) and it will eventually replace
acpi_aiboost(4).

Submitted by:	Constantine A. Murenin <cnst at FreeBSD.org>
Reviewed by:	freebsd-acpi, imp
MFC after:	1 month
2010-06-25 15:32:46 +00:00
Jung-uk Kim 3f5e024c14 Merge ACPICA 20100428. 2010-04-28 22:25:27 +00:00