From f1cdf417edeb9979a5f1f32c20d7ad75abc97a14 Mon Sep 17 00:00:00 2001 From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Tue, 8 Apr 2014 15:40:42 +0200 Subject: include: make the device_t types translation functions mutable Make the intran, outtran and destructor functions mutable using preprocessor macros. Make it possible to inject imports using the DEVICE_IMPORTS macro. This way, userspace servers can provide their own translation functions. * include/device/device_types.defs: Honor DEVICE_IMPORTS. (device_t): Make the translation mutable using preprocessor macros. --- include/device/device_types.defs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/device/device_types.defs b/include/device/device_types.defs index 79e4c5b..ff6cff6 100644 --- a/include/device/device_types.defs +++ b/include/device/device_types.defs @@ -39,6 +39,10 @@ #include +#ifdef DEVICE_IMPORTS +DEVICE_IMPORTS +#endif + type recnum_t = unsigned32; type dev_mode_t = unsigned32; type dev_flavor_t = unsigned32; @@ -55,6 +59,16 @@ type device_t = mach_port_t intran: device_t dev_port_lookup(mach_port_t) outtran: mach_port_t convert_device_to_port(device_t) destructor: device_deallocate(device_t) +#else /* KERNEL_SERVER */ +#ifdef DEVICE_INTRAN + intran: DEVICE_INTRAN +#endif +#ifdef DEVICE_OUTTRAN + outtran: DEVICE_OUTTRAN +#endif +#ifdef DEVICE_DESTRUCTOR + destructor: DEVICE_DESTRUCTOR +#endif #endif /* KERNEL_SERVER */ ; -- cgit v1.2.3