@@ -41,6 +41,8 @@
# "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
# Note, runqemu will replace "@TAP@" with the one which is used, such as tap0, tap1 ...
#
+# QB_KERNEL_NO_NETWORK_CONFIG: disable auto network configuration via kernel cmdline possible values 'True' and 'False'
+#
# QB_SLIRP_OPT: network option for SLIRP mode, e.g., -netdev user,id=net0"
#
# QB_ROOTFS_OPT: used as rootfs, e.g.,
@@ -63,6 +65,7 @@ QB_DEFAULT_KERNEL ?= "${KERNEL_IMAGETYPE}"
QB_DEFAULT_FSTYPE ?= "ext4"
QB_OPT_APPEND ?= "-show-cursor"
QB_NETWORK_DEVICE ?= "-device virtio-net-pci,netdev=net0,mac=@MAC@"
+QB_KERNEL_NO_NETWORK_CONFIG ?= "False"
# This should be kept align with ROOT_VM
QB_DRIVE_TYPE ?= "/dev/sd"
@@ -1069,17 +1069,19 @@ class BaseConfig(object):
gateway = tapnum * 2 + 1
client = gateway + 1
- # XXX: Linux qemuarm and qemuppc dosen't configure the interface
- # if device is specified in ip (ethN), so if only one tap device is
- # requested don't specify ethN.
- if tap_no == 1:
- netconf = "192.168.7.%s::192.168.7.%s:255.255.255.0" % (client, gateway)
- logger.info("Network configuration: %s", netconf)
- self.kernel_cmdline_script += " ip=%s" % netconf
- elif tap_idx == 0:
- netconf = "192.168.7.%s::192.168.7.%s:255.255.255.0::eth%d" % (client, gateway, tap_idx)
- logger.info("Network configuration: %s", netconf)
- self.kernel_cmdline_script += " ip=%s" % netconf
+ no_network = self.get('QB_KERNEL_NO_NETWORK_CONFIG')
+ if no_network and not no_network.lower() == 'true':
+ # XXX: Linux qemuarm and qemuppc dosen't configure the interface
+ # if device is specified in ip (ethN), so if only one tap device is
+ # requested don't specify ethN.
+ if tap_no == 1:
+ netconf = "192.168.7.%s::192.168.7.%s:255.255.255.0" % (client, gateway)
+ logger.info("Network configuration: %s", netconf)
+ self.kernel_cmdline_script += " ip=%s" % netconf
+ elif tap_idx == 0:
+ netconf = "192.168.7.%s::192.168.7.%s:255.255.255.0::eth%d" % (client, gateway, tap_idx)
+ logger.info("Network configuration: %s", netconf)
+ self.kernel_cmdline_script += " ip=%s" % netconf
mac = "%s%02x" % (self.mac_tap, client)
qemu_tap_opt = qemu_tap_opt.replace('@TAP@', tap, 1)
To let user choice if wants to have network configured via Kernel cmdline. Signed-off-by: Aníbal Limón <anibal.limon@linaro.org> --- meta/classes/qemuboot.bbclass | 3 +++ scripts/runqemu | 24 +++++++++++++----------- 2 files changed, 16 insertions(+), 11 deletions(-)