[PATCH v2 1/1] cmd: add serial console support for the cls command
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Fri Mar 11 08:06:27 CET 2022
On 2/11/22 21:29, Simon Glass wrote:
> On Fri, 11 Feb 2022 at 10:11, Heinrich Schuchardt
> <heinrich.schuchardt at canonical.com> wrote:
>>
>> Currently the cls command does not support the serial console
>>
>> The screen can be cleared in the video uclass, the colored frame buffer
>> console, and the serial console by sending the same escape sequence.
>> This reduces the cls command to a single printf() statement on most
>> boards.
>>
>> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
>> ---
>> v2:
>> support cls with CONFIG_DM_VIDEO=y and CONFIG_VIDEO_ANSI=n
>> ---
>> cmd/cls.c | 8 ++++++--
>> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> Reviewed-by: Simon Glass <sjg at chromium.org>
>
> (would be better with if() instead of #if)
This is not possible because you chose to give two functions with a
different number of parameters the same name (video_clear()).
Best regards
Heinrich
>
>
>>
>> diff --git a/cmd/cls.c b/cmd/cls.c
>> index eab4e6993b..b411fc1eb1 100644
>> --- a/cmd/cls.c
>> +++ b/cmd/cls.c
>> @@ -11,12 +11,16 @@
>> #include <lcd.h>
>> #include <video.h>
>>
>> +#define CSI "\x1b["
>> +
>> static int do_video_clear(struct cmd_tbl *cmdtp, int flag, int argc,
>> char *const argv[])
>> {
>> -#if defined(CONFIG_DM_VIDEO)
>> - struct udevice *dev;
>> + __maybe_unused struct udevice *dev;
>>
>> + /* Send clear screen and home */
>> + printf(CSI "2J" CSI "1;1H");
>> +#if defined(CONFIG_DM_VIDEO) && !defined(CONFIG_VIDEO_ANSI)
>> if (uclass_first_device_err(UCLASS_VIDEO, &dev))
>> return CMD_RET_FAILURE;
>>
>> --
>> 2.34.1
>>
More information about the U-Boot
mailing list