FWIW, partial success
# sleep 1 ; printf "\x20" | dd bs=1 seek=$((0x4000+4+1)) of=/dev/port count=1 >& /dev/null sytem power off. # sleep 1 ; printf "\x24" | dd bs=1 seek=$((0x4000+4+1)) of=/dev/port count=1 >& /dev/null stops playing video, system hangs # sleep 1 ; printf "\x28" | dd bs=1 seek=$((0x4000+4+1)) of=/dev/port count=1 >& /dev/null system reboot # sleep 1 ; printf "\x2C" | dd bs=1 seek=$((0x4000+4+1)) of=/dev/port count=1 >& /dev/null stops playing video, screen is lit, resumes on usb event # sleep 1 ; printf "\x30" | dd bs=1 seek=$((0x4000+4+1)) of=/dev/port count=1 >& /dev/null stops playing video, screen is lit, resumes on usb event
however, I still haven't gotten to the point where either * "suspend -s 00:01" wakes up on usb event. or * "suspend -S 00:01" does not wake up on eth event.
or some other method for "power on suspend"+USB to work.