Patchwork [V2,07/10] ARM: mxs: add sgtl5000 i2c device

login
register
mail settings
Submitter Dong Aisheng
Date July 13, 2011, 3:36 a.m.
Message ID <1310528167-25035-1-git-send-email-b29396@freescale.com>
Download mbox | patch
Permalink /patch/104467/
State New
Headers show

Comments

Dong Aisheng - July 13, 2011, 3:36 a.m.
Signed-off-by: Dong Aisheng <b29396@freescale.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-mxs/mach-mx28evk.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)
Wolfram Sang - July 13, 2011, 9:13 a.m.
On Wed, Jul 13, 2011 at 11:36:07AM +0800, Dong Aisheng wrote:
> Signed-off-by: Dong Aisheng <b29396@freescale.com>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  arch/arm/mach-mxs/mach-mx28evk.c |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+), 0 deletions(-)

Also needs in Kconfig:

+       select MXS_HAVE_PLATFORM_MXS_I2C
Wolfram Sang - July 13, 2011, 9:56 a.m.
On Wed, Jul 13, 2011 at 11:13:14AM +0200, Wolfram Sang wrote:
> On Wed, Jul 13, 2011 at 11:36:07AM +0800, Dong Aisheng wrote:
> > Signed-off-by: Dong Aisheng <b29396@freescale.com>
> > Cc: Sascha Hauer <s.hauer@pengutronix.de>
> > ---
> >  arch/arm/mach-mxs/mach-mx28evk.c |   16 ++++++++++++++++
> >  1 files changed, 16 insertions(+), 0 deletions(-)
> 
> Also needs in Kconfig:
> 
> +       select MXS_HAVE_PLATFORM_MXS_I2C

#include <linux/i2c.h> for i2c_register_board_info() might be good,
too...
Dong Aisheng - July 13, 2011, 11:09 a.m.
> -----Original Message-----
> From: Wolfram Sang [mailto:w.sang@pengutronix.de]
> Sent: Wednesday, July 13, 2011 5:56 PM
> To: Dong Aisheng-B29396
> Cc: alsa-devel@alsa-project.org; s.hauer@pengutronix.de;
> broonie@opensource.wolfsonmicro.com; u.kleine-koenig@pengutronix.de;
> lrg@ti.com; linux-arm-kernel@lists.infradead.org
> Subject: Re: [PATCH V2 07/10] ARM: mxs: add sgtl5000 i2c device
> 
> On Wed, Jul 13, 2011 at 11:13:14AM +0200, Wolfram Sang wrote:
> > On Wed, Jul 13, 2011 at 11:36:07AM +0800, Dong Aisheng wrote:
> > > Signed-off-by: Dong Aisheng <b29396@freescale.com>
> > > Cc: Sascha Hauer <s.hauer@pengutronix.de>
> > > ---
> > >  arch/arm/mach-mxs/mach-mx28evk.c |   16 ++++++++++++++++
> > >  1 files changed, 16 insertions(+), 0 deletions(-)
> >
> > Also needs in Kconfig:
> >
> > +       select MXS_HAVE_PLATFORM_MXS_I2C
> 
> #include <linux/i2c.h> for i2c_register_board_info() might be good, too...
Will add them all.
Thanks.

Regards
Dong Aisheng

Patch

diff --git a/arch/arm/mach-mxs/mach-mx28evk.c b/arch/arm/mach-mxs/mach-mx28evk.c
index 7837a87..c8b154a 100644
--- a/arch/arm/mach-mxs/mach-mx28evk.c
+++ b/arch/arm/mach-mxs/mach-mx28evk.c
@@ -186,6 +186,12 @@  static const iomux_cfg_t mx28evk_pads[] __initconst = {
 	/* led */
 	MX28_PAD_AUART1_TX__GPIO_3_5 | MXS_PAD_CTRL,
 
+	/* I2C */
+	MX28_PAD_I2C0_SCL__I2C0_SCL |
+		(MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+	MX28_PAD_I2C0_SDA__I2C0_SDA |
+		(MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+
 	/* saif0 & saif1 */
 	MX28_PAD_SAIF0_MCLK__SAIF0_MCLK |
 		(MXS_PAD_12MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
@@ -366,6 +372,12 @@  static struct mxs_mmc_platform_data mx28evk_mmc_pdata[] __initdata = {
 	},
 };
 
+static struct i2c_board_info mxs_i2c0_board_info[] __initdata = {
+	{
+		I2C_BOARD_INFO("sgtl5000", 0x0a),
+	},
+};
+
 static void __init mx28evk_init(void)
 {
 	int ret;
@@ -409,6 +421,10 @@  static void __init mx28evk_init(void)
 	mx28_add_saif(0);
 	mx28_add_saif(1);
 
+	mx28_add_mxs_i2c(0);
+	i2c_register_board_info(0, mxs_i2c0_board_info,
+				ARRAY_SIZE(mxs_i2c0_board_info));
+
 	/*set the saif clk mux, both saif0/saif1 use saif0 clk*/
 	__raw_writel(0x2 << 10, DIGCTRL_BASE_ADDR);