summaryrefslogtreecommitdiff
path: root/device/dev_hdr.h
diff options
context:
space:
mode:
Diffstat (limited to 'device/dev_hdr.h')
-rw-r--r--device/dev_hdr.h48
1 files changed, 36 insertions, 12 deletions
diff --git a/device/dev_hdr.h b/device/dev_hdr.h
index b976caf..50e2977 100644
--- a/device/dev_hdr.h
+++ b/device/dev_hdr.h
@@ -28,6 +28,31 @@
* Date: 3/89
*/
+/*
+ * Mach device emulation definitions (i386at version).
+ *
+ * Copyright (c) 1996 The University of Utah and
+ * the Computer Systems Laboratory at the University of Utah (CSL).
+ * All rights reserved.
+ *
+ * Permission to use, copy, modify and distribute this software is hereby
+ * granted provided that (1) source code retains these copyright, permission,
+ * and disclaimer notices, and (2) redistributions including binaries
+ * reproduce the notices in supporting documentation, and (3) all advertising
+ * materials mentioning features or use of this software display the following
+ * acknowledgement: ``This product includes software developed by the
+ * Computer Systems Laboratory at the University of Utah.''
+ *
+ * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
+ * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
+ * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ *
+ * CSL requests users of this software to return to csl-dist@cs.utah.edu any
+ * improvements that they make and grant CSL redistribution rights.
+ *
+ * Author: Shantanu Goel, University of Utah CSL
+ */
+
#ifndef _DEVICE_DEV_HDR_H_
#define _DEVICE_DEV_HDR_H_
@@ -37,16 +62,17 @@
#include <device/conf.h>
-#ifdef i386
-#include <i386at/dev_hdr.h>
-#else
-#define mach_device device
-#define mach_device_t device_t
-#define MACH_DEVICE_NULL DEVICE_NULL
-#define mach_device_reference device_reference
-#define mach_device_deallocate device_deallocate
-#define mach_convert_device_to_port convert_device_to_port
-#endif
+/* This structure is associated with each open device port.
+ The port representing the device points to this structure. */
+struct device
+{
+ struct device_emulation_ops *emul_ops;
+ void *emul_data;
+};
+
+typedef struct device *device_t;
+
+#define DEVICE_NULL ((device_t) 0)
/*
* Generic device header. May be allocated with the device,
@@ -72,9 +98,7 @@ struct mach_device {
int dev_number; /* device number */
int bsize; /* replacement for DEV_BSIZE */
struct dev_ops *dev_ops; /* and operations vector */
-#ifdef i386
struct device dev; /* the real device structure */
-#endif
};
typedef struct mach_device *mach_device_t;
#define MACH_DEVICE_NULL ((mach_device_t)0)