NetBSD 6.1.2: apm and admd not found

I installed NetBSD 6.1.2 amd64 and can't find the apm utility. Is it not in the base system?

Is it necessary to recompile the default amd64 kernel to use apm?

Or is there a new method for power management and suspend/resume?

Are there even any amd64 systems that use apm? Aren't they all ACPI?

As you've noticed, apm isn't built on amd64. It's only supported and built on some architectures. An excerpt from the apm 6.1.2 Makefile:

.if (${MACHINE_ARCH} == "i386" || \
     ${MACHINE} == "hpcarm" || \
     ${MACHINE} == "hpcmips" || \
     ${MACHINE} == "hpcsh" || \
     ${MACHINE} == "macppc" || \
     ${MACHINE} == "sparc" || \
     ${MACHINE} == "zaurus") 
PROG=	apm
...
.fi

If you compare the i386 GENERIC kernel config file and the amd64 GENERIC kernel config file, you'll find that while the i386 kernel's ACPI supports an apm emulation layer, no such thing is present in amd64.

i386:

# ACPI devices
apm*		at acpi?		# ACPI apm emulation
acpiacad*	at acpi?		# ACPI AC Adapter
acpibat*	at acpi?		# ACPI Battery
acpibut*	at acpi?		# ACPI Button

amd64:

# ACPI devices
acpiacad*	at acpi?		# ACPI AC Adapter
acpibat*	at acpi?		# ACPI Battery
acpibut*	at acpi?		# ACPI Button

As for the power management daemon, for ACPI systems, apmd has been deprecated in favor of powerd(8).

Regards,
Alister

---------- Post updated at 02:40 PM ---------- Previous update was at 02:33 PM ----------

Also, have a look at the scripts in /etc/powerd/scripts. sleep_button, for example, will point you at some of the relevant sysctl knobs used for power management (and demonstrates a cascade from modern, native hardware to virtualization to legacy apm).

Regards,
Alister

1 Like

Thank you for your elaborate answer!

I noticed than that powerd allready had been running. I could successfully config some properties with sysctl.

As expected with a nvidia gfx resuming the display did not work, but that is o.k.

Kind regards