ASoC: jz4740: Improve build test coverage

Allow the jz4740 audio drivers to be build when CONFIG_COMPILE_TEST is selected.
This should improve the build test coverage. There is one small piece of
platform dependent code in the jz4740-i2s driver. It uses the DMA request type
constants which are defined in a platform specific header. We can solve this by
moving them from the platform specific header to the I2S driver.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
Lars-Peter Clausen 2014-04-22 22:46:36 +02:00 committed by Mark Brown
parent 218e18a372
commit 0aa2a15a7b
3 changed files with 11 additions and 7 deletions

View File

@ -22,8 +22,6 @@ enum jz4740_dma_request_type {
JZ4740_DMA_TYPE_UART_RECEIVE = 21, JZ4740_DMA_TYPE_UART_RECEIVE = 21,
JZ4740_DMA_TYPE_SPI_TRANSMIT = 22, JZ4740_DMA_TYPE_SPI_TRANSMIT = 22,
JZ4740_DMA_TYPE_SPI_RECEIVE = 23, JZ4740_DMA_TYPE_SPI_RECEIVE = 23,
JZ4740_DMA_TYPE_AIC_TRANSMIT = 24,
JZ4740_DMA_TYPE_AIC_RECEIVE = 25,
JZ4740_DMA_TYPE_MMC_TRANSMIT = 26, JZ4740_DMA_TYPE_MMC_TRANSMIT = 26,
JZ4740_DMA_TYPE_MMC_RECEIVE = 27, JZ4740_DMA_TYPE_MMC_RECEIVE = 27,
JZ4740_DMA_TYPE_TCU = 28, JZ4740_DMA_TYPE_TCU = 28,

View File

@ -1,24 +1,29 @@
config SND_JZ4740_SOC config SND_JZ4740_SOC
tristate "SoC Audio for Ingenic JZ4740 SoC" tristate "SoC Audio for Ingenic JZ4740 SoC"
depends on MACH_JZ4740 && SND_SOC depends on MACH_JZ4740 || COMPILE_TEST
select SND_SOC_GENERIC_DMAENGINE_PCM select SND_SOC_GENERIC_DMAENGINE_PCM
help help
Say Y or M if you want to add support for codecs attached to Say Y or M if you want to add support for codecs attached to
the JZ4740 I2S interface. You will also need to select the audio the JZ4740 I2S interface. You will also need to select the audio
interfaces to support below. interfaces to support below.
if SND_JZ4740_SOC
config SND_JZ4740_SOC_I2S config SND_JZ4740_SOC_I2S
depends on SND_JZ4740_SOC
tristate "SoC Audio (I2S protocol) for Ingenic JZ4740 SoC" tristate "SoC Audio (I2S protocol) for Ingenic JZ4740 SoC"
depends on HAS_IOMEM
help help
Say Y if you want to use I2S protocol and I2S codec on Ingenic JZ4740 Say Y if you want to use I2S protocol and I2S codec on Ingenic JZ4740
based boards. based boards.
config SND_JZ4740_SOC_QI_LB60 config SND_JZ4740_SOC_QI_LB60
tristate "SoC Audio support for Qi LB60" tristate "SoC Audio support for Qi LB60"
depends on SND_JZ4740_SOC && JZ4740_QI_LB60 depends on HAS_IOMEM
depends on JZ4740_QI_LB60 || COMPILE_TEST
select SND_JZ4740_SOC_I2S select SND_JZ4740_SOC_I2S
select SND_SOC_JZ4740_CODEC select SND_SOC_JZ4740_CODEC
help help
Say Y if you want to add support for ASoC audio on the Qi LB60 board Say Y if you want to add support for ASoC audio on the Qi LB60 board
a.k.a Qi Ben NanoNote. a.k.a Qi Ben NanoNote.
endif

View File

@ -31,10 +31,11 @@
#include <sound/initval.h> #include <sound/initval.h>
#include <sound/dmaengine_pcm.h> #include <sound/dmaengine_pcm.h>
#include <asm/mach-jz4740/dma.h>
#include "jz4740-i2s.h" #include "jz4740-i2s.h"
#define JZ4740_DMA_TYPE_AIC_TRANSMIT 24
#define JZ4740_DMA_TYPE_AIC_RECEIVE 25
#define JZ_REG_AIC_CONF 0x00 #define JZ_REG_AIC_CONF 0x00
#define JZ_REG_AIC_CTRL 0x04 #define JZ_REG_AIC_CTRL 0x04
#define JZ_REG_AIC_I2S_FMT 0x10 #define JZ_REG_AIC_I2S_FMT 0x10