Page 1 of 1

PCI native mode ATA in QEMU or bochs

Posted: Wed Mar 22, 2023 10:13 am
by dlandahl
I'm trying to write an example program for driving a native-mode ATA/IDE controller. Since it's for other people to use, I would like it to run specifically in bochs and/or QEMU. But, the ATA devices in those emulators are always in compatibility mode, and the mode cannot be changed (the low four bits of the PROG IF byte in the PCI configuration space are clear). I've tried to configure each of bochs and QEMU to allow running a PCI native mode IDE driver, but I can't figure it out for either of them - is it possible to do this?

Re: PCI native mode ATA in QEMU or bochs

Posted: Mon Apr 03, 2023 6:59 pm
by Octocontrabass
It doesn't seem to be possible.

Bochs does not emulate any PCI IDE controllers with native mode.

QEMU does emulate some PCI IDE controllers with native mode, but it seems like they only work in non-x86 machines. In x86 machines, you're stuck with compatibility mode.