[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GSoC] GNU/Hurd Sound Support

From: olafBuddenhagen
Subject: Re: [GSoC] GNU/Hurd Sound Support
Date: Tue, 1 Apr 2008 04:46:23 +0200
User-agent: Mutt/1.5.17+20080114 (2008-01-14)


On Mon, Mar 31, 2008 at 10:22:11PM +0200, Mohammed Gamal wrote:

> This is kind of a late follow up to these threads [1][2].

Well, why not just reply in that thread, then? :-) That would have made
it much easier to keep track...

> I am quite interested interested in adding sound support in Hurd, yet
> I am completely new to Hurd and also a Linux kernel newbie. I have a
> basic understanding of Linux drivers, and character devices in
> particular. Would it be suitable for someone with my experience to
> apply for such project?

Applying can never hurt :-)

Whether your experience is sufficient, is hard to judge. It depends
greatly on your general programming experience, and your ability to
grasp new concepts quickly.

You could try to write some first bit of code related to this project
right now (of course, we will assist you as well as we can!) -- seeing
what the progress you make with that, would allow us to form an opinion
about how likely you will be able to finish the project in time :-)

> I've read the GNU/Hurd Hacking Guide and could get a sense of how
> translators work and interact with system libraries and how do those
> in turn interact with the kernel.

This is a good start :-)

> So, the picture I am getting is that to add sound support we'll need a
> system library (which we can call 'libsound' for example) which should
> provide a general interface to sound hardware (analogous to ALSA in
> Linux), and for each sound device one has to write a translator that
> will map device calls (ioctls, reads/writes ...etc) to Mach device
> calls, so am I getting the right picture here?

I'm not sure, but my impression is that you somehow got it backwards...

The actual drivers live inside Mach (which is suboptimal, but not easy
to change...); and Mach offers access to them through it's device
interface. This is similar in what it does to UNIX device files, but
it's not compatible -- Mach knows nothing about UNIX files. So we need a
translator in user space (like we already have for various other kinds
of devices), which translates POSIX calls into Mach device calls.

> As for the driver, I am thinking about porting the Ensoniq 1370 driver
> as it's emulated under QEMU, do you think this would be a good idea?

Yes, that's probably a very good idea.

In fact, Richard Braun (syn on IRC) has once tried porting the driver,
and had it mostly working, but there was a serious bug he couldn't track
down, so he gave up. You could try to contact him -- perhaps you could
use his code as a starting point, or at least get some advice.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]