Date: Mon, 16 Aug 1999 01:16:33 +0200 From: David Olofson <audiality@swipnet.se> To: alsa-devel@alsa-project.org, rtl@rtlinux.cs.nmt.edu, Subject: Driver Programming Interface for Linux/RTLinux Finally, after messing with the usual 3 times as many silly bugs as you can imagine, here it is, the first DPI release: dpi-0.1.0 Download from http://www.angelfire.com/or/audiality/download.html <IMPORTANT> This code will NOT work with the original RTL POSIX I/O module that comes with RTL beta12, and if the DPI module and the included es1370 driver loads with it, you'll likely have a bad kernel crash... </IMPORTANT> It's not very well tested, but /dev/dsp works from RTL, ioctl() included. /dev/dsp, /dev/dac (the synth/rear outputs), and /dev/mixer works from user space, but I haven't got /dev/midi to work at all with my card, not even with the original driver... (SB PCI128 without the stupid combined line in/rear line out.) Haven't tried that hard really, but if anyone knows about something about AudioPCI cards and MIDI...? I'll want the MIDI in for cool test hacks soon. :-) Everything *should* work from both Linux and RTL, but it's mostly untested, and as always, the kernel panic is close when messing around with the inner workings... ;-) Known problems: * I get bad crashed if I screw up the buffer fragment settings. Did I break the driver, or is there a problem with the original version as well? (Will check...) * My RTL POSIX I/O module uses structures physically compatible with the standard Linux ones, but there's still some cleaning up to do. The Bad Thing (TM) that's still visible to the driver hacker is the lack of an inode struct, and the minor number is in rtl_file.f_minor. (That last int being the only difference from the real struct file.) * There is of course more cleaning up to do in the DPI layer, and I intend to split the code into headers with macros and inline funcs, so that drivers can be configured "Linux only", "RTLinux only" or "runtime context sensitive" at compile time. (The last alternative is hardcoded in the current release.) So, get RTL beta12 and have fun... :-) //David - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/