Yes I found EDID data are corrupted.
I tried to get proper EDID by your customized u-boot: https://github.com/jernejsk/u-boot
Using uart debug I got:
HDMI connected: EDID block 0: checksum error, retrying
EDID block 0: checksum error, retrying
EDID block 0: checksum error
But I found a solution and will try to preapre patch. I am completly new to such thinkgs so it will take some time. Also my C++ is kind of basic-moderate...
I also noticed that u-boot is switching to 1024x768 in sunxi_display.c:
video_get_ctfb_res_modes(RES_MODE_1024x768, 24, &mode,
&sunxi_display.depth, &options);
so I changed 1024x768 to 800x600 - this resolution I used as guided here: https://www.instructables.com/id/Orange-PI-HowTo-Set-It-Up-to-Use-With-a-5-HDMI-TFT/
and corrected in videomodes.c :
#ifndef CONFIG_VIDEO_STD_TIMINGS
{ 640, 480, 60, 39721, 25180, 40, 24, 32, 11, 96, 2, 0, FB_VMODE_NONINTERLACED},
{ 800, 600, 60, 27778, 36000, 64, 24, 22, 1, 72, 2, 0, FB_VMODE_NONINTERLACED},
{1024, 768, 60, 15384, 65000, 168, 8, 29, 3, 144, 4, 0, FB_VMODE_NONINTERLACED},
{ 960, 720, 80, 13100, 76335, 160, 40, 32, 8, 80, 4, 0, FB_VMODE_NONINTERLACED},
{1152, 864, 60, 12004, 83300, 200, 64, 32, 16, 80, 4, 0, FB_VMODE_NONINTERLACED},
{1280, 1024, 60, 9090, 110000, 200, 48, 26, 1, 184, 3, 0, FB_VMODE_NONINTERLACED},
line:
{ 800, 600, 60, 27778, 36000, 64, 24, 22, 1, 72, 2, 0, FB_VMODE_NONINTERLACED},
to
{ 800, 600, 60, 32100, 36000, 64, 24, 22, 1, 72, 2, 0, FB_VMODE_NONINTERLACED},
27778 I figured out from the rest of u-boot code is my PLL so I changed to 32100 (321 is PLL from fex file)
LCD started to work.
I assume that good way is to prepare patch and recompile all and than install by dpkg. So if someone wants to patch just do or not.
Let me know if this is good way.
Thanks
Jarek