[PATCH RFC] ARM: dts: samsung: add rga-lvds panel in itop elite

Ayaka ayaka at soulik.info
Thu Sep 1 01:24:35 PDT 2016



從我的 iPad 傳送
Thank you
> Andrzej Hajda <a.hajda at samsung.com> 於 2016年9月1日 下午3:04 寫道:
> 
>> 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 at soulik.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].
But I still don't know which compatible string I should use, "simple-dpi" ?
> 
> 
> [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
Yes it is.
> 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
> 
Would it appear as a frame buffer device in Linux ? Regard of display timings, I could solve it later. If the frame buffer node is created, I could know I have a way to test.
>>> 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.
It is a very old kernel. But it seems that they didn't configure the fimd but the frame buffer.
> 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.
But timings diagram in data sheet doesn't look like that, I have asked the vendor for some help, I hope I could get a reply from the vendor.
> 
> Regards
> Andrzej
> 
>> 
>> +       ports {
>> +               #address-cells = <1>;
>> +               #size-cells = <0>;
>> +               port at 3 {
>> +                       reg = <3>;
>> +                       rga_lvds: endpoint {
>> +                               remote-endpoint = <&panel>;
>> +                       };
>> +               };
>> +       };
>> +
>> +       panel: panel at 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 at vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> 
>> 




More information about the linux-arm-kernel mailing list