All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <4BFDCE81.6050802@eukrea.com>

diff --git a/a/1.txt b/N1/1.txt
index f8b63f2..809f299 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,6 +1,6 @@
 Hi Mark,
 
-Le 27/05/2010 02:57, Mark Brown a écrit :
+Le 27/05/2010 02:57, Mark Brown a ?crit :
 > On Wed, May 26, 2010 at 06:37:53PM +0200, Eric B??nard wrote:
 >> * without this fix, the waveform on the SSI port are not real
 >> I2S signal (at least on i.MX27's SSI4)
diff --git a/a/2.hdr b/a/2.hdr
deleted file mode 100644
index a7c0553..0000000
--- a/a/2.hdr
+++ /dev/null
@@ -1,5 +0,0 @@
-Content-Type: text/x-patch;
- name="0002-soc-imx-add-eukrea-tlv320.patch"
-Content-Disposition: attachment;
- filename="0002-soc-imx-add-eukrea-tlv320.patch"
-Content-Transfer-Encoding: quoted-printable
diff --git a/a/2.txt b/a/2.txt
deleted file mode 100644
index 9884b92..0000000
--- a/a/2.txt
+++ /dev/null
@@ -1,184 +0,0 @@
->From abf32c7690420cf313989c1adbf4ea03c3cf6250 Mon Sep 17 00:00:00 2001
-From: =?utf-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
-Date: Wed, 26 May 2010 21:16:54 +0200
-Subject: [PATCH 2/4] soc/imx: add eukrea-tlv320
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 8bit
-
-Add the necessary files to support the TLV320AIC23B wired in I2S
-on our i.MX platforms.
-
-Signed-off-by: Eric Bénard <eric@eukrea.com>
----
- sound/soc/imx/Kconfig         |    8 +++
- sound/soc/imx/Makefile        |    2 +
- sound/soc/imx/eukrea-tlv320.c |  131 +++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 141 insertions(+), 0 deletions(-)
- create mode 100644 sound/soc/imx/eukrea-tlv320.c
-
-diff --git a/sound/soc/imx/Kconfig b/sound/soc/imx/Kconfig
-index 7174b4c..3e27b16 100644
---- a/sound/soc/imx/Kconfig
-+++ b/sound/soc/imx/Kconfig
-@@ -11,3 +11,11 @@ config SND_IMX_SOC
- config SND_MXC_SOC_SSI
- 	tristate
- 
-+config SND_SOC_EUKREA_TLV320
-+	bool "Eukrea TLV320"
-+	depends on MACH_EUKREA_MBIMX27_BASEBOARD
-+	select SND_IMX_SOC
-+	select SND_SOC_TLV320AIC23
-+	help
-+	  Enable I2S based access to the TLV320AIC23B codec attached
-+	  to the SSI4 interface
-diff --git a/sound/soc/imx/Makefile b/sound/soc/imx/Makefile
-index 9f8bb92..28d4b1e 100644
---- a/sound/soc/imx/Makefile
-+++ b/sound/soc/imx/Makefile
-@@ -10,3 +10,5 @@ obj-$(CONFIG_SND_IMX_SOC) += snd-soc-imx.o
- # i.MX Machine Support
- snd-soc-phycore-ac97-objs := phycore-ac97.o
- obj-$(CONFIG_SND_SOC_PHYCORE_AC97) += snd-soc-phycore-ac97.o
-+snd-soc-eukrea-tlv320-objs := eukrea-tlv320.o
-+obj-$(CONFIG_SND_SOC_EUKREA_TLV320) += snd-soc-eukrea-tlv320.o
-diff --git a/sound/soc/imx/eukrea-tlv320.c b/sound/soc/imx/eukrea-tlv320.c
-new file mode 100644
-index 0000000..e368787
---- /dev/null
-+++ b/sound/soc/imx/eukrea-tlv320.c
-@@ -0,0 +1,131 @@
-+/*
-+ * eukrea-tlv320.c  --  SoC audio for eukrea_cpuimxXX in I2S mode
-+ *
-+ * Copyright 2010 Eric Bénard, Eukréa Electromatique <eric@eukrea.com>
-+ *
-+ * based on sound/soc/s3c24xx/s3c24xx_simtec_tlv320aic23.c
-+ * which is Copyright 2009 Simtec Electronics
-+ * and on sound/soc/imx/phycore-ac97.c which is
-+ * Copyright 2009 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de>
-+ *
-+ *  This program is free software; you can redistribute  it and/or modify it
-+ *  under  the terms of  the GNU General  Public License as published by the
-+ *  Free Software Foundation;  either version 2 of the  License, or (at your
-+ *  option) any later version.
-+ *
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/moduleparam.h>
-+#include <linux/device.h>
-+#include <linux/i2c.h>
-+#include <sound/core.h>
-+#include <sound/pcm.h>
-+#include <sound/soc.h>
-+#include <sound/soc-dapm.h>
-+#include <asm/mach-types.h>
-+
-+#include "../codecs/tlv320aic23.h"
-+#include "imx-ssi.h"
-+
-+#define CODEC_CLOCK 12000000
-+
-+static int eukrea_tlv320_hw_params(struct snd_pcm_substream *substream,
-+			    struct snd_pcm_hw_params *params)
-+{
-+	struct snd_soc_pcm_runtime *rtd = substream->private_data;
-+	struct snd_soc_dai *codec_dai = rtd->dai->codec_dai;
-+	struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai;
-+	int ret;
-+
-+	/* Set the CODEC as the bus clock master, I2S */
-+	ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S |
-+				  SND_SOC_DAIFMT_NB_NF |
-+				  SND_SOC_DAIFMT_CBM_CFM);
-+	if (ret) {
-+		pr_err("%s: failed set cpu dai format\n", __func__);
-+		return ret;
-+	}
-+
-+	/* Set the CODEC as the bus clock master */
-+	ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S |
-+				  SND_SOC_DAIFMT_NB_NF |
-+				  SND_SOC_DAIFMT_CBM_CFM);
-+	if (ret) {
-+		pr_err("%s: failed set codec dai format\n", __func__);
-+		return ret;
-+	}
-+
-+	/* Set the codec system clock for DAC and ADC */
-+	ret = snd_soc_dai_set_sysclk(codec_dai, 0,
-+				     CODEC_CLOCK, SND_SOC_CLOCK_IN);
-+	if (ret) {
-+		pr_err("%s: failed setting codec sysclk\n", __func__);
-+		return ret;
-+	}
-+
-+	return 0;
-+}
-+
-+static struct snd_soc_ops eukrea_tlv320_snd_ops = {
-+	.hw_params	= eukrea_tlv320_hw_params,
-+};
-+
-+static struct snd_soc_dai_link eukrea_tlv320_dai = {
-+	.name		= "tlv320aic23",
-+	.stream_name	= "TLV320AIC23",
-+	.codec_dai	= &tlv320aic23_dai,
-+	.ops		= &eukrea_tlv320_snd_ops,
-+};
-+
-+static struct snd_soc_card eukrea_tlv320 = {
-+	.name		= "cpuimx-audio",
-+	.platform	= &imx_soc_platform,
-+	.dai_link	= &eukrea_tlv320_dai,
-+	.num_links	= 1,
-+};
-+
-+static struct snd_soc_device eukrea_tlv320_snd_devdata = {
-+	.card		= &eukrea_tlv320,
-+	.codec_dev	= &soc_codec_dev_tlv320aic23,
-+};
-+
-+static struct platform_device *eukrea_tlv320_snd_device;
-+
-+static int __init eukrea_tlv320_init(void)
-+{
-+	int ret;
-+
-+	if (!machine_is_eukrea_cpuimx27())
-+		/* return happy. We might run on a totally different machine */
-+		return 0;
-+
-+	eukrea_tlv320_snd_device = platform_device_alloc("soc-audio", -1);
-+	if (!eukrea_tlv320_snd_device)
-+		return -ENOMEM;
-+
-+	eukrea_tlv320_dai.cpu_dai = &imx_ssi_pcm_dai[0];
-+
-+	platform_set_drvdata(eukrea_tlv320_snd_device, &eukrea_tlv320_snd_devdata);
-+	eukrea_tlv320_snd_devdata.dev = &eukrea_tlv320_snd_device->dev;
-+	ret = platform_device_add(eukrea_tlv320_snd_device);
-+
-+	if (ret) {
-+		printk(KERN_ERR "ASoC: Platform device allocation failed\n");
-+		platform_device_put(eukrea_tlv320_snd_device);
-+	}
-+
-+	return ret;
-+}
-+
-+static void __exit eukrea_tlv320_exit(void)
-+{
-+	platform_device_unregister(eukrea_tlv320_snd_device);
-+}
-+
-+module_init(eukrea_tlv320_init);
-+module_exit(eukrea_tlv320_exit);
-+
-+MODULE_AUTHOR("Eric Bénard <eric@eukrea.com>");
-+MODULE_DESCRIPTION("CPUIMX ALSA SoC driver");
-+MODULE_LICENSE("GPL");
--- 
-1.6.3.3
diff --git a/a/3.hdr b/a/3.hdr
deleted file mode 100644
index bc4f182..0000000
--- a/a/3.hdr
+++ /dev/null
@@ -1,5 +0,0 @@
-Content-Type: text/x-patch;
- name="0003-eukrea_mbimx27-add-audio-codec.patch"
-Content-Disposition: attachment;
- filename="0003-eukrea_mbimx27-add-audio-codec.patch"
-Content-Transfer-Encoding: quoted-printable
diff --git a/a/3.txt b/a/3.txt
deleted file mode 100644
index 5ea4d76..0000000
--- a/a/3.txt
+++ /dev/null
@@ -1,110 +0,0 @@
->From 24c2e0f732a2d95db2d5776539824632e0b08572 Mon Sep 17 00:00:00 2001
-From: =?utf-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
-Date: Wed, 26 May 2010 21:18:35 +0200
-Subject: [PATCH 3/4] eukrea_mbimx27: add audio codec
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Eric Bénard <eric@eukrea.com>
----
- arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c |   44 +++++++++++++++++++++++++-
- 1 files changed, 43 insertions(+), 1 deletions(-)
-
-diff --git a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
-index 34bdc26..471dbd2 100644
---- a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
-+++ b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (C) 2009 Eric Benard - eric@eukrea.com
-+ * Copyright (C) 2009-2010 Eric Benard - eric@eukrea.com
-  *
-  * Based on pcm970-baseboard.c which is :
-  * Copyright (C) 2008 Juergen Beisert (kernel@pengutronix.de)
-@@ -37,6 +37,8 @@
- #include <mach/mmc.h>
- #include <mach/imx-uart.h>
- #include <mach/spi.h>
-+#include <mach/ssi.h>
-+#include <mach/audmux.h>
- 
- #include "devices.h"
- 
-@@ -93,6 +95,13 @@ static int eukrea_mbimx27_pins[] = {
- 	PD29_PF_CSPI1_SCLK,
- 	PD30_PF_CSPI1_MISO,
- 	PD31_PF_CSPI1_MOSI,
-+	/* SSI4 */
-+#if defined(CONFIG_SND_SOC_EUKREA_TLV320)
-+	PC16_PF_SSI4_FS,
-+	PC17_PF_SSI4_RXD | GPIO_PUEN,
-+	PC18_PF_SSI4_TXD | GPIO_PUEN,
-+	PC19_PF_SSI4_CLK,
-+#endif
- };
- 
- static const uint32_t eukrea_mbimx27_keymap[] = {
-@@ -287,6 +296,12 @@ static struct spi_board_info eukrea_mbimx27_spi_board_info[] __initdata = {
- 	},
- };
- 
-+static struct i2c_board_info eukrea_mbimx27_i2c_devices[] = {
-+	{
-+		I2C_BOARD_INFO("tlv320aic23", 0x1a),
-+	},
-+};
-+
- static int eukrea_mbimx27_spi_cs[] = {GPIO_PORTD | 28};
- 
- static struct spi_imx_master eukrea_mbimx27_spi_0_data = {
-@@ -303,6 +318,10 @@ static struct imxmmc_platform_data sdhc_pdata = {
- 	.dat3_card_detect = 1,
- };
- 
-+struct imx_ssi_platform_data eukrea_mbimx27_ssi_pdata = {
-+	.flags = IMX_SSI_DMA,
-+};
-+
- /*
-  * system init for baseboard usage. Will be called by cpuimx27 init.
-  *
-@@ -314,6 +333,24 @@ void __init eukrea_mbimx27_baseboard_init(void)
- 	mxc_gpio_setup_multiple_pins(eukrea_mbimx27_pins,
- 		ARRAY_SIZE(eukrea_mbimx27_pins), "MBIMX27");
- 
-+#if defined(CONFIG_SND_SOC_EUKREA_TLV320)
-+	/* SSI unit master I2S codec connected to SSI_PINS_4*/
-+	mxc_audmux_v1_configure_port(MX27_AUDMUX_HPCR1_SSI0,
-+			MXC_AUDMUX_V1_PCR_SYN |
-+			MXC_AUDMUX_V1_PCR_TFSDIR |
-+			MXC_AUDMUX_V1_PCR_TCLKDIR |
-+			MXC_AUDMUX_V1_PCR_RFSDIR |
-+			MXC_AUDMUX_V1_PCR_RCLKDIR |
-+			MXC_AUDMUX_V1_PCR_TFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
-+			MXC_AUDMUX_V1_PCR_RFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
-+			MXC_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4)
-+	);
-+	mxc_audmux_v1_configure_port(MX27_AUDMUX_HPCR3_SSI_PINS_4,
-+			MXC_AUDMUX_V1_PCR_SYN |
-+			MXC_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR1_SSI0)
-+	);
-+#endif
-+
- 	mxc_register_device(&mxc_uart_device1, &uart_pdata[0]);
- 	mxc_register_device(&mxc_uart_device2, &uart_pdata[1]);
- #if !defined(MACH_EUKREA_CPUIMX27_USEUART4)
-@@ -323,6 +360,11 @@ void __init eukrea_mbimx27_baseboard_init(void)
- 	mxc_register_device(&mxc_fb_device, &eukrea_mbimx27_fb_data);
- 	mxc_register_device(&mxc_sdhc_device0, &sdhc_pdata);
- 
-+	i2c_register_board_info(0, eukrea_mbimx27_i2c_devices,
-+				ARRAY_SIZE(eukrea_mbimx27_i2c_devices));
-+
-+	mxc_register_device(&imx_ssi_device0, &eukrea_mbimx27_ssi_pdata);
-+
- #if defined(CONFIG_TOUCHSCREEN_ADS7846) \
- 	|| defined(CONFIG_TOUCHSCREEN_ADS7846_MODULE)
- 	/* ADS7846 Touchscreen controller init */
--- 
-1.6.3.3
diff --git a/a/4.hdr b/a/4.hdr
deleted file mode 100644
index 4b86001..0000000
--- a/a/4.hdr
+++ /dev/null
@@ -1,4 +0,0 @@
-Content-Type: text/plain; charset="us-ascii"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Content-Disposition: inline
diff --git a/a/4.txt b/a/4.txt
deleted file mode 100644
index 1b730e0..0000000
--- a/a/4.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-_______________________________________________
-Alsa-devel mailing list
-Alsa-devel@alsa-project.org
-http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
diff --git a/a/content_digest b/N1/content_digest
index b8537df..6b357d0 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,17 +1,14 @@
  "ref\01274891873-3704-1-git-send-email-eric@eukrea.com\0"
  "ref\020100527005756.GD22091@sirena.org.uk\0"
