This NetBSD module disables a laptop discrete card (e.g. NVIDIA Optimus graphic cards) via ACPI call. This module was inspired by this thread and this script.
- Make a directory "src/sys/modules/nvidia". Create a Makefile there with:
.include "../Makefile.inc"
.PATH: ${S}/dev/acpi
KMOD= nvidia
SRCS= nvidia.c
WARNS= 4
.include <bsd.kmodule.mk>
- Edit file "src/sys/dev/acpi/files.acpi" and put the following there:
device nvidia
file dev/acpi/nvidia.c acpi
- Drop nvidia.c to "src/sys/dev/acpi".
- Build within the module directory and load the created .kmod.