Skip to content

Commit

Permalink
ALSA: ASoC: Au12x0/Au1550 PSC Audio support
Browse files Browse the repository at this point in the history
Audio for Au12x0/Au1550 PSCs in AC97 and I2S mode, for ASoC v1 framework.

- DBDMA, AC97 and I2S drivers
- sample AC97 machine code (Db1200)

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
  • Loading branch information
Manuel Lauss authored and Jaroslav Kysela committed Jul 10, 2008
1 parent bf41534 commit 4a161d2
Show file tree
Hide file tree
Showing 10 changed files with 1,474 additions and 1 deletion.
8 changes: 8 additions & 0 deletions include/asm-mips/mach-au1x00/au1xxx_psc.h
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,14 @@ typedef struct psc_i2s {
u32 psc_i2sudf;
} psc_i2s_t;

#define PSC_I2SCFG_OFFSET 0x08
#define PSC_I2SMASK_OFFSET 0x0C
#define PSC_I2SPCR_OFFSET 0x10
#define PSC_I2SSTAT_OFFSET 0x14
#define PSC_I2SEVENT_OFFSET 0x18
#define PSC_I2SRXTX_OFFSET 0x1C
#define PSC_I2SUDF_OFFSET 0x20

/* I2S Config Register. */
#define PSC_I2SCFG_RT_MASK (3 << 30)
#define PSC_I2SCFG_RT_FIFO1 (0 << 30)
Expand Down
1 change: 1 addition & 0 deletions sound/soc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ config SND_SOC_AC97_BUS
# All the supported Soc's
source "sound/soc/at32/Kconfig"
source "sound/soc/at91/Kconfig"
source "sound/soc/au1x/Kconfig"
source "sound/soc/pxa/Kconfig"
source "sound/soc/s3c24xx/Kconfig"
source "sound/soc/sh/Kconfig"
Expand Down
2 changes: 1 addition & 1 deletion sound/soc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ snd-soc-core-objs := soc-core.o soc-dapm.o

obj-$(CONFIG_SND_SOC) += snd-soc-core.o
obj-$(CONFIG_SND_SOC) += codecs/ at32/ at91/ pxa/ s3c24xx/ sh/ fsl/ davinci/
obj-$(CONFIG_SND_SOC) += omap/
obj-$(CONFIG_SND_SOC) += omap/ au1x/
32 changes: 32 additions & 0 deletions sound/soc/au1x/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
##
## Au1200/Au1550 PSC + DBDMA
##
config SND_SOC_AU1XPSC
tristate "SoC Audio for Au1200/Au1250/Au1550"
depends on SOC_AU1200 || SOC_AU1550
help
This option enables support for the Programmable Serial
Controllers in AC97 and I2S mode, and the Descriptor-Based DMA
Controller (DBDMA) as found on the Au1200/Au1250/Au1550 SoC.

config SND_SOC_AU1XPSC_I2S
tristate

config SND_SOC_AU1XPSC_AC97
tristate
select AC97_BUS
select SND_AC97_CODEC
select SND_SOC_AC97_BUS


##
## Boards
##
config SND_SOC_SAMPLE_PSC_AC97
tristate "Sample Au12x0/Au1550 PSC AC97 sound machine"
depends on SND_SOC_AU1XPSC
select SND_SOC_AU1XPSC_AC97
select SND_SOC_AC97_CODEC
help
This is a sample AC97 sound machine for use in Au12x0/Au1550
based systems which have audio on PSC1 (e.g. Db1200 demoboard).
13 changes: 13 additions & 0 deletions sound/soc/au1x/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Au1200/Au1550 PSC audio
snd-soc-au1xpsc-dbdma-objs := dbdma2.o
snd-soc-au1xpsc-i2s-objs := psc-i2s.o
snd-soc-au1xpsc-ac97-objs := psc-ac97.o

obj-$(CONFIG_SND_SOC_AU1XPSC) += snd-soc-au1xpsc-dbdma.o
obj-$(CONFIG_SND_SOC_AU1XPSC_I2S) += snd-soc-au1xpsc-i2s.o
obj-$(CONFIG_SND_SOC_AU1XPSC_AC97) += snd-soc-au1xpsc-ac97.o

# Boards
snd-soc-sample-ac97-objs := sample-ac97.o

obj-$(CONFIG_SND_SOC_SAMPLE_PSC_AC97) += snd-soc-sample-ac97.o
Loading

0 comments on commit 4a161d2

Please sign in to comment.