On 26.07.2018 12:44, Krzysztof Kozlowski wrote: > On 26 July 2018 at 12:12, Andrzej Hajda <a.hajda@xxxxxxxxxxx> wrote: >> HDMI-HPD was set active low, moreover by default pincontrol >> chip sets pull-down on the pin. As a result HDMI driver >> assumes TV is always connected regardless of actual state. >> The patch fixes it. >> >> Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx> >> --- >> arch/arm/boot/dts/exynos5250-arndale.dts | 4 +++- >> arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 5 +++++ >> 2 files changed, 8 insertions(+), 1 deletion(-) >> >> diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts >> index 591023391f7d..26bae5157177 100644 >> --- a/arch/arm/boot/dts/exynos5250-arndale.dts >> +++ b/arch/arm/boot/dts/exynos5250-arndale.dts >> @@ -210,9 +210,11 @@ >> }; >> >> &hdmi { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&hdmi_hpd>; >> status = "okay"; >> ddc = <&i2c_ddc>; >> - hpd-gpios = <&gpx3 7 GPIO_ACTIVE_LOW>; >> + hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>; > The gpx3-7 (HDMI-HPD) has external pull up to... so maybe it should be > active low? How can it go high if it is already high? > I am not sure if this matters because the driver ignores the flags and > responds on both falling and rising edge. HDMI specification says HPD is active high! Arndale schematics are quite misleading - pull-up resistors near level shifter are marked as not-connected :) so there are no pull-ups. And there is pull-down resistor on right side of the level shifter. And finally with this patch it works as expected, without it it works sometimes. Regards Andrzej > > Best regards, > Krzysztof > >> vdd_osc-supply = <&ldo10_reg>; >> vdd_pll-supply = <&ldo8_reg>; >> vdd-supply = <&ldo8_reg>; >> diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> index b25d520393b8..d31a68672bfa 100644 >> --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi >> @@ -599,6 +599,11 @@ >> samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; >> samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; >> }; >> + >> + hdmi_hpd: hdmi-hpd { >> + samsung,pins = "gpx3-7"; >> + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; >> + }; >> }; >> >> &pinctrl_1 { >> -- >> 2.18.0 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html