When you have a static network environment but more than one network device on your machine it is necessary to provide the <device> parameter to the ip parameter at kernel cmd line. The device name assigned by Linux cannot in general be predicted as it depends on driver bind order. This patch introduces a new global variable "global.linux.nfsroot.device" which when set is feed to the ip= kernel parameter as device name. Signed-off-by: Gavin Schenk <g.schenk@xxxxxxxxxxxx> --- net/ifup.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/net/ifup.c b/net/ifup.c index 5113d138329a..bdb7cf0e6d0a 100644 --- a/net/ifup.c +++ b/net/ifup.c @@ -109,16 +109,19 @@ int ifup(const char *name, unsigned flags) dev_set_param(dev, "linux.bootargs", "ip=dhcp"); } else if (!strcmp(ip, "static")) { char *bootarg; + const char *env_linux_nfsroot_device = + getenv("global.linux.nfsroot.device"); for (i = 0; i < ARRAY_SIZE(vars); i++) { ret = eth_set_param(dev, vars[i]); if (ret) goto out; } - bootarg = basprintf("ip=%pI4:%pI4:%pI4:%pI4:::", + bootarg = basprintf("ip=%pI4:%pI4:%pI4:%pI4::%s:", &edev->ipaddr, &edev->serverip, &edev->gateway, - &edev->netmask); + &edev->netmask, + env_linux_nfsroot_device ?: ""); dev_set_param(dev, "linux.bootargs", bootarg); free(bootarg); } else { -- 2.15.0 Eckelmann AG Vorstand: Dipl.-Ing. Peter Frankenbach (Sprecher) Dipl.-Wi.-Ing. Philipp Eckelmann Dr.-Ing. Marco Münchhof Dr.-Ing. Frank Uhlemann Vorsitzender des Aufsichtsrats: Hubertus G. Krossa Stv. Vorsitzender des Aufsichtsrats: Dr.-Ing. Gerd Eckelmann Sitz der Gesellschaft: Berliner Str. 161, 65205 Wiesbaden, Amtsgericht Wiesbaden HRB 12636 http://www.eckelmann.de _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox