Skip to content

Commit

Permalink
ALSA: Add ALSA driver for Atmel Audio Bitstream DAC
Browse files Browse the repository at this point in the history
This patch adds ALSA support for the Audio Bistream DAC found on Atmel
AVR32 devices. The ABDAC is an Atmel IP which might show up on AT91
devices in the future, hence making a generic driver which can be
utilized by AT91 arch if needed.

Datasheet describing the ABDAC peripheral is available in the AT32AP7000
datasheet, http://www.atmel.com/dyn/products/datasheets.asp?family_id=682

Tested on ATSTK1006 + ATSTK1000 with a class D amplifier stage.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Hans-Christian Egtvedt authored and tiwai committed Feb 5, 2009
1 parent 6bd0dd5 commit e4967d6
Show file tree
Hide file tree
Showing 4 changed files with 639 additions and 0 deletions.
23 changes: 23 additions & 0 deletions include/sound/atmel-abdac.h
@@ -0,0 +1,23 @@
/*
* Driver for the Atmel Audio Bitstream DAC (ABDAC)
*
* Copyright (C) 2009 Atmel Corporation
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published
* by the Free Software Foundation.
*/
#ifndef __INCLUDE_SOUND_ATMEL_ABDAC_H
#define __INCLUDE_SOUND_ATMEL_ABDAC_H

#include <linux/dw_dmac.h>

/**
* struct atmel_abdac_pdata - board specific ABDAC configuration
* @dws: DMA slave interface to use for sound playback.
*/
struct atmel_abdac_pdata {
struct dw_dma_slave dws;
};

#endif /* __INCLUDE_SOUND_ATMEL_ABDAC_H */
11 changes: 11 additions & 0 deletions sound/atmel/Kconfig
@@ -0,0 +1,11 @@
menu "Atmel devices (AVR32 and AT91)"
depends on AVR32 || ARCH_AT91

config SND_ATMEL_ABDAC
tristate "Atmel Audio Bitstream DAC (ABDAC) driver"
select SND_PCM
depends on DW_DMAC && AVR32
help
ALSA sound driver for the Atmel Audio Bitstream DAC (ABDAC).

endmenu
3 changes: 3 additions & 0 deletions sound/atmel/Makefile
@@ -0,0 +1,3 @@
snd-atmel-abdac-objs := abdac.o

obj-$(CONFIG_SND_ATMEL_ABDAC) += snd-atmel-abdac.o

0 comments on commit e4967d6

Please sign in to comment.