mbox series

[v4,0/2] add Silicon Image SiI9234 driver

Message ID 1505201648-9240-1-git-send-email-m.purski@samsung.com
Headers show
Series add Silicon Image SiI9234 driver | expand

Message

Maciej Purski Sept. 12, 2017, 7:34 a.m. UTC
Hi everyone,

These patches are a continuation of work by Tomasz Stanislawski on sii9324 driver, which was described
in th following letter:
https://lists.freedesktop.org/archives/dri-devel/2014-April/057481.html

The main differences from the previous code are:
* driver moved to /gpu/drm/bridge/ and integrated with drm/bridge subsystem
* added filtering-out unsupported display modes
* changed gpio interface to up-to-date
* changed interrupt handling
* improve code style
* add hdmi and sii9324 to exynos4412-trats2 device tree

All comments are welcome.

Regards,
Maciej Purski

Changes in v4:
- change documentation to more accurate
- use msleep() instead of usleep() and usleep_range()
- improve code style

Changes in v3:
- change sii9234 device tree node name
- use defines from dt-bindings/pinctrl/samsung.h

Changes in v2:
- regulators used in driver now model all physical regulators
  used by the device
- substitute some of the magic values with macros
- improve coding style
- improve error handling in sii9234_probe()
- fix commit message

Maciej Purski (2):
  drm/bridge: add Silicon Image SiI9234 driver
  ARM: dts: exynos: Add HDMI and Sil9234 to Trats2 board

 .../devicetree/bindings/display/bridge/sii9234.txt |  49 +
 arch/arm/boot/dts/exynos4412-trats2.dts            | 112 +++
 drivers/gpu/drm/bridge/Kconfig                     |   8 +
 drivers/gpu/drm/bridge/Makefile                    |   1 +
 drivers/gpu/drm/bridge/sii9234.c                   | 996 +++++++++++++++++++++
 5 files changed, 1166 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/sii9234.txt
 create mode 100644 drivers/gpu/drm/bridge/sii9234.c

Comments

Krzysztof Kozlowski Sept. 17, 2017, 7:43 a.m. UTC | #1
On Tue, Sep 12, 2017 at 09:34:08AM +0200, Maciej Purski wrote:
> Add HDMI and Sil9234 MHL converter to Trats2 board.
> Following in SoC devices have been enabled:
> - HDMI (HDMI signal encoder),
> - Mixer (video buffer scanout device),
> - I2C_5 bus (used for HDMI DDC)
> - I2C_8 bus (used for HDMI_PHY control).
> 
> Based on previous work by:
> Tomasz Stanislawski <t.stanislaws@samsung.com>
> 
> Signed-off-by: Maciej Purski <m.purski@samsung.com>
> ---
>  arch/arm/boot/dts/exynos4412-trats2.dts | 112 ++++++++++++++++++++++++++++++++
>  1 file changed, 112 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
> index 35e9b94..742e02a 100644
> --- a/arch/arm/boot/dts/exynos4412-trats2.dts
> +++ b/arch/arm/boot/dts/exynos4412-trats2.dts
> @@ -18,6 +18,7 @@
>  #include <dt-bindings/gpio/gpio.h>
>  #include <dt-bindings/interrupt-controller/irq.h>
>  #include <dt-bindings/clock/maxim,max77686.h>
> +#include <dt-bindings/pinctrl/samsung.h>
>  
>  / {
>  	model = "Samsung Trats 2 based on Exynos4412";
> @@ -97,6 +98,34 @@
>  			gpio = <&gpj0 5 GPIO_ACTIVE_HIGH>;
>  			enable-active-high;
>  		};
> +
> +		vsil12: voltage-regulator-6 {
> +			compatible = "regulator-fixed";
> +			regulator-name = "VSIL_1.2V";
> +			regulator-min-microvolt = <1200000>;
> +			regulator-max-microvolt = <1200000>;
> +			gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
> +			enable-active-high;
> +			vin-supply = <&buck7_reg>;
> +		};
> +
> +		vcc33mhl: voltage-regulator-7 {
> +			compatible = "regulator-fixed";
> +			regulator-name = "VCC_3.3_MHL";
> +			regulator-min-microvolt = <3300000>;
> +			regulator-max-microvolt = <3300000>;
> +			gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
> +			enable-active-high;
> +		};
> +
> +		vcc18mhl: voltage-regulator-8 {
> +			compatible = "regulator-fixed";
> +			regulator-name = "VCC_1.8_MHL";
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1800000>;
> +			gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
> +			enable-active-high;
> +		};
>  	};
>  
>  	gpio-keys {
> @@ -229,6 +258,36 @@
>  		};
>  	};
>  
> +	i2c-mhl {
> +		compatible = "i2c-gpio";
> +		gpios = <&gpf0 4 GPIO_ACTIVE_HIGH &gpf0 6 GPIO_ACTIVE_HIGH>;

Please split it like in other nodes:
	gpios = <...>, <...>

AFAIR they should work the same so keep it consistent.

Rest looks good but the bindings have to be accepted first.

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html