[6/9,V2] EXYNOS: Add pinmux for I2S

Message ID 1345617865-14199-7-git-send-email-rajeshwari.s@samsung.com
State New
Headers show

Commit Message

Rajeshwari Shinde Aug. 22, 2012, 6:44 a.m.
This patch adds pinmux support for I2S1

Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
---
Changes in V2:
- made exynos_i2s_config pinmux function static.
 arch/arm/cpu/armv7/exynos/pinmux.c        |   12 ++++++++++++
 arch/arm/include/asm/arch-exynos/periph.h |    1 +
 2 files changed, 13 insertions(+), 0 deletions(-)

Comments

Simon Glass Oct. 19, 2012, 8:15 p.m. | #1
Hi Rajeshwari,

On Tue, Aug 21, 2012 at 11:44 PM, Rajeshwari Shinde
<rajeshwari.s@samsung.com> wrote:
> This patch adds pinmux support for I2S1
>
> Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>

Acked-by: Simon Glass <sjg@chromium.org>

> ---
> Changes in V2:
> - made exynos_i2s_config pinmux function static.
>  arch/arm/cpu/armv7/exynos/pinmux.c        |   12 ++++++++++++
>  arch/arm/include/asm/arch-exynos/periph.h |    1 +
>  2 files changed, 13 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c
> index 13f75e0..ed82bc3 100644
> --- a/arch/arm/cpu/armv7/exynos/pinmux.c
> +++ b/arch/arm/cpu/armv7/exynos/pinmux.c
> @@ -273,6 +273,15 @@ void exynos5_spi_config(int peripheral)
>         }
>  }
>
> +static void exynos5_i2s_config(int peripheral)
> +{
> +       int i;
> +       struct exynos5_gpio_part1 *gpio1 =
> +               (struct exynos5_gpio_part1 *) samsung_get_base_gpio_part1();

blank line after

> +       for (i = 0; i < 5; i++)
> +               s5p_gpio_cfg_pin(&gpio1->b0, i, GPIO_FUNC(0x02));
> +}
> +
>  static int exynos5_pinmux_config(int peripheral, int flags)
>  {
>         switch (peripheral) {
> @@ -307,6 +316,9 @@ static int exynos5_pinmux_config(int peripheral, int flags)
>         case PERIPH_ID_SPI4:
>                 exynos5_spi_config(peripheral);
>                 break;
> +       case PERIPH_ID_I2S1:
> +               exynos5_i2s_config(peripheral);
> +               break;
>         default:
>                 debug("%s: invalid peripheral %d", __func__, peripheral);
>                 return -1;
> diff --git a/arch/arm/include/asm/arch-exynos/periph.h b/arch/arm/include/asm/arch-exynos/periph.h
> index dafc3f3..404e5db 100644
> --- a/arch/arm/include/asm/arch-exynos/periph.h
> +++ b/arch/arm/include/asm/arch-exynos/periph.h
> @@ -38,6 +38,7 @@ enum periph_id {
>         PERIPH_ID_I2C5,
>         PERIPH_ID_I2C6,
>         PERIPH_ID_I2C7,
> +       PERIPH_ID_I2S1,
>         PERIPH_ID_SDMMC0,
>         PERIPH_ID_SDMMC1,
>         PERIPH_ID_SDMMC2,
> --
> 1.7.4.4
>

Regards,
Simon

Patch

diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c
index 13f75e0..ed82bc3 100644
--- a/arch/arm/cpu/armv7/exynos/pinmux.c
+++ b/arch/arm/cpu/armv7/exynos/pinmux.c
@@ -273,6 +273,15 @@  void exynos5_spi_config(int peripheral)
 	}
 }
 
+static void exynos5_i2s_config(int peripheral)
+{
+	int i;
+	struct exynos5_gpio_part1 *gpio1 =
+		(struct exynos5_gpio_part1 *) samsung_get_base_gpio_part1();
+	for (i = 0; i < 5; i++)
+		s5p_gpio_cfg_pin(&gpio1->b0, i, GPIO_FUNC(0x02));
+}
+
 static int exynos5_pinmux_config(int peripheral, int flags)
 {
 	switch (peripheral) {
@@ -307,6 +316,9 @@  static int exynos5_pinmux_config(int peripheral, int flags)
 	case PERIPH_ID_SPI4:
 		exynos5_spi_config(peripheral);
 		break;
+	case PERIPH_ID_I2S1:
+		exynos5_i2s_config(peripheral);
+		break;
 	default:
 		debug("%s: invalid peripheral %d", __func__, peripheral);
 		return -1;
diff --git a/arch/arm/include/asm/arch-exynos/periph.h b/arch/arm/include/asm/arch-exynos/periph.h
index dafc3f3..404e5db 100644
--- a/arch/arm/include/asm/arch-exynos/periph.h
+++ b/arch/arm/include/asm/arch-exynos/periph.h
@@ -38,6 +38,7 @@  enum periph_id {
 	PERIPH_ID_I2C5,
 	PERIPH_ID_I2C6,
 	PERIPH_ID_I2C7,
+	PERIPH_ID_I2S1,
 	PERIPH_ID_SDMMC0,
 	PERIPH_ID_SDMMC1,
 	PERIPH_ID_SDMMC2,