Предлагаю пока не упираться именно в загрузку с

Предлагаю пока не упираться именно в загрузку с hdd, подключенного к моему контроллеру. Невозможность загрузки тут является лишь следствием того, что BIOS и WIN вообще не обращаются к регистрам контроллера (кроме конфигурационного пространства), под которые выделены ресурсы IO в BAR'ах. Под Linux'ом ведь все работает с теми же VID/DID, и никакой контроллер с такими же VID/DID не мешает (у них же адреса на шине разные). Все решают первые 2 байта ClassCode (0101h).

Котроллер SATA в режиме эмуляции IDE.