[6/9] EXYNOS: Add pinmux for I2S

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

Commit Message

Rajeshwari Shinde Aug. 14, 2012, 5:45 a.m.
This patch adds pinmux support for I2S1

Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
---
 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

Chander Kashyap Aug. 21, 2012, 9:56 a.m. | #1
hi,

On 14 August 2012 11:15, Rajeshwari Shinde <rajeshwari.s@samsung.com> wrote:
> This patch adds pinmux support for I2S1
>
> Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
> ---
>  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..ba25f6c 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)
>         }
>  }
>

> +void exynos5_i2s_config(int peripheral)
make it static.
> +{
> +       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,
> --
> 1.7.4.4
>
Rajeshwari Birje Aug. 22, 2012, 4:21 a.m. | #2
Hi Chander,

On Tue, Aug 21, 2012 at 3:26 PM, Chander Kashyap
<chander.kashyap@linaro.org> wrote:
> hi,
>
> On 14 August 2012 11:15, Rajeshwari Shinde <rajeshwari.s@samsung.com> wrote:
>> This patch adds pinmux support for I2S1
>>
>> Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
>> ---
>>  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..ba25f6c 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)
>>         }
>>  }
>>
>
>> +void exynos5_i2s_config(int peripheral)
> make it static.
- Ok
>> +{
>> +       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,
>> --
>> 1.7.4.4
>>
>
>
>
> --
> with warm regards,
> Chander Kashyap
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot

Regards,
Rajeshwari Shinde.

Patch

diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c b/arch/arm/cpu/armv7/exynos/pinmux.c
index 13f75e0..ba25f6c 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)
 	}
 }
 
+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,