o_network=
o_qemu_extra=()
while [ "$#" -gt 0 ]; do
+ # Cmdline options for the script itself SHOULD try to be
+ # prefixed with two dashes to distinguish them from those for
+ # qemu executables.
+ #
+ # Also note that qemu accepts both --opt and -opt
case "$1" in
--kernel) o_kernel="$2"; shift 2 ;;
--rootfs) o_rootfs="$2"; shift 2 ;;
# one will be actually used as the wan, lan network interface inside the
# guest machine
[ -z "$o_network" ] || {
- o_qemu_extra+=( \
- "-netdev" "bridge,id=wan,br=$BR_WAN,helper=$HELPER" "-device" \
- "virtio-net-pci,id=devwan,netdev=wan,mac=$MAC_WAN" \
- "-netdev" "bridge,id=lan,br=$BR_LAN,helper=$HELPER" \
- "-device" "virtio-net-pci,id=devlan,netdev=lan,mac=$MAC_LAN" \
+ o_qemu_extra+=(
+ -netdev bridge,id=wan,br="$BR_WAN,helper=$HELPER" -device pcnet,netdev=wan,mac="$MAC_WAN"
+ -netdev bridge,id=lan,br="$BR_LAN,helper=$HELPER" -device pcnet,netdev=lan,mac="$MAC_LAN"
)
}
}
[ -z "$o_network" ] || {
- o_qemu_extra+=( \
- "-netdev" "bridge,id=lan,br=$BR_LAN,helper=$HELPER" \
- "-device" "virtio-net-pci,id=devlan,netdev=lan,mac=$MAC_LAN" \
- "-netdev" "bridge,id=wan,br=$BR_WAN,helper=$HELPER" "-device" \
- "virtio-net-pci,id=devwan,netdev=wan,mac=$MAC_WAN" \
- )
+ case "${o_subtarget%-*}" in
+ legacy)
+ o_qemu_extra+=(
+ -netdev "bridge,id=lan,br=$BR_LAN,helper=$HELPER" -device "e1000,id=devlan,netdev=lan,mac=$MAC_LAN"
+ -netdev "bridge,id=wan,br=$BR_WAN,helper=$HELPER" -device "e1000,id=devwan,netdev=wan,mac=$MAC_WAN"
+ )
+ ;;
+ generic|64)
+ o_qemu_extra+=(
+ -netdev "bridge,id=lan,br=$BR_LAN,helper=$HELPER" -device "virtio-net-pci,id=devlan,netdev=lan,mac=$MAC_LAN"
+ -netdev "bridge,id=wan,br=$BR_WAN,helper=$HELPER" -device "virtio-net-pci,id=devwan,netdev=wan,mac=$MAC_WAN"
+ )
+ ;;
+ esac
}
case "${o_subtarget%-*}" in