lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 01 Sep 2016 09:04:41 +0200
From:   Andrzej Hajda <a.hajda@...sung.com>
To:     ayaka <ayaka@...lik.info>, devicetree <devicetree@...r.kernel.org>
Cc:     Mark Rutland <mark.rutland@....com>,
        linux-samsung-soc@...r.kernel.org, linux@...linux.org.uk,
        krzk@...nel.org, linux-kernel@...r.kernel.org,
        kyungmin.park@...sung.com, kgene@...nel.org,
        dri-devel@...ts.freedesktop.org,
        linux-arm-kernel@...ts.infradead.org, thierry.reding@...il.com
Subject: Re: [PATCH RFC] ARM: dts: samsung: add rga-lvds panel in itop elite

On 08/31/2016 07:55 PM, ayaka wrote:
>
> On 08/31/2016 08:30 PM, Andrzej Hajda wrote:
>> Hi,
>>
>>
>> On 08/30/2016 12:50 AM, Randy Li wrote:
>>> It is actually a lvds panel connected through a rga-lvds bridge.
>>> But I really have no idea about what does a port mean in fimd node.
>>>
>>> Also how should I configure this panel size? I think the i2c found
>>> on the panel schematic, but it more likely to be used a touch screen
>>> touth. Also the touch screen is not supported in currently driver.
>>>
>>> Signed-off-by: Randy Li <ayaka@...lik.info>
>>> ---
>>>   arch/arm/boot/dts/exynos4412-itop-elite.dts | 35 ++++++++++++++++++++++++++---
>>>   1 file changed, 32 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/arch/arm/boot/dts/exynos4412-itop-elite.dts b/arch/arm/boot/dts/exynos4412-itop-elite.dts
>>> index e1cda54..2d67385 100644
>>> --- a/arch/arm/boot/dts/exynos4412-itop-elite.dts
>>> +++ b/arch/arm/boot/dts/exynos4412-itop-elite.dts
>>> @@ -139,6 +139,20 @@
>>>   		assigned-clocks = <&clock CLK_MOUT_CAM0>;
>>>   		assigned-clock-parents = <&clock CLK_XUSBXTI>;
>>>   	};
>>> +	
>>> +	vcc_sys_lcd: sys-lcd {
>>> +		compatible = "regulator-fixed";
>>> +		regulator-name = "vcc_5v";
>>> +		regulator-min-microvolt = <5000000>;
>>> +		regulator-max-microvolt = <5000000>;
>>> +		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
>>> +	};
>>> +
>>> +	panel: panel {
>>> +		ddc-i2c-bus = <&i2c_3>;
>>> +		power-supply = <&vcc_sys_lcd>;
>>> +		enable-gpios = <&gpl0 2 GPIO_ACTIVE_HIGH>;
>>> +	};
>> Panel has no compatible string, which driver will handle this node?
> The problem is that, it is panel not supported by kernel. 

For simple panel you can take a look at [1][2]. Ie. if the panel needs
only power supply and enable gpio, you just need to add few lines to [2].

[1]: Documentation/devicetree/bindings/display/panel/simple-panel.txt
[2]: drivers/gpu/drm/panel/panel-simple.c

> Is it possible 
> to support without adding a new driver for it ? I know there is a 
> simple-dpi for MIPI, but what is for parallel video or lvds?

simple-dpi is just parallel output. LVDS is not supported by Exynos4412 but
boards usually have RGB/LVDS bridge for such panels, I have no access to
itop
board schematics, but I suppose it has such bridge. LVDS bridges often
do not
need Linux driver, so from developer point of view LVDS panels with such
bridge
are handled the same way as RGB panels. Example fimd bindings for RGB panels
are in [3].

[3]: arch/arm/boot/dts/exynos4210-universal_c210.dts

>> Regards
>> Andrzej
> The other problem is that I don't how to configure the display-times, 
> the datasheet for CLAA070WP03XG only talk about total time, active time 
> and blank time for both Horizontal an Vertical time. Does it mean the 
> front-porch and sync-len for horizontal and vertical are zero ?

You can look at vendor's code. Or just experiment with different values.
The equation is: total=active+back_porch+blank+front_porch.
So if htotal=864, hactive=800, hblank=64, then hporches are 0.
In case of vtotal=1288, vactive=1200, vblank=8 you have left 80 for porches,
you can try to split them equally for front and back for starters.

Regards
Andrzej

>
> +       ports {
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +               port@3 {
> +                       reg = <3>;
> +                       rga_lvds: endpoint {
> +                               remote-endpoint = <&panel>;
> +                       };
> +               };
> +       };
> +
> +       panel: panel@0 {
> +               compatible = "panel-simple";
> +
> +               power-supply = <&vcc_sys_lcd>;
> +               enable-gpios = <&gpl0 2 GPIO_ACTIVE_HIGH>;
> +               display-timings {
> +                       timing-0 {
> +                               clock-frequency = <66770000>;
> +                               hactive = <800>;
> +                               vactive = <1280>;
> +                               hfront-porch = <0>;
> +                               hback-porch = <64>;
> +                               hsync-len = <0>;
> +                               vfront-porch = <0>;
> +                               vback-porch = <8>;
> +                               vsync-len = <0>;
> +                       };
> +      };
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