]>
Commit | Line | Data |
---|---|---|
4e92e60d AG |
1 | // SPDX-License-Identifier: GPL-2.0+ |
2 | /* | |
3 | * (C) Copyright 2018 | |
4 | * DENX Software Engineering, Anatolij Gustschin <[email protected]> | |
5 | * | |
6 | * cls - clear screen command | |
7 | */ | |
8 | #include <common.h> | |
9 | #include <command.h> | |
10 | #include <dm.h> | |
4e92e60d AG |
11 | #include <video.h> |
12 | ||
bfaa51dd HS |
13 | #define CSI "\x1b[" |
14 | ||
09140113 | 15 | static int do_video_clear(struct cmd_tbl *cmdtp, int flag, int argc, |
4e92e60d AG |
16 | char *const argv[]) |
17 | { | |
bfaa51dd | 18 | __maybe_unused struct udevice *dev; |
4e92e60d | 19 | |
bfaa51dd HS |
20 | /* Send clear screen and home */ |
21 | printf(CSI "2J" CSI "1;1H"); | |
63de2161 HS |
22 | if (CONFIG_IS_ENABLED(DM_VIDEO) && !CONFIG_IS_ENABLED(VIDEO_ANSI)) { |
23 | if (uclass_first_device_err(UCLASS_VIDEO, &dev)) | |
24 | return CMD_RET_FAILURE; | |
25 | if (video_clear(dev)) | |
26 | return CMD_RET_FAILURE; | |
27 | } | |
4e92e60d AG |
28 | return CMD_RET_SUCCESS; |
29 | } | |
30 | ||
31 | U_BOOT_CMD(cls, 1, 1, do_video_clear, "clear screen", ""); |