
All the font size to be queried using the 'font size' command.
Signed-off-by: Simon Glass sjg@chromium.org ---
cmd/font.c | 17 +++++++++-------- doc/usage/cmd/font.rst | 6 ++++-- test/cmd/font.c | 9 +++++++++ 3 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/cmd/font.c b/cmd/font.c index cb39c88063f..c7fe2a70a49 100644 --- a/cmd/font.c +++ b/cmd/font.c @@ -56,9 +56,6 @@ static int do_font_size(struct cmd_tbl *cmdtp, int flag, int argc, uint size; int ret;
- if (argc != 2) - return CMD_RET_USAGE; - if (uclass_first_device_err(UCLASS_VIDEO_CONSOLE, &dev)) return CMD_RET_FAILURE; ret = vidconsole_get_font_size(dev, &font_name, &size); @@ -67,12 +64,16 @@ static int do_font_size(struct cmd_tbl *cmdtp, int flag, int argc, return CMD_RET_FAILURE; }
- size = dectoul(argv[1], NULL); + if (argc < 2) { + printf("%d\n", size); + } else { + size = dectoul(argv[1], NULL);
- ret = vidconsole_select_font(dev, font_name, size); - if (ret) { - printf("Failed (error %d)\n", ret); - return CMD_RET_FAILURE; + ret = vidconsole_select_font(dev, font_name, size); + if (ret) { + printf("Failed (error %d)\n", ret); + return CMD_RET_FAILURE; + } }
return 0; diff --git a/doc/usage/cmd/font.rst b/doc/usage/cmd/font.rst index 8ba149d7599..fea0df3f745 100644 --- a/doc/usage/cmd/font.rst +++ b/doc/usage/cmd/font.rst @@ -10,7 +10,7 @@ Synopis
font list font select <name> [<size>] - font size <size> + font size [<size>]
Description ----------- @@ -31,7 +31,7 @@ This selects a new font and optionally changes the size. font size ~~~~~~~~~
-This changes the font size only. +This changes the font size only. With no argument it shows the current size.
Examples -------- @@ -41,6 +41,8 @@ Examples => font list nimbus_sans_l_regular cantoraone_regular + => font size + 30 => font size 40 => font select cantoraone_regular 20 => diff --git a/test/cmd/font.c b/test/cmd/font.c index 1fe05c1ead5..9c1eebf799e 100644 --- a/test/cmd/font.c +++ b/test/cmd/font.c @@ -60,10 +60,19 @@ static int font_test_base(struct unit_test_state *uts) ut_assertok(vidconsole_get_font_size(dev, &name, &size)); ut_asserteq_str("cantoraone_regular", name); ut_asserteq(40, size); + ut_assertok(ut_check_console_end(uts)); + + ut_assertok(run_command("font size", 0)); + ut_assert_nextline("40"); + ut_assertok(ut_check_console_end(uts));
ut_assertok(run_command("font size 30", 0)); ut_assertok(ut_check_console_end(uts));
+ ut_assertok(run_command("font size", 0)); + ut_assert_nextline("30"); + ut_assertok(ut_check_console_end(uts)); + ut_assertok(vidconsole_get_font_size(dev, &name, &size)); ut_asserteq_str("cantoraone_regular", name); ut_asserteq(30, size);