Hi I'm try to get the serial driver from OSKit working with gnumach2. Basically I just changed the Makefile to include the freebsd driver library and added the oskit_freebsd_init_sio call to gnumach/oskit/ds_osenv.c. Of course things are not that simple and so I see a panic as soon the ttyS1 device is accessed. BTW looks this setup correct? hurd:~# showtrans /dev/ttyS1 /hurd/term /dev/ttyS1 device @isa@0x02f8
After several unsuccessful days trying to get gdb working, I stepped back and started to do a simple printf debugging and gathered some results. When the device is accessed for the first time dev_open_com (gnumach/oskit/ds_routines.c) is called. After some bookeeping things the device should be opened to decide which flavor it is (oskit_device_query). But oskit_device_query doesn't find the serial device. Actually the serial driver implements the oskti_stream_iid interface, so it should be found if the driver would be initialized. The question is why it's not. The serial driver object will be fully initialized when the bus is probed. So before we can access the serial driver object we need to probe the bus. The code is also there in dev_open_com but obviously never called (I have checked it with printf): else if (oskit_device_query (com_device, &oskit_bus_iid, (void **) &bus) == 0) { printf ("XXX %s: oskit_bus_iid\n", __FUNCTION__); if (mode & D_WRITE) { device_lock (dev); mode = dev->mode & D_NODELAY; device_unlock (dev); if (mode & D_NODELAY) /* Someone was waiting for us to finish opening. */ thread_wakeup ((event_t)dev); device_deallocate (dev); return D_READ_ONLY; } ops = &bus_device_ops; rc = populate_bus (dev, bus); oskit_bus_release (bus); } I don't think this code is there just for fun, so the question is how do I trigger gnumach2 to execute this part of the code? thanks, daniel ps: If someone is interested how to debug gnumach under bochs let me know. I'm quite experinced with that now :) _______________________________________________ Bug-hurd mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-hurd