- "From\0Eric B\303\251nard <eric@eukrea.com>\0"
- "Subject\0Re: [PATCH] imx-ssi.c: fix I2S slave setup\0"
+ "From\0eric@eukrea.com (Eric B\303\251nard)\0"
+ "Subject\0[alsa-devel] [PATCH] imx-ssi.c: fix I2S slave setup\0"
  "Date\0Thu, 27 May 2010 03:44:33 +0200\0"
- "To\0Mark Brown <broonie@opensource.wolfsonmicro.com>\0"
- "Cc\0s.hauer@pengutronix.de"
-  alsa-devel@alsa-project.org
- " linux-arm-kernel@lists.infradead.org\0"
- "\01:1\0"
+ "To\0linux-arm-kernel@lists.infradead.org\0"
+ "\00:1\0"
  "b\0"
  "Hi Mark,\n"
  "\n"
- "Le 27/05/2010 02:57, Mark Brown a \303\251crit :\n"
+ "Le 27/05/2010 02:57, Mark Brown a ?crit :\n"
  "> On Wed, May 26, 2010 at 06:37:53PM +0200, Eric B??nard wrote:\n"
  ">> * without this fix, the waveform on the SSI port are not real\n"
  ">> I2S signal (at least on i.MX27's SSI4)\n"
