If you're writing for VM and don't need stuff like GPUs, you can.

For actual real hardware, not really

GPUs, wifi, power/thermal management, firmware. Especially in portable computing there is still a huge amount of hardware support surface area to contend with.