This patchset contains five patches which add support for ASoC sound drivers on ST's SPEAr13XX platform. Details of the SPEAr13XX platforms can be seen here: http://www.st.com/internet/mcu/product/250658.jsp
The ARCH and PLATFORM specific code for SPEAr13XX are already under review in Russell King's ARM mailing list(Linux-kernel-version 2.6.38-rc4).
This patchset has been tested for linux-kernel-version 2.6.38-rc4 and on ARM platform.
Please review the same and consider for mainline inclusion.
Changes in machine driver code since V3 1.Use of snd_soc_register_card() rather than using the soc-audio device. Changes in codec code since V3: 1. use standard cache sync implementation i.e. snd_soc_cache_sync() Changes in spear Kconfig and Makefile since V2: 1.giving all the the modules snd-soc- prefixes to their names Changes in codec code since V2: 1. use SOC_DOUBLE for volume control 2. remove default configuration for codec .offer them as runtime controls. 3. restore the register cache in resume changes in platform code since V1: 1. Spilt machine driver from platform driver. 2. Updated rate supported. 3. Moved clock specific part from "spear13xx_i2s_set_dai_sysclk". function to platform code. This function is removed now. 4. Function "spear13xx_i2s_startup" removed. 5. Function "spear13xx_i2s_shutdown" removed.
Changes in codec code since V1: 1. Removed sta529 version number. 2. Removed "sta529_read_reg_cache". 3. Removed function "sta529_write_reg_cache". 4. Removed function "sta529_write". 5. Moved sta529.h file contents to sta529.c file. 6. Move clock specific part from "spear_sta_set_dai_sysclk". function to platform code. This function is removed now. 7. Renamed function names from spear_sta_* to sta_*. 8. Modified probe() function to avoid rewriting default chip values to hardware.
Rajeev Kumar (5): sound: asoc: Adding support for STA529 Audio Codec sound: asoc: Adding support for SPEAr13XX ASoC platform driver sound: asoc: Adding support for SPEAr13XX ASoC machine driver sound: asoc: Adding Kconfig and Makefile to support SPEAr13XX ASoC driver sound: asoc: Adding support for SPEAr13XX in soc
sound/soc/Kconfig | 1 + sound/soc/Makefile | 1 + sound/soc/codecs/Kconfig | 5 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/sta529.c | 374 ++++++++++++++++++++++++++++ sound/soc/spear/Kconfig | 19 ++ sound/soc/spear/Makefile | 12 + sound/soc/spear/evb_sta529.c | 121 +++++++++ sound/soc/spear/spear13xx-i2s.c | 524 +++++++++++++++++++++++++++++++++++++++ sound/soc/spear/spear13xx-i2s.h | 19 ++ sound/soc/spear/spear13xx-pcm.c | 500 +++++++++++++++++++++++++++++++++++++ sound/soc/spear/spear13xx-pcm.h | 50 ++++ 12 files changed, 1628 insertions(+), 0 deletions(-) create mode 100644 sound/soc/codecs/sta529.c create mode 100644 sound/soc/spear/Kconfig create mode 100644 sound/soc/spear/Makefile create mode 100644 sound/soc/spear/evb_sta529.c create mode 100644 sound/soc/spear/spear13xx-i2s.c create mode 100644 sound/soc/spear/spear13xx-i2s.h create mode 100644 sound/soc/spear/spear13xx-pcm.c create mode 100644 sound/soc/spear/spear13xx-pcm.h