I figured it out. Turns out the USB 3.0 bus was waking it up. All I had to do was disable XHCI in /proc/acpi/wakeup and it fixed the problem. I’ve blogged about how to make the change permanent.