1 // SPDX-License-Identifier: GPL-2.0+
5 * Copyright 2022 Google LLC
6 * Written by Simon Glass <sjg@chromium.org>
13 #include <video_console.h>
15 static int do_font_list(struct cmd_tbl *cmdtp, int flag, int argc,
20 if (uclass_first_device_err(UCLASS_VIDEO_CONSOLE, &dev))
21 return CMD_RET_FAILURE;
22 vidconsole_list_fonts(dev);
27 static int do_font_select(struct cmd_tbl *cmdtp, int flag, int argc,
38 if (uclass_first_device_err(UCLASS_VIDEO_CONSOLE, &dev))
39 return CMD_RET_FAILURE;
42 size = dectoul(argv[2], NULL);
43 ret = vidconsole_select_font(dev, name, size);
45 printf("Failed (error %d)\n", ret);
46 return CMD_RET_FAILURE;
51 static int do_font_size(struct cmd_tbl *cmdtp, int flag, int argc,
54 const char *font_name;
62 if (uclass_first_device_err(UCLASS_VIDEO_CONSOLE, &dev))
63 return CMD_RET_FAILURE;
64 font_name = vidconsole_get_font_size(dev, &size);
66 size = dectoul(argv[1], NULL);
68 ret = vidconsole_select_font(dev, font_name, size);
70 printf("Failed (error %d)\n", ret);
71 return CMD_RET_FAILURE;
78 #ifdef CONFIG_SYS_LONGHELP
79 static char font_help_text[] =
80 "list - list available fonts\n"
81 "font select <name> [<size>] - select font to use\n"
82 "font size <size> - select font size to";
85 U_BOOT_CMD_WITH_SUBCMDS(font, "Fonts", font_help_text,
86 U_BOOT_SUBCMD_MKENT(list, 1, 1, do_font_list),
87 U_BOOT_SUBCMD_MKENT(select, 3, 1, do_font_select),
88 U_BOOT_SUBCMD_MKENT(size, 2, 1, do_font_size));