[PATCH] ARM: dts: ux500-golden: Add S6E63M0 DSI display
Stephan Gerhold
stephan at gerhold.net
Fri Aug 14 11:40:25 EDT 2020
On Mon, Aug 10, 2020 at 02:42:47PM +0200, Linus Walleij wrote:
> Add the Samsung S6E63M0 video mode DSI display to the
> Samsung GT-S8190/Golden mobile phone.
>
> Cc: Stephan Gerhold <stephan at gerhold.net>
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> .../arm/boot/dts/ste-ux500-samsung-golden.dts | 91 +++++++++++++++++++
> 1 file changed, 91 insertions(+)
>
> diff --git a/arch/arm/boot/dts/ste-ux500-samsung-golden.dts b/arch/arm/boot/dts/ste-ux500-samsung-golden.dts
> index 5b499c0b2745..ef11603b6716 100644
> --- a/arch/arm/boot/dts/ste-ux500-samsung-golden.dts
> +++ b/arch/arm/boot/dts/ste-ux500-samsung-golden.dts
> @@ -290,6 +290,28 @@ ab8500_ldo_aux8 {
> };
> };
> };
> +
> + mcde at a0350000 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&dsi_default_mode>;
> +
> + dsi-controller at a0351000 {
> + panel at 0 {
> + compatible = "samsung,s6e63m0";
> + reg = <0>;
> + vdd3-supply = <&panel_reg_3v0>;
> + vci-supply = <&panel_reg_1v8>;
> + reset-gpios = <&gpio4 11 GPIO_ACTIVE_LOW>;
> + /* ESD (electrostatic discharge) detection interrupt */
> + interrupt-parent = <&gpio2>;
> + interrupts = <18 IRQ_TYPE_EDGE_RISING>;
> + interrupt-names = "esd";
> + pinctrl-names = "default";
> + pinctrl-0 = <&display_default_mode>;
> + };
> + };
> + };
> };
>
> gpio-keys {
> @@ -389,6 +411,40 @@ wl_reg_on: regulator-wl-reg-on {
> pinctrl-names = "default";
> pinctrl-0 = <&wlan_en_default>;
> };
> +
> + /* MIC5663 GPIO-controlled regulator */
Typo: should be MIC5366
> + panel_reg_1v8: regulator-panel-1v8 {
> + compatible = "regulator-fixed";
> +
> + regulator-name = "panel-fixed-supply";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + /* GPIO219 */
> + gpio = <&gpio6 27 GPIO_ACTIVE_HIGH>;
> +
> + startup-delay-us = <5000>;
The datasheet of MIC5366 [1] suggests max of 125us, maybe take 200us for
a bit more. But not sure if we really need 5ms?
[1]: http://ww1.microchip.com/downloads/en/DeviceDoc/mic5365.pdf
> + enable-active-high;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&panel_reg_default_mode>;
> + };
> +
> + /* MIC5663 GPIO-controlled regulator */
> + panel_reg_3v0: regulator-panel-3v0 {
> + compatible = "regulator-fixed";
> +
> + regulator-name = "panel-fixed-supply";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> + /* GPIO219 */
> + gpio = <&gpio6 27 GPIO_ACTIVE_HIGH>;
> +
> + startup-delay-us = <5000>;
> + enable-active-high;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&panel_reg_default_mode>;
> + };
> };
>
> &pinctrl {
> @@ -431,6 +487,41 @@ golden_cfg1 {
> };
> };
>
> + mcde {
> + dsi_default_mode: dsi_default {
> + default_mux1 {
> + /* Mux in VSI0 used for DSI TE */
> + function = "lcd";
> + groups =
> + "lcdvsi0_a_1"; /* VSI0 for LCD */
> + };
> + default_cfg1 {
> + pins =
> + "GPIO68_E1"; /* VSI0 */
> + ste,config = <&in_nopull>;
> + };
> + };
> + };
> +
> + display {
> + display_default_mode: display_default {
> + skomer_cfg1 {
> + pins = "GPIO139_C9"; /* MIPI_DSI0_RESET_N */
> + ste,config = <&gpio_out_lo>;
> + };
> + skomer_cfg2 {
> + pins = "GPIO82_C1"; /* LDI_ESD_DET */
> + ste,config = <&gpio_in_pu>;
> + };
nit: should be golden_cfg, not skomer_cfg.
> + };
> + panel_reg_default_mode: panel_reg_default {
> + skomer_cfg1 {
> + pins = "GPIO219_AG10";
Maybe add a /* LCD_PWR_EN */ comment here for consistency with the
other pinctrl configurations.
> + ste,config = <&gpio_out_lo>;
> + };
> + };
> + };
> +
> proximity {
> proximity_default: proximity_default {
> golden_cfg1 {
> --
> 2.26.2
>
Overall it seems to be working fine on my samsung-golden.
Thanks for all your work!
Stephan
More information about the linux-arm-kernel
mailing list