[PATCH 6/6] video: Only dcache flush damaged lines
Alexander Graf
agraf at csgraf.de
Thu Jun 9 16:56:17 CEST 2022
On 07.06.22 10:00, Heinrich Schuchardt wrote:
> On 6/7/22 01:43, Alexander Graf wrote:
>> Now that we have a damage area tells us which parts of the frame buffer
>> actually need updating, let's only dcache flush those on video_sync()
>> calls. With this optimization in place, frame buffer updates -
>> especially
>> on large screen such as 4k displays - speed up significantly.
>>
>> Signed-off-by: Alexander Graf <agraf at csgraf.de>
>> Reported-by: Da Xue <da at libre.computer>
>> ---
>> drivers/video/video-uclass.c | 49 ++++++++++++++++++++++++++++++------
>> 1 file changed, 42 insertions(+), 7 deletions(-)
>>
>> diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
>> index 9ac1974670..5661beea38 100644
>> --- a/drivers/video/video-uclass.c
>> +++ b/drivers/video/video-uclass.c
>> @@ -222,6 +222,39 @@ int video_damage(struct udevice *vid, int x, int
>> y, int width, int height)
>> }
>> #endif
>> +#if defined(CONFIG_ARM) && !CONFIG_IS_ENABLED(SYS_DCACHE_OFF)
>
> Why should this be ARM specific?
I don't believe it should - and that's what the existing comment also
says. But currently it is because the dcache API isn't available on all
platforms; I'm merely preserving the existing logic :).
Thanks,
Alex
More information about the U-Boot
mailing list