@balaton
I'm still double-checking to make sure I've not got something mixed up here. I'm on my linux box now (the one with passthrough). With SM501 everything boots OK using the new bboot. With my 5450 passed through on pci.1,addr3 & addr4 (hdmi sound) I can't boot and I think it's because there's an incorrect address.
BBOOT:
/pci@80000000/pci1002,68e1: 0:3.0 1002:68e1 30000 | 68e11002 01ff 0
Fixed ROM BAR
Added assigned-addresses
42001810 0 90000000 0 10000000 | 0000000c ! 90000008
2001818 0 a0000000 0 20000 | 00000004 ! a0000000
1001820 0 fe001300 0 100 | 00000001 ! 00001301
2001830 0 a0020000 0 20000 | 00000000 ! a0020000
/pci@80000000/pci1002,aa68: 0:4.0 1002:aa68 40300 | aa681002 02ff 0
Added assigned-addresses
2002010 0 a0040000 0 4000 | 00000004 ! a0040000
Note the 0x100 byte mapping of 0xfe001300
If i boot the old way and query the properties:
reg 3:0
xp3,0,10,0:10000000
x3,0,18,0:20000
i3,0,20,0:100
m3,0,30,0:20000
assigned-addresses xp3,0,10,90000000:10000000
x3,0,18,81020000:20000
i3,0,20,FE001200:100
m3,0,30,81080000:20000
Note: 0xfe001200 (not 0xfe001300) but I'm scratching my head a bit at the moment how this could be coming out wrong for this one instance and correct for everyone else.
I am using latest master Qemu with the original patch MBOX applied on top.
[edit] Actually that's completely different addresses. Let me make sure I'm not getting something mixed up!
Nope, only difference is in the use of bboot:
New (bboot)
QEMU_CMD="sudo $QEMU_BIN \
-L pc-bios -M pegasos2 -vga none \
-cpu 7457 -m 1024 -kernel bboot -initrd Kickstart.zip \
-rtc base=localtime -serial mon:stdio -display sdl \
-device bochs-display,romfile="" \
-drive media=disk,format=raw,file=hd/os41_pegasos2.img \
-drive media=disk,format=raw,file=hd/os41_data.img \
-audiodev pa,id=snd0,server=unix:/run/user/1000/pulse/native \
-device rtl8139,netdev=net0 -netdev user,id=net0 \
-device vfio-pci,host=02:00.0,bus=pci.1,addr=3,multifunction=on,x-vga=on \
-device vfio-pci,host=02:00.1,bus=pci.1,addr=4"
Old (bios rom)
QEMU_CMD="sudo $QEMU_BIN \
-L pc-bios -M pegasos2 -vga none \
-cpu 7457 -m 1024 -bios pegasos2.rom \
-rtc base=localtime -serial mon:stdio -display sdl \
-device bochs-display,romfile="" \
-drive media=disk,format=raw,file=hd/os41_pegasos2.img \
-drive media=disk,format=raw,file=hd/os41_data.img \
-audiodev pa,id=snd0,server=unix:/run/user/1000/pulse/native \
-device rtl8139,netdev=net0 -netdev user,id=net0 \
-device vfio-pci,host=02:00.0,bus=pci.1,addr=3,multifunction=on,x-vga=on \
-device vfio-pci,host=02:00.1,bus=pci.1,addr=4"
I did also try with 2048 memory in case that changed anything but it didn't.