So either you can give me a lot of confidence that the OHCI driver does not do any DMA and thus works just fine without bus mastering enabled and only
No, I think it needs to do DMA and bus mastering enabled.
Correct, you need device DMA for any data transfer. It is a royal pain.
or the driver is completely useless on non-QEMU platforms and shouldn't be around because it would probably just time out.
It shouldn't be useless and should work as it is identical to what's in CoreBoot (plus big endian fixes) where it is supposedly used on real hardware.
OpenBIOS does not currently set up bus mastering correctly for any bridges and/or host controllers. Trying to use the device will (at best) lead to data corruption or hangs or other undesirable hard to debug insanity.
It makes sense to mark all device drivers requiring DMA as such; most device drivers do not use DMA and are much easier to work with, esp. when still doing bringup on a system. Similar for interrupts (if those cannot be masked on the device).
Segher