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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.