Chasing patches into Linux

One thing that often seems to cause problems for people who work over many different areas of the Linux kernel is the process of making sure that patches actually get reviewed and applied. Where the relevant subsystem is actively maintained it’s not a problem but that’s not always the case. Sometimes maintainers are busy or […]

In-kernel audio mixing

Ever since PulseAudio started to be deployed by distributions the most common complaint I’ve seen about ALSA is that unlike current versions of OSS it doesn’t provide mixing of audio from multiple applications inside the kernel. Of course what it really comes down to is that people want the system to transparently allow multiple applications […]

Full quoting

There’s a long standing idea tha one should make an effort to trim out text from the original which is not germane to the new content in your reply. This is not just a bandwidth thing, it’s also about decreasing the effort required for the readers to parse the message – to locate the new […]

ASoC changes in 2.6.30

Linux 2.6.30 was released today. This has been a fairly quiet release from the ASoC point of view with no substantial API changes for drivers but there’s a few new interfaces which people may find helpful. Highlights include: A simple wrapper for the standard ALSA jack detection interface. This helps makes jacks a bit easier […]

DAPM power sequence optimisation

I recently implemented some enhancements to DAPM, the part of ASoC which minimizes the power consumption of the embedded audio subsystem by keeping any unused components powered off while avoiding audible artifacts as the power changes. Prior to these changes DAPM used to change the power for each component with an individual register write which […]

Getting kernel support

[This is a slight modification of something I posted to the alsa-devel list earlier today.] One of the biggest surprises that people starting to use Linux seem to run into is that you can’t rely on any particular support level from the community – everything is done on a voluntary basis and the responses will […]

If we build it they will come

It looks like the jack reporting API for ALSA which just got merged into the mainline kernel for inclusion in 2.6.28 already has its first user – code from Matthew Ranostay supporting the jack detection in Sigmatel HDA codecs was just queued for merge in the next merge window. Admittedly, the jack reporting API has […]

What’s the standard Linux audio API?

Lennart Pottering’s post about the sound APIs available for Linux appears to have caused some consternation from people working with the modern out of tree OSS drivers who feel that the current, out of tree, OSS drivers are being unfairly maligned. This rather misses the point of his post. The fact that there are improved […]

The Linux kernel needs a case sensitive filesystem

The Linux kernel source relies on a case sensitive filesystem. If you attempt to get the sources via git this will manifest as an error along the lines of: fatal: Entry ‘include/linux/netfilter/xt_CONNMARK.h There are several header files like this the names of which differ only in case and just can’t be represented on a filesystem […]