@@ -31,311 +28,5 @@
  "i.MX27 board because the bug may be there :-)\n"
  "\n"
  Eric
- "\01:2\0"
- "fn\00002-soc-imx-add-eukrea-tlv320.patch\0"
- "b\0"
- ">From abf32c7690420cf313989c1adbf4ea03c3cf6250 Mon Sep 17 00:00:00 2001\n"
- "From: =?utf-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>\n"
- "Date: Wed, 26 May 2010 21:16:54 +0200\n"
- "Subject: [PATCH 2/4] soc/imx: add eukrea-tlv320\n"
- "MIME-Version: 1.0\n"
- "Content-Type: text/plain; charset=utf-8\n"
- "Content-Transfer-Encoding: 8bit\n"
- "\n"
- "Add the necessary files to support the TLV320AIC23B wired in I2S\n"
- "on our i.MX platforms.\n"
- "\n"
- "Signed-off-by: Eric B\303\251nard <eric@eukrea.com>\n"
- "---\n"
- " sound/soc/imx/Kconfig         |    8 +++\n"
- " sound/soc/imx/Makefile        |    2 +\n"
- " sound/soc/imx/eukrea-tlv320.c |  131 +++++++++++++++++++++++++++++++++++++++++\n"
- " 3 files changed, 141 insertions(+), 0 deletions(-)\n"
- " create mode 100644 sound/soc/imx/eukrea-tlv320.c\n"
- "\n"
- "diff --git a/sound/soc/imx/Kconfig b/sound/soc/imx/Kconfig\n"
- "index 7174b4c..3e27b16 100644\n"
- "--- a/sound/soc/imx/Kconfig\n"
- "+++ b/sound/soc/imx/Kconfig\n"
- "@@ -11,3 +11,11 @@ config SND_IMX_SOC\n"
- " config SND_MXC_SOC_SSI\n"
- " \ttristate\n"
- " \n"
- "+config SND_SOC_EUKREA_TLV320\n"
- "+\tbool \"Eukrea TLV320\"\n"
- "+\tdepends on MACH_EUKREA_MBIMX27_BASEBOARD\n"
- "+\tselect SND_IMX_SOC\n"
- "+\tselect SND_SOC_TLV320AIC23\n"
- "+\thelp\n"
- "+\t  Enable I2S based access to the TLV320AIC23B codec attached\n"
- "+\t  to the SSI4 interface\n"
- "diff --git a/sound/soc/imx/Makefile b/sound/soc/imx/Makefile\n"
- "index 9f8bb92..28d4b1e 100644\n"
- "--- a/sound/soc/imx/Makefile\n"
- "+++ b/sound/soc/imx/Makefile\n"
- "@@ -10,3 +10,5 @@ obj-$(CONFIG_SND_IMX_SOC) += snd-soc-imx.o\n"
- " # i.MX Machine Support\n"
- " snd-soc-phycore-ac97-objs := phycore-ac97.o\n"
- " obj-$(CONFIG_SND_SOC_PHYCORE_AC97) += snd-soc-phycore-ac97.o\n"
- "+snd-soc-eukrea-tlv320-objs := eukrea-tlv320.o\n"
- "+obj-$(CONFIG_SND_SOC_EUKREA_TLV320) += snd-soc-eukrea-tlv320.o\n"
- "diff --git a/sound/soc/imx/eukrea-tlv320.c b/sound/soc/imx/eukrea-tlv320.c\n"
- "new file mode 100644\n"
- "index 0000000..e368787\n"
- "--- /dev/null\n"
- "+++ b/sound/soc/imx/eukrea-tlv320.c\n"
- "@@ -0,0 +1,131 @@\n"
- "+/*\n"
- "+ * eukrea-tlv320.c  --  SoC audio for eukrea_cpuimxXX in I2S mode\n"
- "+ *\n"
- "+ * Copyright 2010 Eric B\303\251nard, Eukr\303\251a Electromatique <eric@eukrea.com>\n"
- "+ *\n"
- "+ * based on sound/soc/s3c24xx/s3c24xx_simtec_tlv320aic23.c\n"
- "+ * which is Copyright 2009 Simtec Electronics\n"
- "+ * and on sound/soc/imx/phycore-ac97.c which is\n"
- "+ * Copyright 2009 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de>\n"
- "+ *\n"
- "+ *  This program is free software; you can redistribute  it and/or modify it\n"
- "+ *  under  the terms of  the GNU General  Public License as published by the\n"
- "+ *  Free Software Foundation;  either version 2 of the  License, or (at your\n"
- "+ *  option) any later version.\n"
- "+ *\n"
- "+ */\n"
- "+\n"
- "+#include <linux/module.h>\n"
- "+#include <linux/moduleparam.h>\n"
- "+#include <linux/device.h>\n"
- "+#include <linux/i2c.h>\n"
- "+#include <sound/core.h>\n"
- "+#include <sound/pcm.h>\n"
- "+#include <sound/soc.h>\n"
- "+#include <sound/soc-dapm.h>\n"
- "+#include <asm/mach-types.h>\n"
- "+\n"
- "+#include \"../codecs/tlv320aic23.h\"\n"
- "+#include \"imx-ssi.h\"\n"
- "+\n"
- "+#define CODEC_CLOCK 12000000\n"
- "+\n"
- "+static int eukrea_tlv320_hw_params(struct snd_pcm_substream *substream,\n"
- "+\t\t\t    struct snd_pcm_hw_params *params)\n"
- "+{\n"
- "+\tstruct snd_soc_pcm_runtime *rtd = substream->private_data;\n"
- "+\tstruct snd_soc_dai *codec_dai = rtd->dai->codec_dai;\n"
- "+\tstruct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai;\n"
- "+\tint ret;\n"
- "+\n"
- "+\t/* Set the CODEC as the bus clock master, I2S */\n"
- "+\tret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S |\n"
- "+\t\t\t\t  SND_SOC_DAIFMT_NB_NF |\n"
- "+\t\t\t\t  SND_SOC_DAIFMT_CBM_CFM);\n"
- "+\tif (ret) {\n"
- "+\t\tpr_err(\"%s: failed set cpu dai format\\n\", __func__);\n"
- "+\t\treturn ret;\n"
- "+\t}\n"
- "+\n"
- "+\t/* Set the CODEC as the bus clock master */\n"
- "+\tret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S |\n"
- "+\t\t\t\t  SND_SOC_DAIFMT_NB_NF |\n"
- "+\t\t\t\t  SND_SOC_DAIFMT_CBM_CFM);\n"
- "+\tif (ret) {\n"
- "+\t\tpr_err(\"%s: failed set codec dai format\\n\", __func__);\n"
- "+\t\treturn ret;\n"
- "+\t}\n"
- "+\n"
- "+\t/* Set the codec system clock for DAC and ADC */\n"
- "+\tret = snd_soc_dai_set_sysclk(codec_dai, 0,\n"
- "+\t\t\t\t     CODEC_CLOCK, SND_SOC_CLOCK_IN);\n"
- "+\tif (ret) {\n"
- "+\t\tpr_err(\"%s: failed setting codec sysclk\\n\", __func__);\n"
- "+\t\treturn ret;\n"
- "+\t}\n"
- "+\n"
- "+\treturn 0;\n"
- "+}\n"
- "+\n"
- "+static struct snd_soc_ops eukrea_tlv320_snd_ops = {\n"
- "+\t.hw_params\t= eukrea_tlv320_hw_params,\n"
- "+};\n"
- "+\n"
- "+static struct snd_soc_dai_link eukrea_tlv320_dai = {\n"
- "+\t.name\t\t= \"tlv320aic23\",\n"
- "+\t.stream_name\t= \"TLV320AIC23\",\n"
- "+\t.codec_dai\t= &tlv320aic23_dai,\n"
- "+\t.ops\t\t= &eukrea_tlv320_snd_ops,\n"
- "+};\n"
- "+\n"
- "+static struct snd_soc_card eukrea_tlv320 = {\n"
- "+\t.name\t\t= \"cpuimx-audio\",\n"
- "+\t.platform\t= &imx_soc_platform,\n"
- "+\t.dai_link\t= &eukrea_tlv320_dai,\n"
- "+\t.num_links\t= 1,\n"
- "+};\n"
- "+\n"
- "+static struct snd_soc_device eukrea_tlv320_snd_devdata = {\n"
- "+\t.card\t\t= &eukrea_tlv320,\n"
- "+\t.codec_dev\t= &soc_codec_dev_tlv320aic23,\n"
- "+};\n"
- "+\n"
- "+static struct platform_device *eukrea_tlv320_snd_device;\n"
- "+\n"
- "+static int __init eukrea_tlv320_init(void)\n"
- "+{\n"
- "+\tint ret;\n"
- "+\n"
- "+\tif (!machine_is_eukrea_cpuimx27())\n"
- "+\t\t/* return happy. We might run on a totally different machine */\n"
- "+\t\treturn 0;\n"
- "+\n"
- "+\teukrea_tlv320_snd_device = platform_device_alloc(\"soc-audio\", -1);\n"
- "+\tif (!eukrea_tlv320_snd_device)\n"
- "+\t\treturn -ENOMEM;\n"
- "+\n"
- "+\teukrea_tlv320_dai.cpu_dai = &imx_ssi_pcm_dai[0];\n"
- "+\n"
- "+\tplatform_set_drvdata(eukrea_tlv320_snd_device, &eukrea_tlv320_snd_devdata);\n"
- "+\teukrea_tlv320_snd_devdata.dev = &eukrea_tlv320_snd_device->dev;\n"
- "+\tret = platform_device_add(eukrea_tlv320_snd_device);\n"
- "+\n"
- "+\tif (ret) {\n"
- "+\t\tprintk(KERN_ERR \"ASoC: Platform device allocation failed\\n\");\n"
- "+\t\tplatform_device_put(eukrea_tlv320_snd_device);\n"
- "+\t}\n"
- "+\n"
- "+\treturn ret;\n"
- "+}\n"
- "+\n"
- "+static void __exit eukrea_tlv320_exit(void)\n"
- "+{\n"
- "+\tplatform_device_unregister(eukrea_tlv320_snd_device);\n"
- "+}\n"
- "+\n"
- "+module_init(eukrea_tlv320_init);\n"
- "+module_exit(eukrea_tlv320_exit);\n"
- "+\n"
- "+MODULE_AUTHOR(\"Eric B\303\251nard <eric@eukrea.com>\");\n"
- "+MODULE_DESCRIPTION(\"CPUIMX ALSA SoC driver\");\n"
- "+MODULE_LICENSE(\"GPL\");\n"
- "-- \n"
- 1.6.3.3
- "\01:3\0"
- "fn\00003-eukrea_mbimx27-add-audio-codec.patch\0"
- "b\0"
- ">From 24c2e0f732a2d95db2d5776539824632e0b08572 Mon Sep 17 00:00:00 2001\n"
- "From: =?utf-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>\n"
- "Date: Wed, 26 May 2010 21:18:35 +0200\n"
- "Subject: [PATCH 3/4] eukrea_mbimx27: add audio codec\n"
- "MIME-Version: 1.0\n"
- "Content-Type: text/plain; charset=utf-8\n"
- "Content-Transfer-Encoding: 8bit\n"
- "\n"
- "Signed-off-by: Eric B\303\251nard <eric@eukrea.com>\n"
- "---\n"
- " arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c |   44 +++++++++++++++++++++++++-\n"
- " 1 files changed, 43 insertions(+), 1 deletions(-)\n"
- "\n"
- "diff --git a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c\n"
- "index 34bdc26..471dbd2 100644\n"
- "--- a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c\n"
- "+++ b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c\n"
- "@@ -1,5 +1,5 @@\n"
- " /*\n"
- "- * Copyright (C) 2009 Eric Benard - eric@eukrea.com\n"
- "+ * Copyright (C) 2009-2010 Eric Benard - eric@eukrea.com\n"
- "  *\n"
- "  * Based on pcm970-baseboard.c which is :\n"
- "  * Copyright (C) 2008 Juergen Beisert (kernel@pengutronix.de)\n"
- "@@ -37,6 +37,8 @@\n"
- " #include <mach/mmc.h>\n"
- " #include <mach/imx-uart.h>\n"
- " #include <mach/spi.h>\n"
- "+#include <mach/ssi.h>\n"
- "+#include <mach/audmux.h>\n"
- " \n"
- " #include \"devices.h\"\n"
- " \n"
- "@@ -93,6 +95,13 @@ static int eukrea_mbimx27_pins[] = {\n"
- " \tPD29_PF_CSPI1_SCLK,\n"
- " \tPD30_PF_CSPI1_MISO,\n"
- " \tPD31_PF_CSPI1_MOSI,\n"
- "+\t/* SSI4 */\n"
- "+#if defined(CONFIG_SND_SOC_EUKREA_TLV320)\n"
- "+\tPC16_PF_SSI4_FS,\n"
- "+\tPC17_PF_SSI4_RXD | GPIO_PUEN,\n"
- "+\tPC18_PF_SSI4_TXD | GPIO_PUEN,\n"
- "+\tPC19_PF_SSI4_CLK,\n"
- "+#endif\n"
- " };\n"
- " \n"
- " static const uint32_t eukrea_mbimx27_keymap[] = {\n"
- "@@ -287,6 +296,12 @@ static struct spi_board_info eukrea_mbimx27_spi_board_info[] __initdata = {\n"
- " \t},\n"
- " };\n"
- " \n"
- "+static struct i2c_board_info eukrea_mbimx27_i2c_devices[] = {\n"
- "+\t{\n"
- "+\t\tI2C_BOARD_INFO(\"tlv320aic23\", 0x1a),\n"
- "+\t},\n"
- "+};\n"
- "+\n"
- " static int eukrea_mbimx27_spi_cs[] = {GPIO_PORTD | 28};\n"
- " \n"
- " static struct spi_imx_master eukrea_mbimx27_spi_0_data = {\n"
- "@@ -303,6 +318,10 @@ static struct imxmmc_platform_data sdhc_pdata = {\n"
- " \t.dat3_card_detect = 1,\n"
- " };\n"
- " \n"
- "+struct imx_ssi_platform_data eukrea_mbimx27_ssi_pdata = {\n"
- "+\t.flags = IMX_SSI_DMA,\n"
- "+};\n"
- "+\n"
- " /*\n"
- "  * system init for baseboard usage. Will be called by cpuimx27 init.\n"
- "  *\n"
- "@@ -314,6 +333,24 @@ void __init eukrea_mbimx27_baseboard_init(void)\n"
- " \tmxc_gpio_setup_multiple_pins(eukrea_mbimx27_pins,\n"
- " \t\tARRAY_SIZE(eukrea_mbimx27_pins), \"MBIMX27\");\n"
- " \n"
- "+#if defined(CONFIG_SND_SOC_EUKREA_TLV320)\n"
- "+\t/* SSI unit master I2S codec connected to SSI_PINS_4*/\n"
- "+\tmxc_audmux_v1_configure_port(MX27_AUDMUX_HPCR1_SSI0,\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_SYN |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_TFSDIR |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_TCLKDIR |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_RFSDIR |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_RCLKDIR |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_TFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_RFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4)\n"
- "+\t);\n"
- "+\tmxc_audmux_v1_configure_port(MX27_AUDMUX_HPCR3_SSI_PINS_4,\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_SYN |\n"
- "+\t\t\tMXC_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR1_SSI0)\n"
- "+\t);\n"
- "+#endif\n"
- "+\n"
- " \tmxc_register_device(&mxc_uart_device1, &uart_pdata[0]);\n"
- " \tmxc_register_device(&mxc_uart_device2, &uart_pdata[1]);\n"
- " #if !defined(MACH_EUKREA_CPUIMX27_USEUART4)\n"
- "@@ -323,6 +360,11 @@ void __init eukrea_mbimx27_baseboard_init(void)\n"
- " \tmxc_register_device(&mxc_fb_device, &eukrea_mbimx27_fb_data);\n"
- " \tmxc_register_device(&mxc_sdhc_device0, &sdhc_pdata);\n"
- " \n"
- "+\ti2c_register_board_info(0, eukrea_mbimx27_i2c_devices,\n"
- "+\t\t\t\tARRAY_SIZE(eukrea_mbimx27_i2c_devices));\n"
- "+\n"
- "+\tmxc_register_device(&imx_ssi_device0, &eukrea_mbimx27_ssi_pdata);\n"
- "+\n"
- " #if defined(CONFIG_TOUCHSCREEN_ADS7846) \\\n"
- " \t|| defined(CONFIG_TOUCHSCREEN_ADS7846_MODULE)\n"
- " \t/* ADS7846 Touchscreen controller init */\n"
- "-- \n"
- 1.6.3.3
- "\01:4\0"
- "b\0"
- "_______________________________________________\n"
- "Alsa-devel mailing list\n"
- "Alsa-devel@alsa-project.org\n"
- http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
 
-e4ff1a7c3b59806689a5d869634f895cb6d6f61f75eeb5058bdbcdf00d632758
+c1d148dbb775260a32c31f7126eb9ef34470a7b7ef37e33cfd4e78c8cc4c1de1

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.