Skip to contentSkip to conversation

QEMU with host USB serial

DISCUSSION [email protected] 2 participants 4 messages Jan 26, 2017 – Jan 27, 2017

lore
Share & tools
lore
#0 lore raw

I'm investigating using qemu to give us some test capability, for which we need to use the host's serial devices.

I have a qemu build which boots up fine; I'm trying to give it access to the host USB. To keep it simple(r), I've seen mention of FTDI's device (0403:6001) in the qemu source so that's what I've plugged in. I've done a 'chmod me:me' on the relevant /dev/bus/usb/xxx/yyy node.

I can't though figure out what options I should be passing to runqemu to hook this in. I daresay I may need bootparams too, but am first just trying to get past 'qemuparams'.

As a starting point, I'm trying things like

runqemu qemux86-64 nographic qemuparams="-usbdevice serial"

which reports

Continuing with the following parameters:

KERNEL:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/bzImage-qemux86-64.bin]

ROOTFS:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4]

FSTYPE: [ext4]

Setting up tap interface under sudo

Acquiring lockfile for tap0...

-net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma
t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -nographic
-usbdevice serial -m 256

Running qemu-system-x86_64...

/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/sysroots/x86_64-linux/u sr/bin/qemu-system-x86_64 -kernel /home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86-6 4/bzImage-qemux86-64.bin -net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -no-reboot -nographic -usbdevice serial -m 256 -serial mon:stdio -serial null --append "vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1 rootfstype=ext4 console=ttyS0"

qemu-system-x86_64: -usbdevice serial: character device specification needed

qemu-system-x86_64: -usbdevice serial: Failed to create USB device 'usb-serial'

qemu: could not add USB device 'serial'

Set 'tap0' nonpersistent

Releasing lockfile of preconfigured tap device 'tap0'

Or

runqemu qemux86-64 nographic qemuparams="-device
usb-serial,vendorid=0403,productid=6001"

which reports

Please use simplified serial or kvm options instead

Continuing with the following parameters:

KERNEL:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/bzImage-qemux86-64.bin]

ROOTFS:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4]

FSTYPE: [ext4]

Setting up tap interface under sudo

Acquiring lockfile for tap0...

-net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma
t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -nographic
-device usb-serial,vendorid=0403,productid=6001 -m 256

Running qemu-system-x86_64...

/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/sysroots/x86_64-linux/u sr/bin/qemu-system-x86_64 -kernel /home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86-6 4/bzImage-qemux86-64.bin -net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -no-reboot -nographic -device usb-serial,vendorid=0403,productid=6001 -m 256 -serial null --append "vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1 rootfstype=ext4 console=ttyS0"

QEMU 2.4.0 monitor - type 'help' for more information

(qemu) usb_device_add 1 'wacom-tablet'

usb_device_add success 'wacom-tablet'

qemu-system-x86_64: -device usb-serial,vendorid=0403,productid=6001:
Property '.vendorid' not found

Set 'tap0' nonpersistent

Releasing lockfile of preconfigured tap device 'tap0'

Can someone clue me in on the correct syntax please!

Thanks

#2 lore raw
In reply to [email protected]
Quoted 10 lines · On 1/26/17 6:22 AM, [email protected] wrote:

I’m investigating using qemu to give us some test capability, for which we need to use the host’s serial devices.

I have a qemu build which boots up fine; I’m trying to give it access to the host USB. To keep it simple(r), I’ve seen mention of FTDI’s device (0403:6001) in the qemu source so that’s what I’ve plugged in. I’ve done a ‘chmod me:me’ on the relevant /dev/bus/usb/xxx/yyy node.

Quoted 7 lines

I can’t though figure out what options I should be passing to runqemu to hook this in. I daresay I may need bootparams too, but am first just trying to get past ‘qemuparams’.

As a starting point, I’m trying things like

runqemu qemux86-64 nographic qemuparams="-usbdevice serial"

can you try with

runqemu qemux86-64 nographic serial

#3 lore raw

Hi,
That gives:

Continuing with the following parameters:
KERNEL:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/bzImage-qemux86-64.bin]
ROOTFS:
[/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86- 64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4]
FSTYPE: [ext4]
Setting up tap interface under sudo
[sudo] password for colin:
Acquiring lockfile for tap0...
Interrupt character is '^]'
-net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma
t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -nographic
-serial stdio -m 256
Running qemu-system-x86_64... /home/colin/100051-karo/fsl-community-bsp/buildq/tmp/sysroots/x86_64-linux/u sr/bin/qemu-system-x86_64 -kernel /home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemux86-6 4/bzImage-qemux86-64.bin -net nic,model=virtio -net tap,vlan=0,ifname=tap0,script=no,downscript=no -cpu core2duo -drive file=/home/colin/100051-karo/fsl-community-bsp/buildq/tmp/deploy/images/qemu x86-64/core-image-qemu-qemux86-64-20170124145819.rootfs.ext4,if=virtio,forma t=raw -show-cursor -usb -usbdevice wacom-tablet -vga vmware -no-reboot -nographic -serial stdio -m 256 -serial null --append "vga=0 uvesafb.mode_option=640x480-32 root=/dev/vda rw mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 oprofile.timer=1 rootfstype=ext4 console=ttyS0 console=ttyS0"
QEMU 2.4.0 monitor - type 'help' for more information
(qemu) qemu-system-x86_64: -serial stdio: cannot use stdio by multiple character devices
Set 'tap0' nonpersistent
Releasing lockfile of preconfigured tap device 'tap0'

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Khem Raj
Sent: 27 January 2017 02:10
To: [email protected]
Subject: Re: [yocto] QEMU with host USB serial

Quoted 11 lines · On 1/26/17 6:22 AM, [email protected] wrote:

I'm investigating using qemu to give us some test capability, for which we need to use the host's serial devices.

I have a qemu build which boots up fine; I'm trying to give it access to the host USB. To keep it simple(r), I've seen mention of FTDI's device
(0403:6001) in the qemu source so that's what I've plugged in. I've done a 'chmod me:me' on the relevant /dev/bus/usb/xxx/yyy node.

Quoted 7 lines

I can't though figure out what options I should be passing to runqemu to hook this in. I daresay I may need bootparams too, but am first just trying to get past 'qemuparams'.

As a starting point, I'm trying things like

runqemu qemux86-64 nographic qemuparams="-usbdevice serial"

can you try with

runqemu qemux86-64 nographic serial

--
_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto