diff options
author | Jassi Brar <jassi.brar@samsung.com> | 2010-04-27 02:56:56 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-05-05 10:14:21 -0400 |
commit | 9e991a4bf3290b0787d33fa72144f6eec656f20d (patch) | |
tree | 3fb5b1ec92feaf8764d5c6b40dacacbf80e28bec /sound/soc/s3c24xx | |
parent | d47ef9c79dd46c1b33696f01b6cf744b77150379 (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/s3c24xx')
-rw-r--r-- | sound/soc/s3c24xx/s3c-i2s-v2.h | 8 |
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 | ||