I'm using qemu to emulate a raspberry pi. I'm starting qemu like this:

qemu-system-arm -kernel ./qemu-rpi-kernel/kernel-qemu-4.1.13-jessie \
    -cpu arm1176 -m 256 -M versatilepb \
    -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw console=tty0 console=/dev/ttyAMA3,115200" \
    -hda image.qcow2 -serial stdio -monitor none

This comes up with a working NAT network interface. Now I'm trying to modify the network configuration. I've tried adding -netdev tap,helper=...,id=hn0 -device virtio-net-pci,netdev=hn0,id=nic1. This boots, but I have no ethernet device.

It doesn't seem to matter which device I use, either I get an error that the required bus is not present (for USB or virtio-bus devices) or successful boot with no network device (for PCI devices - I expect the reason for this is that the guest doesn't have any modules for the kernel it's using).

When I boot with the default network configuration, the device that's there is using the smc91x driver. But if I try to use the smc91c111 device, I get the error message qemu-system-arm: Option '-device smc91c111' cannot be handled by this machine.

How can I customise the network configuration on this machine?

1 Answer 1


You can try to leave device section default like this:

qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb \
    -no-reboot -serial stdio -append "root=/dev/sda2 panic=1" \
    -hda ~/raspbian.img -net nic,macaddr=22:33:99:44:55:66 -net user

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .