The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=ab3eaa6ea29d846d3beb7dd90dbe0c7e0cea26c4
commit ab3eaa6ea29d846d3beb7dd90dbe0c7e0cea26c4 Author: Enji Cooper <[email protected]> AuthorDate: 2026-01-04 08:27:57 +0000 Commit: Enji Cooper <[email protected]> CommitDate: 2026-02-22 04:29:53 +0000 Add ASMC_DEBUG make option This allows folks to enable debug statements in asmc(4) using kernel configs via the `options ASMC_DEBUG` directive. While here, remove a duplicate `device vt_efifb` directive in `NOTES` as it's already handled in the `GENERIC` config MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54511 (cherry picked from commit f224591746bdaf14ad5f63de4738a3146cc2f55f) --- sys/amd64/conf/NOTES | 7 ++++--- sys/conf/options.amd64 | 3 +++ sys/dev/asmc/asmc.c | 21 +++++++++++---------- sys/modules/asmc/Makefile | 2 +- 4 files changed, 19 insertions(+), 14 deletions(-) diff --git a/sys/amd64/conf/NOTES b/sys/amd64/conf/NOTES index 08d096cd800e..55f631675bbe 100644 --- a/sys/amd64/conf/NOTES +++ b/sys/amd64/conf/NOTES @@ -43,9 +43,6 @@ cpu HAMMER # aka K8, aka Opteron & Athlon64 # Optional devices: # -# vt(4) drivers. -device vt_efifb # EFI framebuffer - # 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create # the /dev/3dfx0 device to work with glide implementations. This should get # linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as @@ -110,6 +107,10 @@ device ioat # Intel I/OAT DMA engine # EFI Runtime Services support options EFIRT +# Apple System Management Controller (SMC) +device asmc +options ASMC_DEBUG # Enable asmc(4)-specific debug logic. + # # Intel QuickAssist driver with OpenCrypto support # diff --git a/sys/conf/options.amd64 b/sys/conf/options.amd64 index 8402c89640f7..c7c1f4da2a4a 100644 --- a/sys/conf/options.amd64 +++ b/sys/conf/options.amd64 @@ -65,3 +65,6 @@ NO_LEGACY_PCIB opt_cpu.h # Compatibility with Linux MP table bugs. MPTABLE_LINUX_BUG_COMPAT + +# Enable asmc(4)-specific debug logic. +ASMC_DEBUG opt_asmc.h diff --git a/sys/dev/asmc/asmc.c b/sys/dev/asmc/asmc.c index c0fb342709a1..114f4130d8ce 100644 --- a/sys/dev/asmc/asmc.c +++ b/sys/dev/asmc/asmc.c @@ -34,7 +34,8 @@ * Inspired by the Linux applesmc driver. */ -#include <sys/cdefs.h> +#include "opt_asmc.h" + #include <sys/param.h> #include <sys/bus.h> #include <sys/conf.h> @@ -84,7 +85,7 @@ static void asmc_sms_calibrate(device_t dev); static int asmc_sms_intrfast(void *arg); static void asmc_sms_printintr(device_t dev, uint8_t); static void asmc_sms_task(void *arg, int pending); -#ifdef DEBUG +#ifdef ASMC_DEBUG void asmc_dumpall(device_t); static int asmc_key_dump(device_t, int); #endif @@ -505,7 +506,7 @@ static driver_t asmc_driver = { */ #define _COMPONENT ACPI_OEM ACPI_MODULE_NAME("ASMC") -#ifdef DEBUG +#ifdef ASMC_DEBUG #define ASMC_DPRINTF(str) device_printf(dev, str) #else #define ASMC_DPRINTF(str) @@ -818,7 +819,7 @@ asmc_resume(device_t dev) return (0); } -#ifdef DEBUG +#ifdef ASMC_DEBUG void asmc_dumpall(device_t dev) { struct asmc_softc *sc = device_get_softc(dev); @@ -929,7 +930,7 @@ nosms: sc->sc_nkeys = 0; } -#ifdef DEBUG +#ifdef ASMC_DEBUG asmc_dumpall(dev); #endif @@ -964,19 +965,19 @@ asmc_wait_ack(device_t dev, uint8_t val, int amount) static int asmc_wait(device_t dev, uint8_t val) { -#ifdef DEBUG +#ifdef ASMC_DEBUG struct asmc_softc *sc; #endif if (asmc_wait_ack(dev, val, 1000) == 0) return (0); -#ifdef DEBUG +#ifdef ASMC_DEBUG sc = device_get_softc(dev); #endif val = val & ASMC_STATUS_MASK; -#ifdef DEBUG +#ifdef ASMC_DEBUG device_printf(dev, "%s failed: 0x%x, 0x%x\n", __func__, val, ASMC_CMDPORT_READ(sc)); #endif @@ -999,7 +1000,7 @@ asmc_command(device_t dev, uint8_t command) { } } -#ifdef DEBUG +#ifdef ASMC_DEBUG device_printf(dev, "%s failed: 0x%x, 0x%x\n", __func__, command, ASMC_CMDPORT_READ(sc)); #endif @@ -1045,7 +1046,7 @@ out: return (error); } -#ifdef DEBUG +#ifdef ASMC_DEBUG static int asmc_key_dump(device_t dev, int number) { diff --git a/sys/modules/asmc/Makefile b/sys/modules/asmc/Makefile index 70d8ed845900..978b9a1c2113 100644 --- a/sys/modules/asmc/Makefile +++ b/sys/modules/asmc/Makefile @@ -2,6 +2,6 @@ .PATH: ${SRCTOP}/sys/dev/asmc KMOD= asmc -SRCS= asmc.c opt_acpi.h acpi_if.h bus_if.h device_if.h +SRCS= asmc.c opt_acpi.h opt_asmc.h acpi_if.h bus_if.h device_if.h .include <bsd.kmod.mk>
