aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorJassi Brar <jassi.brar@samsung.com>2010-04-27 02:56:56 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-05-05 10:14:21 -0400
commit9e991a4bf3290b0787d33fa72144f6eec656f20d (patch)
tree3fb5b1ec92feaf8764d5c6b40dacacbf80e28bec /sound/soc
parentd47ef9c79dd46c1b33696f01b6cf744b77150379 (diff)
ASoC: S3C: I2Sv2: New field for controller feature
In order to make s3c-i2s-v2.c manage controllers with minor quirks and variation in features, we define a per-block flag that indicates the availability/lack of a particular feature to the s3c-i2s-v2.c While adding support for new SoCs' I2S, check for the blocks of older SoCs that have similar feature and set the flag for that feature. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Acked-by: Ben Dooks <ben-linux@fluff.org> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/s3c24xx/s3c-i2s-v2.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/s3c24xx/s3c-i2s-v2.h b/sound/soc/s3c24xx/s3c-i2s-v2.h
index 39a6db6a565c..766f43a13d8b 100644
--- a/sound/soc/s3c24xx/s3c-i2s-v2.h
+++ b/sound/soc/s3c24xx/s3c-i2s-v2.h
@@ -29,10 +29,16 @@
29#define S3C_I2SV2_CLKSRC_AUDIOBUS 1 29#define S3C_I2SV2_CLKSRC_AUDIOBUS 1
30#define S3C_I2SV2_CLKSRC_CDCLK 2 30#define S3C_I2SV2_CLKSRC_CDCLK 2
31 31
32/* Set this flag for I2S controllers that have the bit IISMOD[12]
33 * bridge/break RCLK signal and external Xi2sCDCLK pin.
34 */
35#define S3C_FEATURE_CDCLKCON (1 << 0)
36
32/** 37/**
33 * struct s3c_i2sv2_info - S3C I2S-V2 information 38 * struct s3c_i2sv2_info - S3C I2S-V2 information
34 * @dev: The parent device passed to use from the probe. 39 * @dev: The parent device passed to use from the probe.
35 * @regs: The pointer to the device registe block. 40 * @regs: The pointer to the device registe block.
41 * @feature: Set of bit-flags indicating features of the controller.
36 * @master: True if the I2S core is the I2S bit clock master. 42 * @master: True if the I2S core is the I2S bit clock master.
37 * @dma_playback: DMA information for playback channel. 43 * @dma_playback: DMA information for playback channel.
38 * @dma_capture: DMA information for capture channel. 44 * @dma_capture: DMA information for capture channel.
@@ -47,6 +53,8 @@ struct s3c_i2sv2_info {
47 struct device *dev; 53 struct device *dev;
48 void __iomem *regs; 54 void __iomem *regs;
49 55
56 u32 feature;
57
50 struct clk *iis_pclk; 58 struct clk *iis_pclk;
51 struct clk *iis_cclk; 59 struct clk *iis_cclk;
52 60