@@ -264,6 +264,8 @@ import Virtualization // for getting network interfaces
264264 " vgamem_mb= \( vgaRamSize) "
265265 }
266266 f ( )
267+ } else if system. target. hasBuiltinFramebuffer {
268+ // Use the board's built-in framebuffer (no arguments)
267269 } else {
268270 for display in displays {
269271 if !shouldSkipDisplay( display) {
@@ -951,36 +953,38 @@ import Virtualization // for getting network interfaces
951953 f ( " usb-kbd,bus=usb-bus.0 " )
952954 }
953955 #if WITH_USB
954- let maxDevices = input. maximumUsbShare
955- let buses = ( maxDevices + 2 ) / 3
956- if input. usbBusSupport == . usb3_0 {
957- var controller = " qemu-xhci "
958- if isPcCompatible {
959- controller = " nec-usb-xhci "
960- }
961- for i in 0 ..< buses {
962- f ( " -device " )
963- f ( " \( controller) ,id=usb-controller- \( i) " )
956+ if system. target. hasUsbSharingSupport {
957+ let maxDevices = input. maximumUsbShare
958+ let buses = ( maxDevices + 2 ) / 3
959+ if input. usbBusSupport == . usb3_0 {
960+ var controller = " qemu-xhci "
961+ if isPcCompatible {
962+ controller = " nec-usb-xhci "
963+ }
964+ for i in 0 ..< buses {
965+ f ( " -device " )
966+ f ( " \( controller) ,id=usb-controller- \( i) " )
967+ }
968+ } else {
969+ for i in 0 ..< buses {
970+ f ( " -device " )
971+ f ( " ich9-usb-ehci1,id=usb-controller- \( i) " )
972+ f ( " -device " )
973+ f ( " ich9-usb-uhci1,masterbus=usb-controller- \( i) .0,firstport=0,multifunction=on " )
974+ f ( " -device " )
975+ f ( " ich9-usb-uhci2,masterbus=usb-controller- \( i) .0,firstport=2,multifunction=on " )
976+ f ( " -device " )
977+ f ( " ich9-usb-uhci3,masterbus=usb-controller- \( i) .0,firstport=4,multifunction=on " )
978+ }
964979 }
965- } else {
966- for i in 0 ..< buses {
967- f ( " -device " )
968- f ( " ich9-usb-ehci1,id=usb-controller- \( i) " )
969- f ( " -device " )
970- f ( " ich9-usb-uhci1,masterbus=usb-controller- \( i) .0,firstport=0,multifunction=on " )
971- f ( " -device " )
972- f ( " ich9-usb-uhci2,masterbus=usb-controller- \( i) .0,firstport=2,multifunction=on " )
980+ // set up usb forwarding
981+ for i in 0 ..< maxDevices {
982+ f ( " -chardev " )
983+ f ( " spicevmc,name=usbredir,id=usbredirchardev \( i) " )
973984 f ( " -device " )
974- f ( " ich9- usb-uhci3,masterbus= usb-controller-\( i) .0,firstport=4,multifunction=on " )
985+ f ( " usb-redir,chardev=usbredirchardev \( i ) ,id=usbredirdev \( i ) ,bus= usb-controller-\( i/ 3 ) .0 " )
975986 }
976987 }
977- // set up usb forwarding
978- for i in 0 ..< maxDevices {
979- f ( " -chardev " )
980- f ( " spicevmc,name=usbredir,id=usbredirchardev \( i) " )
981- f ( " -device " )
982- f ( " usb-redir,chardev=usbredirchardev \( i) ,id=usbredirdev \( i) ,bus=usb-controller- \( i/ 3 ) .0 " )
983- }
984988 #endif
985989 }
986990
0 commit comments