Partial black screen between splash screen and application

I developed an application based on Colibri VF61 and CE6 some years ago.
I customized my splash screen and I was able to keep it visible until the main screen of my application is shown (following this KB, and some old topics on this community).
Everything worked fine until now…
Probably the reason is the size of my application (that has incresed) and so the increased loading time.
But I’m not sure.

Now, a couple of seconds before my application windows is shown, I see the upper part of the splash screen becoming black (more or less upper 33% of the display).
I verifiied that this happens when the CE6 desktop is ready to be shown.

Can someone guess why this happens, and how to fix?

I set a custom event from my application and I set it into

[HKEY_LOCAL_MACHINE\Drivers\Display\Colibri]
"ActivateDisplayEvent"

I wonder if "FirstRefreshDelay" is somehow related to this.
And which value should I use (since I use “ActivateDisplayEvent”)

Thanks in advance

Sorry for pushing,
does someone have an idea on what is the reason for this behavior?

I’ve just found an additional (I hope important) update.
The issue starts happening when the application on CA5 (Windows CE6) loads a firmware form CM4 which have execution address 0x1F00417b
Rpmsg_SetConfigInt(hRpmsg, L"ExecuteAddr", 0x1F00417b, StoreVolatile));

All the old CM4 firmwares (working with no issues) had execution addresses up to maximum 0x1F003FF7

Looking two devices side-by-side I nothiced that the moment where the display becomes partially black is when the CE6 desktop becomes ready.

Is it possible that the starting address can produce this behavior?
@sahil.tx @germano.tx you helped a lot in the past. Do you have ideas?

Thanks

I can add other info.
The issue on the display happens when the firmware on M4 core starts running.
Two different firmware with the same execution address, but different memory layouts, changes to black different portions of the display.
And so I wonder:
is there a memory region where the bootloader splash screen is placed?
And so this memory region must not be used by core M4 (and/or A5)?

I confirm that the issue comes from the memory where the bootloader splashscreen image is stored.
I had to configure the M4 core so that memory from 0x8FE00000 to 0x8FE1FFFF is left untouched.
Can someone from Toradex confirm that this is the right approach?
And the memory region is large enough?

Hi @vix ,
Did you try the following registry settings ?
FirstRefreshDelay // try increasing the value
“UseSplashSettings” = 1 // This is required to prevent a re-initialization of the display controller by the WinCe display driver

Hi @sahil.tx
yes, I had already tried that registry settings (since I se the splashscreen some years ago).
I confirm that the issue is in the memory from 0x8FE00000 to 0x8FE1FFFF (at least).
I’m quite sure this is where the splash screen image is copied by the bootloader, and so the M4 firmware cannot use it (until the splashscreen must stay visible on the screen).

Can Toradex confirm the exact memory region where the splashscreen image is copied?
Thanks