summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2022-10-06 17:36:18 +0300
committerAnatolij Gustschin <agust@denx.de>2022-10-30 22:01:40 +0300
commitc830e285f475e580eb45290d54e9d174a57a7d71 (patch)
tree55e62ac2c9900f40b178fb0092638948bcfb7a3e
parente90322f87c97a4829c44fe77435c9faca87cbfc8 (diff)
downloadu-boot-c830e285f475e580eb45290d54e9d174a57a7d71.tar.xz
video: Add a way to get the default font height
This is not as simple as it seems. Add a function to provide it so that the upcoming menu feature can space lines out correctly. Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r--drivers/video/video-uclass.c11
-rw-r--r--include/video.h9
2 files changed, 20 insertions, 0 deletions
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index fbe1ad169e..0ce376ca3f 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -421,6 +421,17 @@ static int show_splash(struct udevice *dev)
return 0;
}
+int video_default_font_height(struct udevice *dev)
+{
+ struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev);
+
+ if (IS_ENABLED(CONFIG_CONSOLE_TRUETYPE))
+ return IF_ENABLED_INT(CONFIG_CONSOLE_TRUETYPE,
+ CONFIG_CONSOLE_TRUETYPE_SIZE);
+
+ return vc_priv->y_charsize;
+}
+
/* Set up the display ready for use */
static int video_post_probe(struct udevice *dev)
{
diff --git a/include/video.h b/include/video.h
index 32afb26a45..529f968518 100644
--- a/include/video.h
+++ b/include/video.h
@@ -286,6 +286,15 @@ void video_set_flush_dcache(struct udevice *dev, bool flush);
*/
void video_set_default_colors(struct udevice *dev, bool invert);
+/**
+ * video_default_font_height() - Get the default font height
+ *
+ * @dev: video device
+ * Returns: Default font height in pixels, which depends on which console driver
+ * is in use
+ */
+int video_default_font_height(struct udevice *dev);
+
#ifdef CONFIG_VIDEO_COPY
/**
* vidconsole_sync_copy() - Sync back to the copy framebuffer