> It's a monster chicken-and-egg problem: OSes can't add support for devices that don't exist, and vendors won't bother implementing a raw interface until OSes can use it.
Agreed, and any way out of this situation would require (at least) a transition phase were some devices support either mode, letting the operating system choose.