From e5ca5f86b9cfe246fb19bb7173e198ca650e4e01 Mon Sep 17 00:00:00 2001 From: Peipeng Zhao Date: Thu, 20 Apr 2017 15:46:51 +0800 Subject: [PATCH] dts: fix spdif_in and i2c_c_1 dtsi error PD#138714: fix dts and pinctrl define error 1.fix i2c_c_1 dts and pinctrl define error 2.add spdif in dts and pinctrl funtion Change-Id: I78809a0f183a55e3a90a17cc326e37fd2c8b7983 Signed-off-by: Peipeng Zhao --- arch/arm64/boot/dts/amlogic/mesongxl.dtsi | 16 +++++++++++++++- arch/arm64/boot/dts/amlogic/mesongxm.dtsi | 16 +++++++++++++++- drivers/amlogic/pinctrl/pinctrl_gxl.c | 15 ++++++++++++--- 3 files changed, 42 insertions(+), 5 deletions(-) diff --git a/arch/arm64/boot/dts/amlogic/mesongxl.dtsi b/arch/arm64/boot/dts/amlogic/mesongxl.dtsi index c8ce204fd8d8..9739c5e68699 100644 --- a/arch/arm64/boot/dts/amlogic/mesongxl.dtsi +++ b/arch/arm64/boot/dts/amlogic/mesongxl.dtsi @@ -860,7 +860,7 @@ mux { groups = "i2c_sda_c_1", "i2c_scl_c_1"; - function = "i2c_c"; + function = "i2c_c_1"; }; }; @@ -927,6 +927,20 @@ }; }; + audio_spdif_in_pins:audio_spdif_in { + mux { + groups = "spdif_in"; + function = "spdif_in"; + }; + }; + + audio_spdif_in_1_pins:audio_spdif_in_1 { + mux { + groups = "spdif_in_1"; + function = "spdif_in_1"; + }; + }; + audio_pcm_pins:audio_pcm { mux { groups = "pcm_out_a", diff --git a/arch/arm64/boot/dts/amlogic/mesongxm.dtsi b/arch/arm64/boot/dts/amlogic/mesongxm.dtsi index f018b77b7cfa..8a31dc7c3700 100644 --- a/arch/arm64/boot/dts/amlogic/mesongxm.dtsi +++ b/arch/arm64/boot/dts/amlogic/mesongxm.dtsi @@ -950,7 +950,7 @@ mux { groups = "i2c_sda_c_1", "i2c_scl_c_1"; - function = "i2c_c"; + function = "i2c_c_1"; }; }; @@ -1017,6 +1017,20 @@ }; }; + audio_spdif_in_pins:audio_spdif_in { + mux { + groups = "spdif_in"; + function = "spdif_in"; + }; + }; + + audio_spdif_in_1_pins:audio_spdif_in_1 { + mux { + groups = "spdif_in_1"; + function = "spdif_in_1"; + }; + }; + audio_pcm_pins:audio_pcm { mux { groups = "pcm_out_a", diff --git a/drivers/amlogic/pinctrl/pinctrl_gxl.c b/drivers/amlogic/pinctrl/pinctrl_gxl.c index dd94333b1810..998c3e47e7a0 100644 --- a/drivers/amlogic/pinctrl/pinctrl_gxl.c +++ b/drivers/amlogic/pinctrl/pinctrl_gxl.c @@ -190,8 +190,8 @@ static const unsigned int hdmi_sda_pins[] = { PIN(GPIOH_1, EE_OFF) }; static const unsigned int hdmi_scl_pins[] = { PIN(GPIOH_2, EE_OFF) }; /*H4*/ -static const unsigned int spdif_out_pins[] = { PIN(GPIOH_4, EE_OFF), - /*PIN(GPIOAO_6, 0) */ }; +static const unsigned int spdif_out_pins[] = { PIN(GPIOH_4, EE_OFF) }; +static const unsigned int spdif_in_1_pins[] = { PIN(GPIOH_4, EE_OFF) }; /*H6*/ @@ -488,6 +488,7 @@ static struct meson_pmx_group meson_gxl_periphs_groups[] = { GROUP(hdmi_scl, 6, 29), /*H2*/ GROUP(spdif_out, 6, 28), /*H4*/ + GROUP(spdif_in_1, 6, 27), /*H4*/ GROUP(i2s_am_clk, 6, 26), /*H6*/ @@ -713,7 +714,6 @@ static struct meson_pmx_group meson_gxl_aobus_groups[] = { GROUP(uart_tx_ao_b_0, 0, 24), /*ao4*/ GROUP(uart_rx_ao_b_0, 0, 23), /*ao5*/ - GROUP(spdif_out, 6, 28), /*H4*/ GROUP(pwm_ao_b, 0, 18), /*ao6*/ GROUP(remote_input, 0, 0), /*ao7*/ @@ -809,7 +809,13 @@ static const char * const spdif_out_groups[] = { "spdif_out", }; +static const char * const spdif_in_groups[] = { + "spdif_in", +}; +static const char * const spdif_in_1_groups[] = { + "spdif_in_1", +}; static const char * const spi_groups[] = { "spi_sclk_0", "spi_miso_0", "spi_mosi_0", "spi_sclk_1", "spi_miso_1", "spi_mosi_1", @@ -878,11 +884,14 @@ static struct meson_pmx_func meson_gxl_periphs_functions[] = { FUNCTION(pwm_e), FUNCTION(pcm_a), FUNCTION(spdif_out), + FUNCTION(spdif_in), + FUNCTION(spdif_in_1), FUNCTION(i2s), FUNCTION(spi), FUNCTION(i2c_a), FUNCTION(i2c_b), FUNCTION(i2c_c), + FUNCTION(i2c_c_1), FUNCTION(i2c_d), FUNCTION(hdmi_ddc), FUNCTION(hdmi_hpd),