Message ID | 1496228417-31126-1-git-send-email-m.szyprowski@samsung.com |
---|---|
State | Accepted |
Commit | 5343b1579247875ccfa88778e8db17e181c9f3fe |
Headers | show |
On 05/31/17 13:00, Marek Szyprowski wrote: > Exynos5250 and Exynos542x SoCs have the same CEC hardware module as > Exynos4 SoC series, so enable support for it using the same compatible > string. > > Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. Thanks! Do you know if the CEC block is always on for these devices or only if there is a hotplug signal? That was a problem with the exynos4 odroid. I have made a patch (not posted yet) to signal this in the device tree and added a CEC capability to signal this to the user. This capability will be added to 4.13 (see my patch 'cec: add CEC_CAP_NEEDS_HPD' from May 25th) since the DisplayPort CEC tunneling feature needs it as well. It's easy to test: don't connect an HDMI cable and run: cec-ctl --playback cec-ctl -t0 --image-view-on If this returns with a NACK error, then it is OK. If you get a kernel message that the transmit timed out, then you need this capability since CEC is disabled without HPD. Regards, Hans > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > --- > arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 +++++++ > arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 ++++ > arch/arm/boot/dts/exynos5250.dtsi | 13 +++++++++++++ > arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 7 +++++++ > arch/arm/boot/dts/exynos5420.dtsi | 13 +++++++++++++ > arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 4 ++++ > 6 files changed, 48 insertions(+) > > diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > index 2f6ab32b5954..1fd122db18e6 100644 > --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > @@ -589,6 +589,13 @@ > samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > }; > + > + hdmi_cec: hdmi-cec { > + samsung,pins = "gpx3-6"; > + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; > + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > + }; > }; > > &pinctrl_1 { > diff --git a/arch/arm/boot/dts/exynos5250-snow-common.dtsi b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > index 8f3a80430748..e1d293dbbe5d 100644 > --- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi > +++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > @@ -272,6 +272,10 @@ > vdd_pll-supply = <&ldo8_reg>; > }; > > +&hdmicec { > + status = "okay"; > +}; > + > &i2c_0 { > status = "okay"; > samsung,i2c-sda-delay = <100>; > diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi > index 79c9c885613a..fbdc1d53a2ce 100644 > --- a/arch/arm/boot/dts/exynos5250.dtsi > +++ b/arch/arm/boot/dts/exynos5250.dtsi > @@ -689,6 +689,19 @@ > samsung,syscon-phandle = <&pmu_system_controller>; > }; > > + hdmicec: cec@101B0000 { > + compatible = "samsung,s5p-cec"; > + reg = <0x101B0000 0x200>; > + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&clock CLK_HDMI_CEC>; > + clock-names = "hdmicec"; > + samsung,syscon-phandle = <&pmu_system_controller>; > + hdmi-phandle = <&hdmi>; > + pinctrl-names = "default"; > + pinctrl-0 = <&hdmi_cec>; > + status = "disabled"; > + }; > + > mixer@14450000 { > compatible = "samsung,exynos5250-mixer"; > reg = <0x14450000 0x10000>; > diff --git a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi > index 3924b4fafe72..65aa0e300c23 100644 > --- a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi > +++ b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi > @@ -67,6 +67,13 @@ > samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>; > }; > + > + hdmi_cec: hdmi-cec { > + samsung,pins = "gpx3-6"; > + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; > + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > + samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>; > + }; > }; > > &pinctrl_1 { > diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi > index 0db0bcf8da36..acd77b10b3df 100644 > --- a/arch/arm/boot/dts/exynos5420.dtsi > +++ b/arch/arm/boot/dts/exynos5420.dtsi > @@ -624,6 +624,19 @@ > reg = <0x145D0000 0x20>; > }; > > + hdmicec: cec@101B0000 { > + compatible = "samsung,s5p-cec"; > + reg = <0x101B0000 0x200>; > + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&clock CLK_HDMI_CEC>; > + clock-names = "hdmicec"; > + samsung,syscon-phandle = <&pmu_system_controller>; > + hdmi-phandle = <&hdmi>; > + pinctrl-names = "default"; > + pinctrl-0 = <&hdmi_cec>; > + status = "disabled"; > + }; > + > mixer: mixer@14450000 { > compatible = "samsung,exynos5420-mixer"; > reg = <0x14450000 0x10000>; > diff --git a/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi b/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi > index 05b9afdd6757..01d6ac99e974 100644 > --- a/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi > +++ b/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi > @@ -265,6 +265,10 @@ > vdd-supply = <&ldo6_reg>; > }; > > +&hdmicec { > + status = "okay"; > +}; > + > &hsi2c_4 { > status = "okay"; > > -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 05/31/17 14:04, Marek Szyprowski wrote: > Hi Hans, > > On 2017-05-31 13:17, Hans Verkuil wrote: >> On 05/31/17 13:00, Marek Szyprowski wrote: >>> Exynos5250 and Exynos542x SoCs have the same CEC hardware module as >>> Exynos4 SoC series, so enable support for it using the same compatible >>> string. >>> >>> Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. >> Thanks! >> >> Do you know if the CEC block is always on for these devices or only if there >> is a hotplug signal? That was a problem with the exynos4 odroid. > > Odroid XU3 has exactly same wiring between SoC & HDMI connector (via > IP4791CZ12 > chip) as Odroid U3, so I expect the same issues. > > I don't have schematic for Google Snow board, so I have no idea how it works > there. > >> I have made a patch (not posted yet) to signal this in the device tree and >> added a CEC capability to signal this to the user. >> >> This capability will be added to 4.13 (see my patch 'cec: add CEC_CAP_NEEDS_HPD' >> from May 25th) since the DisplayPort CEC tunneling feature needs it as well. >> >> It's easy to test: don't connect an HDMI cable and run: >> >> cec-ctl --playback >> cec-ctl -t0 --image-view-on >> >> If this returns with a NACK error, then it is OK. If you get a kernel message >> that the transmit timed out, then you need this capability since CEC is disabled >> without HPD. > > I've checked those commands, but on all tested boards (Odroid U3+, > Odroid XU3 and > Google Snow) I get the following message: > > Transmit from Unregistered to TV (255 to 0): > CEC_MSG_IMAGE_VIEW_ON (0x04) > Sequence: 19 Tx Timestamp: 175.935s > Tx, Error (1), Max Retries > > I have never got a timeout message from the kernel. Do I need to enable > some kind > of CEC debugs? Ah, that's right. CEC works, but the level shifter drops the CEC signal when there is no HPD. So this is actually quite hard to test. The easiest is to get a Pulse-Eight USB CEC adapter since then you can connect the odroid to the Pulse-Eight without connecting that to a TV in turn. Sending a CEC command would show up with the Pulse-Eight if CEC works without HPD. Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, May 31, 2017 at 01:00:17PM +0200, Marek Szyprowski wrote: > Exynos5250 and Exynos542x SoCs have the same CEC hardware module as > Exynos4 SoC series, so enable support for it using the same compatible > string. > > Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > --- > arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 +++++++ > arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 ++++ > arch/arm/boot/dts/exynos5250.dtsi | 13 +++++++++++++ > arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 7 +++++++ > arch/arm/boot/dts/exynos5420.dtsi | 13 +++++++++++++ > arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 4 ++++ > 6 files changed, 48 insertions(+) > > diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > index 2f6ab32b5954..1fd122db18e6 100644 > --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > @@ -589,6 +589,13 @@ > samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > }; > + > + hdmi_cec: hdmi-cec { > + samsung,pins = "gpx3-6"; > + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; > + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > + }; > }; > > &pinctrl_1 { > diff --git a/arch/arm/boot/dts/exynos5250-snow-common.dtsi b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > index 8f3a80430748..e1d293dbbe5d 100644 > --- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi > +++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > @@ -272,6 +272,10 @@ > vdd_pll-supply = <&ldo8_reg>; > }; > > +&hdmicec { > + status = "okay"; > +}; > + > &i2c_0 { > status = "okay"; > samsung,i2c-sda-delay = <100>; > diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi > index 79c9c885613a..fbdc1d53a2ce 100644 > --- a/arch/arm/boot/dts/exynos5250.dtsi > +++ b/arch/arm/boot/dts/exynos5250.dtsi > @@ -689,6 +689,19 @@ > samsung,syscon-phandle = <&pmu_system_controller>; > }; > > + hdmicec: cec@101B0000 { > + compatible = "samsung,s5p-cec"; > + reg = <0x101B0000 0x200>; > + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&clock CLK_HDMI_CEC>; > + clock-names = "hdmicec"; > + samsung,syscon-phandle = <&pmu_system_controller>; > + hdmi-phandle = <&hdmi>; > + pinctrl-names = "default"; > + pinctrl-0 = <&hdmi_cec>; > + status = "disabled"; > + }; What about Exynos5410? Is it applicable there as well? If yes, then this could be added to exynos5.dtsi... although then clocks and pinctrl should remain in SoC-specific DTSI. We're following such pattern in many places but I am not sure if this more readable. Beside that, looks fine to me. Best regards, Krzysztof -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Krzysztof, On 2017-05-31 21:55, Krzysztof Kozlowski wrote: > On Wed, May 31, 2017 at 01:00:17PM +0200, Marek Szyprowski wrote: >> Exynos5250 and Exynos542x SoCs have the same CEC hardware module as >> Exynos4 SoC series, so enable support for it using the same compatible >> string. >> >> Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. >> >> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> >> --- >> arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 +++++++ >> arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 ++++ >> arch/arm/boot/dts/exynos5250.dtsi | 13 +++++++++++++ >> arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 7 +++++++ >> arch/arm/boot/dts/exynos5420.dtsi | 13 +++++++++++++ >> arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 4 ++++ >> 6 files changed, 48 insertions(+) >> >> diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> index 2f6ab32b5954..1fd122db18e6 100644 >> --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> @@ -589,6 +589,13 @@ >> samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; >> samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; >> }; >> + >> + hdmi_cec: hdmi-cec { >> + samsung,pins = "gpx3-6"; >> + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; >> + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; >> + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; >> + }; >> }; >> >> &pinctrl_1 { >> diff --git a/arch/arm/boot/dts/exynos5250-snow-common.dtsi b/arch/arm/boot/dts/exynos5250-snow-common.dtsi >> index 8f3a80430748..e1d293dbbe5d 100644 >> --- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi >> +++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi >> @@ -272,6 +272,10 @@ >> vdd_pll-supply = <&ldo8_reg>; >> }; >> >> +&hdmicec { >> + status = "okay"; >> +}; >> + >> &i2c_0 { >> status = "okay"; >> samsung,i2c-sda-delay = <100>; >> diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi >> index 79c9c885613a..fbdc1d53a2ce 100644 >> --- a/arch/arm/boot/dts/exynos5250.dtsi >> +++ b/arch/arm/boot/dts/exynos5250.dtsi >> @@ -689,6 +689,19 @@ >> samsung,syscon-phandle = <&pmu_system_controller>; >> }; >> >> + hdmicec: cec@101B0000 { >> + compatible = "samsung,s5p-cec"; >> + reg = <0x101B0000 0x200>; >> + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; >> + clocks = <&clock CLK_HDMI_CEC>; >> + clock-names = "hdmicec"; >> + samsung,syscon-phandle = <&pmu_system_controller>; >> + hdmi-phandle = <&hdmi>; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&hdmi_cec>; >> + status = "disabled"; >> + }; > What about Exynos5410? Is it applicable there as well? If yes, then this > could be added to exynos5.dtsi... although then clocks and pinctrl > should remain in SoC-specific DTSI. We're following such pattern in many > places but I am not sure if this more readable. Exynos5410 has the same HW module, but as for now, it doesn't have support for HDMI due to missing a few pieces (mainly clocks definitions). I'm not sure if it makes sense to add only HDMICEC without HDMI itself. Maybe later, when multimedia support is added to Exynos5410, this can be integrated to exynos5.dtsi. Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jun 01, 2017 at 08:19:23AM +0200, Marek Szyprowski wrote: > Hi Krzysztof, > > On 2017-05-31 21:55, Krzysztof Kozlowski wrote: > > On Wed, May 31, 2017 at 01:00:17PM +0200, Marek Szyprowski wrote: > > > Exynos5250 and Exynos542x SoCs have the same CEC hardware module as > > > Exynos4 SoC series, so enable support for it using the same compatible > > > string. > > > > > > Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. > > > > > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > > > --- > > > arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 +++++++ > > > arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 ++++ > > > arch/arm/boot/dts/exynos5250.dtsi | 13 +++++++++++++ > > > arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 7 +++++++ > > > arch/arm/boot/dts/exynos5420.dtsi | 13 +++++++++++++ > > > arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 4 ++++ > > > 6 files changed, 48 insertions(+) > > > > > > diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > > > index 2f6ab32b5954..1fd122db18e6 100644 > > > --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > > > +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi > > > @@ -589,6 +589,13 @@ > > > samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > > > samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > > > }; > > > + > > > + hdmi_cec: hdmi-cec { > > > + samsung,pins = "gpx3-6"; > > > + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; > > > + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; > > > + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; > > > + }; > > > }; > > > &pinctrl_1 { > > > diff --git a/arch/arm/boot/dts/exynos5250-snow-common.dtsi b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > > > index 8f3a80430748..e1d293dbbe5d 100644 > > > --- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi > > > +++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi > > > @@ -272,6 +272,10 @@ > > > vdd_pll-supply = <&ldo8_reg>; > > > }; > > > +&hdmicec { > > > + status = "okay"; > > > +}; > > > + > > > &i2c_0 { > > > status = "okay"; > > > samsung,i2c-sda-delay = <100>; > > > diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi > > > index 79c9c885613a..fbdc1d53a2ce 100644 > > > --- a/arch/arm/boot/dts/exynos5250.dtsi > > > +++ b/arch/arm/boot/dts/exynos5250.dtsi > > > @@ -689,6 +689,19 @@ > > > samsung,syscon-phandle = <&pmu_system_controller>; > > > }; > > > + hdmicec: cec@101B0000 { > > > + compatible = "samsung,s5p-cec"; > > > + reg = <0x101B0000 0x200>; > > > + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; > > > + clocks = <&clock CLK_HDMI_CEC>; > > > + clock-names = "hdmicec"; > > > + samsung,syscon-phandle = <&pmu_system_controller>; > > > + hdmi-phandle = <&hdmi>; > > > + pinctrl-names = "default"; > > > + pinctrl-0 = <&hdmi_cec>; > > > + status = "disabled"; > > > + }; > > What about Exynos5410? Is it applicable there as well? If yes, then this > > could be added to exynos5.dtsi... although then clocks and pinctrl > > should remain in SoC-specific DTSI. We're following such pattern in many > > places but I am not sure if this more readable. > > Exynos5410 has the same HW module, but as for now, it doesn't have support > for > HDMI due to missing a few pieces (mainly clocks definitions). I'm not sure > if it makes sense to add only HDMICEC without HDMI itself. Maybe later, when > multimedia support is added to Exynos5410, this can be integrated to > exynos5.dtsi. Sounds fair, applied. Thanks! Best regards, Krzysztof -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi index 2f6ab32b5954..1fd122db18e6 100644 --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi @@ -589,6 +589,13 @@ samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; }; + + hdmi_cec: hdmi-cec { + samsung,pins = "gpx3-6"; + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; + }; }; &pinctrl_1 { diff --git a/arch/arm/boot/dts/exynos5250-snow-common.dtsi b/arch/arm/boot/dts/exynos5250-snow-common.dtsi index 8f3a80430748..e1d293dbbe5d 100644 --- a/arch/arm/boot/dts/exynos5250-snow-common.dtsi +++ b/arch/arm/boot/dts/exynos5250-snow-common.dtsi @@ -272,6 +272,10 @@ vdd_pll-supply = <&ldo8_reg>; }; +&hdmicec { + status = "okay"; +}; + &i2c_0 { status = "okay"; samsung,i2c-sda-delay = <100>; diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 79c9c885613a..fbdc1d53a2ce 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -689,6 +689,19 @@ samsung,syscon-phandle = <&pmu_system_controller>; }; + hdmicec: cec@101B0000 { + compatible = "samsung,s5p-cec"; + reg = <0x101B0000 0x200>; + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clock CLK_HDMI_CEC>; + clock-names = "hdmicec"; + samsung,syscon-phandle = <&pmu_system_controller>; + hdmi-phandle = <&hdmi>; + pinctrl-names = "default"; + pinctrl-0 = <&hdmi_cec>; + status = "disabled"; + }; + mixer@14450000 { compatible = "samsung,exynos5250-mixer"; reg = <0x14450000 0x10000>; diff --git a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi index 3924b4fafe72..65aa0e300c23 100644 --- a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi @@ -67,6 +67,13 @@ samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>; }; + + hdmi_cec: hdmi-cec { + samsung,pins = "gpx3-6"; + samsung,pin-function = <EXYNOS_PIN_FUNC_3>; + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; + samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>; + }; }; &pinctrl_1 { diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 0db0bcf8da36..acd77b10b3df 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -624,6 +624,19 @@ reg = <0x145D0000 0x20>; }; + hdmicec: cec@101B0000 { + compatible = "samsung,s5p-cec"; + reg = <0x101B0000 0x200>; + interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clock CLK_HDMI_CEC>; + clock-names = "hdmicec"; + samsung,syscon-phandle = <&pmu_system_controller>; + hdmi-phandle = <&hdmi>; + pinctrl-names = "default"; + pinctrl-0 = <&hdmi_cec>; + status = "disabled"; + }; + mixer: mixer@14450000 { compatible = "samsung,exynos5420-mixer"; reg = <0x14450000 0x10000>; diff --git a/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi b/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi index 05b9afdd6757..01d6ac99e974 100644 --- a/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +++ b/arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi @@ -265,6 +265,10 @@ vdd-supply = <&ldo6_reg>; }; +&hdmicec { + status = "okay"; +}; + &hsi2c_4 { status = "okay";
Exynos5250 and Exynos542x SoCs have the same CEC hardware module as Exynos4 SoC series, so enable support for it using the same compatible string. Tested on Odroid XU3 (Exynos5422) and Google Snow (Exynos5250) boards. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> --- arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 +++++++ arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 ++++ arch/arm/boot/dts/exynos5250.dtsi | 13 +++++++++++++ arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 7 +++++++ arch/arm/boot/dts/exynos5420.dtsi | 13 +++++++++++++ arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 4 ++++ 6 files changed, 48 insertions(+) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html