summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>1998-10-06 08:38:04 +0000
committerdfr <dfr@FreeBSD.org>1998-10-06 08:38:04 +0000
commitc1d604a90cbc695f779fdd42801cec31880e28e3 (patch)
tree1e1870813e12e68a71cbe40b08d7c257d8dd7f2a /sys/alpha
parent6ca5ba53ae731fa7ccb5bf3b59805cad9ab08f8d (diff)
downloadFreeBSD-src-c1d604a90cbc695f779fdd42801cec31880e28e3.zip
FreeBSD-src-c1d604a90cbc695f779fdd42801cec31880e28e3.tar.gz
Add MFS_ROOT support.
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/alpha/autoconf.c56
1 files changed, 38 insertions, 18 deletions
diff --git a/sys/alpha/alpha/autoconf.c b/sys/alpha/alpha/autoconf.c
index 01fe450..205404f5 100644
--- a/sys/alpha/alpha/autoconf.c
+++ b/sys/alpha/alpha/autoconf.c
@@ -23,9 +23,15 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: autoconf.c,v 1.9 1998/09/26 12:22:53 dfr Exp $
+ * $Id: autoconf.c,v 1.10 1998/09/26 14:48:19 dfr Exp $
*/
+#include "opt_bootp.h"
+#include "opt_ffs.h"
+#include "opt_cd9660.h"
+#include "opt_mfs.h"
+#include "opt_nfsroot.h"
+
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/conf.h>
@@ -209,29 +215,43 @@ configure(void *dummy)
void
cpu_rootconf()
{
- static char rootname[] = "da0a";
+#ifdef MFS_ROOT
+ if (!mountrootfsname) {
+ if (bootverbose)
+ printf("Considering MFS root f/s.\n");
+ mountrootfsname = "mfs";
+ }
+#endif
- mountrootfsname = "ufs";
+#if defined(FFS) || defined(FFS_ROOT)
+ if (!mountrootfsname) {
+ static char rootname[] = "da0a";
- if (boot_sim) {
- struct cam_path *path;
- struct cam_periph *periph;
+ if (bootverbose)
+ printf("Considering UFS root f/s.\n");
+ mountrootfsname = "ufs";
+
+ if (boot_sim) {
+ struct cam_path *path;
+ struct cam_periph *periph;
- xpt_create_path(&path, NULL,
- cam_sim_path(boot_sim),
- bootdev_unit() / 100, 0);
- periph = cam_periph_find(path, "da");
+ xpt_create_path(&path, NULL,
+ cam_sim_path(boot_sim),
+ bootdev_unit() / 100, 0);
+ periph = cam_periph_find(path, "da");
- if (periph)
- rootdev = makedev(4, dkmakeminor(periph->unit_number,
- COMPATIBILITY_SLICE, 0));
+ if (periph)
+ rootdev = makedev(4, dkmakeminor(periph->unit_number,
+ COMPATIBILITY_SLICE, 0));
- xpt_free_path(path);
- }
+ xpt_free_path(path);
+ }
- rootdevs[0] = rootdev;
- rootname[2] += dkunit(minor(rootdev));
- rootdevnames[0] = rootname;
+ rootdevs[0] = rootdev;
+ rootname[2] += dkunit(minor(rootdev));
+ rootdevnames[0] = rootname;
+ }
+#endif
}
void
OpenPOWER on IntegriCloud