[U-Boot] [PATCH 12/17] lcd: Add support for flushing LCD fb from dcache after update
Simon Glass
sjg at chromium.org
Sun Jan 15 02:57:25 CET 2012
Hi Mike,
On Sat, Jan 14, 2012 at 5:42 PM, Mike Frysinger <vapier at gentoo.org> wrote:
> On Saturday 14 January 2012 19:47:24 Simon Glass wrote:
>> --- a/common/cmd_echo.c
>> +++ b/common/cmd_echo.c
>> @@ -44,8 +44,9 @@ int do_echo(cmd_tbl_t *cmdtp, int flag, int argc, char *
>> const argv[]) }
>> }
>>
>> + /* Use puts() so that the LCD sees it as a new line */
>> if (putnl)
>> - putc('\n');
>> + puts("\n");
>>
>> return 0;
>> }
>
> this sounds like a hack for a broken LCD core and so the fix should be
> somewhere in there
Well it's actually that I don't want to flush after every character
(it slows things down a lot) so puts is a good place to look. I
suppose we could flush after every newline we see in lcd_putc().
>
>> --- a/common/lcd.c
>> +++ b/common/lcd.c
>>
>> +static char lcd_flush_dcache;
>
> seems like it'd be better as a CONFIG knob
OK, will see if I can do that.
>
>> + /*
>> + * flush_dcache_range() is declared in common.h but it seems that some
>> + * architectures do not actually implement it. Is there a way to find
>> + * out whether it exists? For now, ARM is safe.
>> + */
>
> if those arches don't implement this func, then the failure is on their head.
> people should feel free to use the cache api we expose in common.h.
I sort-of agree, except that I saw masses of failures. I will look a bit harder.
Regards,
Simon
> -mike
More information about the U-Boot
mailing list