Index: autoconf.c =================================================================== RCS file: /cvsroot/syssrc/sys/arch/pmax/pmax/autoconf.c,v retrieving revision 1.53.4.1 retrieving revision 1.53.4.2 diff -u -r1.53.4.1 -r1.53.4.2 --- autoconf.c 2000/07/26 11:51:30 1.53.4.1 +++ autoconf.c 2000/11/29 22:56:52 1.53.4.2 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.c,v 1.53.4.1 2000/07/26 11:51:30 ad Exp $ */ +/* $NetBSD: autoconf.c,v 1.53.4.2 2000/11/29 22:56:52 tv Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -43,7 +43,7 @@ */ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.53.4.1 2000/07/26 11:51:30 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.53.4.2 2000/11/29 22:56:52 tv Exp $"); #include #include @@ -56,6 +56,7 @@ #include #include +#include #include @@ -67,6 +68,7 @@ #include "tz.h" #include "xasc_ioasic.h" #include "xasc_pmaz.h" +#include "opt_dec_3100.h" struct intrhand intrtab[MAX_DEV_NCOOKIES]; struct device *booted_device; @@ -111,6 +113,7 @@ booted_slot = booted_unit = booted_partition = 0; booted_protocol = NULL; +#ifdef DEC_3100 if (cp[0] == 'r' && cp[1] == 'z' && cp[2] == '(') { cp += 3; if (*cp >= '0' && *cp <= '9') @@ -126,6 +129,16 @@ booted_protocol = "SCSI"; return; } + if (strncmp(cp, "tftp(", 5) == 0) { + booted_protocol = "BOOTP"; + return; + } + if (strncmp(cp, "mop(", 4) == 0) { + booted_protocol = "MOP"; + return; + } +#endif + if (cp[0] >= '0' && cp[0] <= '9' && cp[1] == '/') { booted_slot = cp[0] - '0'; if (cp[2] == 'r' && cp[3] == 'z' @@ -275,6 +288,14 @@ if (netboot && strcmp(cd->cd_name, "le") == 0) { struct tc_attach_args *ta = aux; +#ifdef DEC_3100 + /* Only one Ethernet interface on 3100. */ + if (systype == DS_PMAX) { + booted_device = dev; + found = 1; + return; + } +#endif if (parent == ioasicdev || ta->ta_slot == booted_slot) { booted_device = dev;