This is the strange output I'm getting:
Normal output:
Abnormal output:AHCI: found AHCI-capable device with vendor 8086 and device 2922
AHCI: detected base address for AHCI driver: FEBF5000
AHCI: Inserting device at position 0
I'm running qemu with the following command line:AHCI: Device scan: dbg: HbaMem {cap: 80000000C0141F05, ghc: 3F00000000, is: 10000, pi: 0, vs: 0, ccc_ctl: 0, ccc_pts: 0, em_loc: 0, em_ctl: 0, cap2: 0, bohc: 0}
Am I running QEMU wrong, or is my code wrong? The code is at https://github.com/ethindp/kernel/blob/ ... ge/ahci.rs (lines 988-1,044). (Yes, I know, the file is ridiculously long; most of that is because I used bindgen to figure out how to do bitfields in Rust since it doesn't support those natively yet. It definitely could use some cleanup, I admit. Sorry about that.)qemu-system-x86_64 -drive format=raw,file=target\x86_64-kernel-none\debug\bootimage-kernel.bin -serial stdio -soundhw all -drive format=raw,id=disk,file=disk.img,if=none -device ich9-ahci,id=ahci -device ide-drive,drive=disk,bus=ahci.0 -no-reboot -cpu max