[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] include: fix the definition of device_open
From: |
Justus Winter |
Subject: |
[PATCH] include: fix the definition of device_open |
Date: |
Fri, 11 Apr 2014 09:32:30 +0200 |
Previously, every userspace server implementing the device protocol
filtered the device definitions to replace the device_t type with
mach_port_send_t to make the device argument of device_open
polymorphic. Rather than doing that, which makes it impossible to use
translation functions, fix the definition of device_open.
* include/device/device.defs (device_open): Redefine the device
argument to make it polymorphic unless a outran function is specified.
---
include/device/device.defs | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/include/device/device.defs b/include/device/device.defs
index d9234e3..5fdf1bd 100644
--- a/include/device/device.defs
+++ b/include/device/device.defs
@@ -52,7 +52,16 @@ routine device_open(
sreplyport reply_port : reply_port_t;
mode : dev_mode_t;
name : dev_name_t;
- out device : device_t
+ out device : device_t =
+ MACH_MSG_TYPE_PORT_SEND
+ ctype: mach_port_t
+#if KERNEL_SERVER
+ outtran: mach_port_t convert_device_to_port(device_t)
+#else
+#ifdef DEVICE_OUTTRAN
+ outtran: DEVICE_OUTTRAN
+#endif
+#endif /* KERNEL_SERVER */
);
routine device_close(
--
1.9.1
- [PATCH] include: fix the definition of device_open,
Justus Winter <=