From d35703f70a6c0f89bcec1c97801532ab0d1b945f Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 27 Mar 2007 22:47:11 +0000 Subject: 2007-03-27 Thomas Schwinge Unconditionally use the device driver multiplexing. Suggested by Gianluca Guida . * i386/i386at/dev_hdr.h: Merge into `device/dev_hdr.h' and remove. * i386/i386at/device_emul.h: Rename to `device/device_emul.h'. Adapt all users. * i386/i386at/i386at_ds_routines.c: Merge into `device/ds_routines.c' and remove. * i386/linux/dev/include/linux_emul.h: Remove file. * Makefrag.am (libkernel_a_SOURCES): Add `device/device_emul.h'. * i386/Makefrag.am (libkernel_a_SOURCES): Remove `i386/i386at/dev_hdr.h', `i386/i386at/device_emul.h' and `i386/i386at/i386at_ds_routines.c'. * i386/linux/Makefrag.am (liblinux_a_SOURCES): Remove `i386/linux/dev/include/linux_emul.h'. * dev/dev_hdr.h: Adapt all users of `i386' as if it were always defined. * device/dev_lookup.c: Likewise. * device/ds_routines.c: Likewise. * device/device_init.c (ds_init): Rename to `mach_device_init'. * device/ds_routines.c (ds_init): Likewise. (ds_trap_init): Rename to `mach_device_trap_init'. (mach_device_trap_init): Make it `static'. * linux/dev/glue/block.c: Don't include , but instead include and . * linux/dev/glue/net.c: Don't include , but instead include . * linux/pcmcia-cs/glue/ds.c: Likewise. --- device/dev_lookup.c | 29 ++--------------------------- 1 file changed, 2 insertions(+), 27 deletions(-) (limited to 'device/dev_lookup.c') diff --git a/device/dev_lookup.c b/device/dev_lookup.c index 3243a2c2..2391e8d7 100644 --- a/device/dev_lookup.c +++ b/device/dev_lookup.c @@ -42,9 +42,7 @@ #include #include -#ifdef i386 -#include -#endif +#include /* * Device structure routines: reference counting, port->device. @@ -255,7 +253,7 @@ dev_port_enter(device) register mach_device_t device; { mach_device_reference(device); -#ifdef i386 + ipc_kobject_set(device->port, (ipc_kobject_t) &device->dev, IKOT_DEVICE); device->dev.emul_data = device; @@ -264,9 +262,6 @@ dev_port_enter(device) device->dev.emul_ops = &mach_device_emulation_ops; } -#else - ipc_kobject_set(device->port, (ipc_kobject_t) device, IKOT_DEVICE); -#endif } /* @@ -296,12 +291,8 @@ dev_port_lookup(port) ip_lock(port); if (ip_active(port) && (ip_kotype(port) == IKOT_DEVICE)) { device = (device_t) port->ip_kobject; -#ifdef i386 if (device->emul_ops->reference) (*device->emul_ops->reference)(device->emul_data); -#else - mach_device_reference(device); -#endif } else device = DEVICE_NULL; @@ -318,26 +309,10 @@ ipc_port_t convert_device_to_port(device) register device_t device; { -#ifndef i386 - register ipc_port_t port; -#endif - if (device == DEVICE_NULL) return IP_NULL; -#ifdef i386 return (*device->emul_ops->dev_to_port) (device->emul_data); -#else - device_lock(device); - if (device->state == DEV_STATE_OPEN) - port = ipc_port_make_send(device->port); - else - port = IP_NULL; - device_unlock(device); - - mach_device_deallocate(device); - return port; -#endif } /* -- cgit v1.2.3