af56b1c27b
Add the CPU driver for the IISv4 block found on S3C6410. For now, the driver is almost a copy of s3c64xx-i2s.c but it should diverge as more IISv4 specific stuff is added. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
43 lines
1.3 KiB
C
43 lines
1.3 KiB
C
/* sound/soc/s3c24xx/s3c64xx-i2s.h
|
|
*
|
|
* ALSA SoC Audio Layer - S3C64XX I2S driver
|
|
*
|
|
* Copyright 2008 Openmoko, Inc.
|
|
* Copyright 2008 Simtec Electronics
|
|
* Ben Dooks <ben@simtec.co.uk>
|
|
* http://armlinux.simtec.co.uk/
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
#ifndef __SND_SOC_S3C24XX_S3C64XX_I2S_H
|
|
#define __SND_SOC_S3C24XX_S3C64XX_I2S_H __FILE__
|
|
|
|
struct clk;
|
|
|
|
#include "s3c-i2s-v2.h"
|
|
|
|
#define S3C64XX_DIV_BCLK S3C_I2SV2_DIV_BCLK
|
|
#define S3C64XX_DIV_RCLK S3C_I2SV2_DIV_RCLK
|
|
#define S3C64XX_DIV_PRESCALER S3C_I2SV2_DIV_PRESCALER
|
|
|
|
#define S3C64XX_CLKSRC_PCLK S3C_I2SV2_CLKSRC_PCLK
|
|
#define S3C64XX_CLKSRC_MUX S3C_I2SV2_CLKSRC_AUDIOBUS
|
|
#define S3C64XX_CLKSRC_CDCLK S3C_I2SV2_CLKSRC_CDCLK
|
|
|
|
#define S3C64XX_I2S_RATES \
|
|
(SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_16000 | \
|
|
SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \
|
|
SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000)
|
|
|
|
#define S3C64XX_I2S_FMTS \
|
|
(SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_S16_LE |\
|
|
SNDRV_PCM_FMTBIT_S24_LE)
|
|
|
|
extern struct snd_soc_dai s3c64xx_i2s_dai[];
|
|
extern struct snd_soc_dai s3c64xx_i2s_v4_dai;
|
|
|
|
#endif /* __SND_SOC_S3C24XX_S3C64XX_I2S_H */
|