Date: Tue, 10 Jul 2007 21:27:12 -0700 From: "Christopher Davis" <loafier@FreeBSD.org> To: multimedia@freebsd.org Cc: freebsd-hackers@freebsd.org Subject: Re: Audio driver template Message-ID: <c44ca55f0707102127k1164bfbcqc4b86aa917bb8c0b@mail.gmail.com> In-Reply-To: <20070710093829.34mqbekao4wwww4s@webmail.leidinger.net> References: <c44ca55f0707091147n48741250h588a1fcf59d1b74b@mail.gmail.com> <20070710093829.34mqbekao4wwww4s@webmail.leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 7/10/07, Alexander Leidinger <Alexander@leidinger.net> wrote: > Quoting Christopher Davis <loafier@FreeBSD.org> (from Mon, 9 Jul 2007 > 11:47:14 -0700): > > > http://people.freebsd.org/~cg/template.c > > > > Thought I would take a look at the audio driver template as > > part of my task to modernize drivers, soc2007. I would simplify > > the read and write functions to avoid using the bus tag and > > handle, but I'm not sure what else to do to bring it up to date. > > > > How else can it be improved? > > Putting it into the examples directory instead of having it on the > people's own pages would be an improvement (the developer handbook > needs to be changed to point to the examples directory then). > > And you should clarify what kind of improvements are valid for your > SoC work. Somehow I doubt that adding shiny new features (like hps > suggested) is part of the goal for your work. I think it's more like > bringing existing drivers up-to-par with currently available generic > driver interfaces, isn't it? > > I also think examples for suspend/resume stuff should be added. > /sys/dev/sound/pci/atiixp.c has suspend and resume methods if you want > an example. > > You could also review the locking, as it changed a little bit > recently, I think. > > Apart from the atiixp driver the envy42, emu10kx and HDA drivers can > also serve as examples for what is the most current in the sound > subsystem in FreeBSD. Maybe you can gain some more hints from them (I > think the template is not very up-to-date compared to them). > > The new mixer interface is not used yet in the drivers, so we don't > have examples at all for them. You could ask ryanb@FreeBSD.org (or on > multimedia@) about it. > > Ariff@FreeBSD.org (or multimedia@) can maybe help if you have some > questions regarding the drivers in the tree (maybe Ariff will answer > to your initial question anyway). > > Bye, > Alexander. > > -- > I guess the Little League is even littler than we thought. > -- D. Cavett > > http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 > http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137 > Yes, my project is to modify drivers to use new interface features, like bus_alloc_resources(), which can help cut down bloat. Adding new features is probably out of scope at this point. Here's what I've done so far: http://loafier.sixbit.org/template.c - simplified read and write functions (changed to macros) - used bus_alloc_resources() -- I'm not sure if the resource id numbers are correct. - used pci_enable_busmaster() and pci_enable_io() functions -- I'm not sure if this is correct, either. - used bus_get_dma_tag() for the parent arg of bus_dma_tag_create() I'll take a look at those newer drivers to see what audio-specific changes to make... -- Christopher Davis
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?c44ca55f0707102127k1164bfbcqc4b86aa917bb8c0b>