For the archives:
Tried again with "sysctl machdep.apmhalt=1", same game :-/
# halt -p
/etc/rc.shutdown in progress...
/etc/rc.shutdown complete.
syncing disks... done
Attempting to power down...
apm0: APM set power state: unrecognized device ID (9)
uvm_fault(0xd6930298, 0x8000, 0, 1) -> e
kernel: page fault trap, code=0
Stopped at trap+0x15f: movzbl 0(%edx),%eax
ddb> ps
PID PPID PGRP UID S FLAGS WAIT COMMAND
*31535 1 31535 0 7 0x4006 halt
12 0 0 0 3 0x100204 crypto_wa crypto
11 0 0 0 3 0x100204 aiodoned aiodoned
10 0 0 0 3 0x100204 syncer update
9 0 0 0 3 0x100204 cleaner cleaner
8 0 0 0 3 0x100204 reaper reaper
7 0 0 0 3 0x100204 pgdaemon pagedaemon
6 0 0 0 3 0x100204 pftm pfpurge
5 0 0 0 3 0x100204 usbtsk usbtask
4 0 0 0 3 0x100204 usbevt usb0
3 0 0 0 3 0x100204 apmev apm0
2 0 0 0 3 0x100204 kmalloc kmthread
1 0 1 0 3 0x4084 wait init
0 -1 0 0 3 0x80204 scheduler swapper
ddb> trace
trap() at trap+0x15f
--- trap (number 4) ---
0x893d:
ddb>