Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/evbmips/cavium Handle using "octeth" as root device...
details: https://anonhg.NetBSD.org/src/rev/e61efd854f9d
branches: trunk
changeset: 937383:e61efd854f9d
user: simonb <simonb%NetBSD.org@localhost>
date: Mon Aug 17 06:23:01 2020 +0000
description:
Handle using "octeth" as root device by converting "octethN" to "cnmacN"
for any N < 100. This allows booting for u-boot to use root=$(ethact)
on the command line and the kernel can use the ethernet interface the
kernel was loaded on as the NFS root device.
diffstat:
sys/arch/evbmips/cavium/autoconf.c | 16 ++++++++++++++--
1 files changed, 14 insertions(+), 2 deletions(-)
diffs (43 lines):
diff -r 1a6c4ec64682 -r e61efd854f9d sys/arch/evbmips/cavium/autoconf.c
--- a/sys/arch/evbmips/cavium/autoconf.c Mon Aug 17 06:18:39 2020 +0000
+++ b/sys/arch/evbmips/cavium/autoconf.c Mon Aug 17 06:23:01 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.8 2020/06/23 05:19:12 simonb Exp $ */
+/* $NetBSD: autoconf.c,v 1.9 2020/08/17 06:23:01 simonb Exp $ */
/*
* Copyright 2002 Wasabi Systems, Inc.
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.8 2020/06/23 05:19:12 simonb Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.9 2020/08/17 06:23:01 simonb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -95,12 +95,24 @@
return;
if (rootspec && *rootspec) {
+ /* if we get passed root=octethN, convert to cnmacN */
+ if (strncmp(rootspec, "octeth", 6) == 0) {
+ /* allow for up to 100 interfaces */
+ static char buf[sizeof("cnmacXX")];
+ const char *cp = &rootspec[strlen("octeth")];
+
+ KASSERT(strlen(cp) < sizeof("XX"));
+ snprintf(buf, sizeof(buf), "cnmac%s", cp);
+ rootspec = buf;
+ }
+
/* XXX hard coded "cnmac" for network boot */
if (strncmp(rootspec, "cnmac", 5) == 0) {
rootfstype = "nfs";
netboot = 1;
return;
}
+
/*
* XXX
* Assume that if the root spec is not a cnmac, it'll
Home |
Main Index |
Thread Index |
Old Index