Hi Ben,
On 11/03/2014 04:04 PM, Nobody III wrote:
The ATAPI driver is still unable to detect my hard drive (or my CD drive for that matter), even though I have switched to a 32-bit Genode system. Any help?
Unfortunately, the ATAPI driver is a really old peace of code. We haven't used in a long time and there doesn't even exist a proper run script to test it. I've tried the ones I could find, some seem to work a little, while others do not work at all. Also there are issues with I/O APIC using kernels, where one might need the ACPI driver to locate the corresponding GSI's that replace the legacy IRQ numbers as well as find out polarity and trigger modes (especially for Fiasco/Fiasco.OC). We have regarded legacy IDE support as obsolete for a while. I can try, to at least, build a working run script for some kernel working in Qemu for a start, but I can't promise, since my time is limited. It seems like Nova is a good candidate for the time being. So my suggestion would be, build a run script and find out why the driver does not get an interrupt (which usually is the cause of all the trouble). The corresponding driver output should be:
Enabling interrupts: [init -> atapi_dev Device initialized! Enabling interrupts ...
When receiving the first interrupt: [init -> atapi_drv] First block: 0 last block <last block>, block size 512
It might be the wrong IRQ number (double check with Linux) or the wrong trigger/polarity information. If you don't even get to the first output above, something is really messed up. In that case I would advice you that you send us the complete output of the test run, your exacts hardware specifications, and if possible a working run script.
Regards,
Sebastian