[alsa-devel] How to start with a driver for custom hardware?

Mark Brown broonie at sirena.org.uk
Wed Oct 1 17:52:25 CEST 2008

On Wed, Oct 01, 2008 at 05:43:36PM +0200, javier.martinc at alumnos.unican.es wrote:

> The situation is the following:
> We are using a Cyclone II FPGA with a nommu NiosII processor and uClinux.
> We have an external TLV320AIC110 codec with I2C control interface and PCM audio
> interface.

> For example, should I used alsa or asoc? In my opinion, alsa documentation is
> more clear than asoc, but it is highlt oriented to pci drivers.

This sounds like a good fit for ASoC - you've got a system with separate
codec and interface/DMA drivers.

Most of the standard ALSA documentation also applies to ASoC, especially
for platform drivers which essentially just get passed through the
standard ALSA operations.  The vast majority of the ASoC specific stuff
is in the codec drivers.  If you have questions then hopefully people
here can help out.

> As you can see it is a simple hardware which control registers are mapped into
> memory. Which part of the alsa driver takes care of accesing these hardware
> dependent registers?

If it were done using ASoC then you'd write ASoC platform drivers
which would do this.

More information about the Alsa-devel mailing list