imx-drm: ldb and display power on sequence
Christian Gmeiner
christian.gmeiner at gmail.com
Tue Mar 11 04:51:48 EDT 2014
2014-03-07 12:18 GMT+01:00 Christian Gmeiner <christian.gmeiner at gmail.com>:
> Hi Philipp,
>
>> Am Donnerstag, den 06.03.2014, 13:34 +0100 schrieb Christian Gmeiner:
>>> Hi all.
>>>
>>> On our custom board design (imx6d) we are using a TFT-display
>>> connceted via LVDS.
>>> The datasheet [0] says that the display needs a defined power up
>>> sequence. I need
>>> to control the following stuff:
>>>
>>> - LCD_ON (gpio2 3)
>>> - Backlight ON (gpio2 0)
>>> - PMW for dimm
>>>
>>> At the moment I have the backlight suff ready:
>>>
>>> backlight {
>>> compatible = "pwm-backlight";
>>> pwms = <&pwm4 0 50000>;
>>> enable-gpios = <&gpio2 0 0>;
>>>
>>> brightness-levels = <0 1 2 3 4>;
>>> default-brightness-level = <4>;
>>> };
>>>
>>> Now I only need to enable the LCD_ON and wait 40ms before turning on
>>> the LVDS clocks and data.
>>
>> This can be done by adding a regulator-enable-ramp-delay property to the
>> gpio regulator.
>>
>
> Correct.
>
>>> For this I tought to add a regulator support in
>>> imx_ldb_encoder_commit(..) of imx-ldb.c.
>>>That should give me the correct sequence for
>>> LVDS on to LVDS data/clock. Now I only need to get the pwm-backlight
>>> driver doing its work after ldb is ready.
>>
>> We should rather add drm_panel support to imx-ldb. I have just sent a
>> patch for this.
>> The simple-panel driver already supports regulator and backlight.
>>
>
> I am still life in the world of a stable kernel called 3.13.6 :) Will
> backport the simple-panel driver
> and will have a look at your patches - today.
>
I backported your patch and updated my dts file. It looks better now
but one thing is does not work.
The datasheet says I need to enable the lcd, enable LVDS data and then
I can enable the backlight.
With the simple panel following happens:
panel_simple_enable:
- regulator_enable(p->supply);
- gpio_set_value
- backlight_update_status
The result of this sequence are graphical glitches and a ghost picture
on the panel. Need to think
about it to find a good solution for it. Maybe there should be a 2 way
init phase for a panel.
- preinit - turn on power-supply and set gpio
- init ipu
- postinit - unblank backlight
--
Christian Gmeiner, MSc
https://soundcloud.com/christian-gmeiner
More information about the linux-arm-kernel
mailing list