summaryrefslogtreecommitdiff
path: root/sys/arch/aviion/stand/netboot/devopen.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/aviion/stand/netboot/devopen.c')
-rw-r--r--sys/arch/aviion/stand/netboot/devopen.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/sys/arch/aviion/stand/netboot/devopen.c b/sys/arch/aviion/stand/netboot/devopen.c
new file mode 100644
index 00000000000..ff8d812a877
--- /dev/null
+++ b/sys/arch/aviion/stand/netboot/devopen.c
@@ -0,0 +1,31 @@
+/* $OpenBSD: devopen.c,v 1.1 2006/05/16 22:48:18 miod Exp $ */
+
+#include <sys/param.h>
+#include <stand.h>
+
+/*
+ * Open the device named by the combined device/file name
+ * given as the "fname" arg, something like: "sd()bsd"
+ *
+ * However, Sun PROMs don't really let you choose which
+ * device you will talk to. You can only open the device
+ * that was used to load the boot program. Therefore, we
+ * do not accept a "device" part in the "fname" string.
+ * Pass the PROM device name to open in case it needs it.
+ */
+int
+devopen(f, fname, file)
+ struct open_file *f;
+ const char *fname;
+ char **file;
+{
+ struct devsw *dp;
+ int error;
+
+ *file = (char *)fname;
+ dp = &devsw[0];
+ f->f_dev = dp;
+ error = (*dp->dv_open)(f, NULL);
+
+ return (error);
+}