cancel
Showing results for 
Search instead for 
Did you mean: 

STM32MP15 ECO 5.0 RGB panels panel-simple or panel-dpi bindings ?

debugging
Lead

For Rockchip RGB panel  this link to refers to device tree binding of panel-dpi, (MIPI-DPI),  https://wiki.st.com/stm32mpu/wiki/Display_panels_hardware_components

Several RGB panels are also listed in panel-simple.yaml.   Which devicetree bindings one to follow for RGB panels ?

 

13 REPLIES 13

The backlight driver seems to be set with the values form the DTS.just the BL is not on,  Could turn on the BL with gpioset -t0 -c 7 7=1 before, but now  it does not have any effect

 

root@stm32mp1:/sys/class/backlight/panel-backlight# ls -l
total 0
-r--r--r-- 1 root root 4096 Aug  9 13:50 actual_brightness
-rw-r--r-- 1 root root 4096 Aug  9 13:54 bl_power
-rw-r--r-- 1 root root 4096 Aug  9 13:50 brightness
lrwxrwxrwx 1 root root    0 Aug  9 13:50 device -> ../../../panel-backlight
-r--r--r-- 1 root root 4096 Aug  9 13:50 max_brightness
drwxr-xr-x 2 root root    0 Aug  9 13:51 power
-r--r--r-- 1 root root 4096 Aug  9 13:51 scale
lrwxrwxrwx 1 root root    0 Aug  9 13:50 subsystem -> ../../../../../class/backlight
-r--r--r-- 1 root root 4096 Aug  9 13:50 type
-rw-r--r-- 1 root root 4096 Aug  9 13:49 uevent
root@stm32mp1:/sys/class/backlight/panel-backlight# cat actual_brightness
7
root@stm32mp1:/sys/class/backlight/panel-backlight# cat max_brightness
7
root@stm32mp1:/sys/class/backlight/panel-backlight# cat brightness
7

 

it appears to me that everything i working ,except the backlight is not coming on. After kernel starts there is a period , before weston starts, that I can use the gpio to get the panel out of reset and the backlight turns on n(no image though).  During this period the gtk program does not work. The panel uses a GPIO pin for reset, and gpio -t0 c 7 7=1 works. but gtk gives an error:

 

(gtk:1496): Gtk-WARNING **: 01:03:00.178: cannot open display: 
root@stm32mp1:~# ./gtk
[   41.694055] Time out check galcore device expired

(gtk:1504): Gtk-WARNING **: 01:03:02.129: cannot open display: 
root@stm32mp1:~# [   41.756246] Weston already configured on pixman
root@stm32mp1:~# ./gtk

 

After a few seconds Weston starts.  (as above), then it still take a few seconds  before the /gtk program works. After that the reset via GPIO has no effect and the backlight is turn off by something, no image can be seen on the screen . This happens no mater the reset pin is defined  or not in panel or backlight node of the dts.

Hope this gives any pointers to pinpoint possible root cause(s). I can't change the reset circui, so perhaps it's that the reset pin is activated somehow.  (by power management but how, if the pin isn't defined in the dts ?), The panel is directly connected to 3V3 for logic and 5V for backlight, even the PWM timer is not started how could the backlight of the display be turned off.  BTW gpioinfo still shows the RGB pins as inputs.

When I press the reset button, the backlight turns on and there is definitely part of an image, before it reboots and is turned off again. the procesure then is

1. Boot (panel is off)

2. gpioreset the panel (backlight comes on full on with a flash,, then turns back to a certain brightness)

3  wait for weston  (panel turns off)

4. after a few seconds, start gtk program (panel is off, but touch is working)

5. press reset (an image can be seen)

6. panel turns off at restart.

hope this gives some pointers what root cause could be.

 

debugging
Lead

Panel is working now. a few changes

1. in ECO 1, in panel reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>; seems to work, but in ECO 5.0 it does not. Removed the GPIO rest property. Setting cmpatible r to "panel-dpi does not work.
2. PWM cells in timers should not change. In ECO 1.0 uses 2 arguments, in ECO 5.0 it uses 3 arguments, so need to add 0 for polarity. or use calls=2 with 1 arguments in backlight node.

3. Removed reset GPIO property from backlight control. (this cause kernel to use this GPIO but never activate  it)

4. Removed backlight property form panel and use gpio command to get it out of reset (this result in LCD to work)

5. The panel is actually innolux,zj070na-01p  this seems to be panel uses by RPI. The driver used  is ft5x06,.

6. Need to provide resolution to the touch driver otherwise it thinks it is 8x8.

Open issues:

a. STM demo program does not work correctly for touch.

b. The (custom) gtk test program "click" event is not fired for location larger than 600 (panel is 1024)

c. Can't create splash screen because the panel is kept in reset during boot. (how to fix this? custom gpio driver?)

d. The Wayland touch calibration program fails in points beyond x pixel 600   (but gtk touch detect location works fine but click event beyond x position around 600 is not detected as well)

All issues resolved, cause:

- brightness reversed  polarity

- bias levels for PWM pin.

- settings for touch

All seems the be panel specific. A lot is guess work

Not resolved:

Reset pin which actually is not a reset of the display controller but disables the regulators on the panel. it seems the pwm-backlight driver does not use the enable-gpios' pin. Could be a bug in the driver. something STMicro may need to look into.