cancel
Showing results for 
Search instead for 
Did you mean: 

touchgfx compression tearing

관박.1
Associate II

I'm using TouchGFX version 4.24.1 with external flash memory mapping at address 0x90000000.

When using the original image, there are no issues. However, when using the compressed RGB565 function, a tearing effect appears on the LCD screen. If I disable 'SCB_EnableDCache()', the issue is resolved.

Therefore, I believe that 'TouchGFXGeneratedHal::InvalidateCache()' is not properly invalidating the decompression buffer

  1. Is there a solution for this?
  2. If I disable 'SCB_EnableDCache()', will it have a significant impact on display performance?"

 

 

6 REPLIES 6
LouisB
ST Employee

Hello @관박.1 ,

You mean a corrupt image ? Do you have a screenshot of the result you have with compression and SCB_EnableDCache ?

And also, what's the image format and the framebuffer format in the configuration ?


BR,

Louis BOUDO
ST Software Developer | TouchGFX

Thank you, LouisB

 

I capture a portion of the screen.

1_0-1728515554785.png

1_1-1728515975388.png

image format : rgb565

framebuffer format : rgb565

 

And what do you have in the default image configuration ? Try to put non opaque format to RGB565

Louis BOUDO
ST Software Developer | TouchGFX

This is my TouchGFX default image configuration, and the RGB565 format option is not available in the Non-Opaque Image Format.

1_0-1728606904806.png

1_1-1728606925979.png

 

and, i'm sure this is cache issue.

because, for a moment, some parts of the tearing screen were flickering, displaying the correct colors.

 

 

LouisB
ST Employee

Hello @관박.1 ,

For now we didn't encounter this kind of issue with the cache, I'll talk we with the team to look for that.
"SCB_EnableDCache" seems to have side effects, like corrupting data in some cases, a workaround can be disable it so you can do your project.

BR,

Louis BOUDO
ST Software Developer | TouchGFX
MTana.1
Associate II

I had the similar situation.

I found the text flicker and below is countermeasure. It's just for your reference.

 

TouchGFXHAL.cpp

MTana1_1-1729680558599.png