From: Simon Glass <simon.glass@canonical.com> Update vidconsole_set_bitmap_font() to take a context parameter so it can set font properties for a specific context rather than always using the default. Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com> Signed-off-by: Simon Glass <simon.glass@canonical.com> --- drivers/video/console_core.c | 2 +- drivers/video/console_truetype.c | 2 +- drivers/video/vidconsole-uclass.c | 4 +--- include/video_console.h | 3 ++- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/video/console_core.c b/drivers/video/console_core.c index dba47af4eb5..ff5d9f5964a 100644 --- a/drivers/video/console_core.c +++ b/drivers/video/console_core.c @@ -25,7 +25,7 @@ static int console_set_font(struct udevice *dev, struct video_fontdata *fontdata struct console_simple_priv *priv = dev_get_priv(dev); priv->fontdata = fontdata; - vidconsole_set_bitmap_font(dev, fontdata); + vidconsole_set_bitmap_font(dev, vidconsole_ctx(dev), fontdata); return 0; } diff --git a/drivers/video/console_truetype.c b/drivers/video/console_truetype.c index 9b835437031..7a5588bf419 100644 --- a/drivers/video/console_truetype.c +++ b/drivers/video/console_truetype.c @@ -908,7 +908,7 @@ static void set_bitmap_font(struct udevice *dev, ctx->cur_fontdata = fontdata; ctx->cur_met = NULL; - vidconsole_set_bitmap_font(dev, fontdata); + vidconsole_set_bitmap_font(dev, com, fontdata); com->tab_width_frac = VID_TO_POS(fontdata->width) * 8 / 2; } diff --git a/drivers/video/vidconsole-uclass.c b/drivers/video/vidconsole-uclass.c index c0eee7d75fd..b5a129d82b7 100644 --- a/drivers/video/vidconsole-uclass.c +++ b/drivers/video/vidconsole-uclass.c @@ -981,11 +981,9 @@ void vidconsole_set_quiet(struct udevice *dev, bool quiet) priv->quiet = quiet; } -void vidconsole_set_bitmap_font(struct udevice *dev, +void vidconsole_set_bitmap_font(struct udevice *dev, struct vidconsole_ctx *ctx, struct video_fontdata *fontdata) { - struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev); - struct vidconsole_ctx *ctx = vidconsole_ctx_from_priv(vc_priv); struct video_priv *vid_priv = dev_get_uclass_priv(dev->parent); log_debug("console_simple: setting %s font\n", fontdata->name); diff --git a/include/video_console.h b/include/video_console.h index c5fc0577670..500a5974a57 100644 --- a/include/video_console.h +++ b/include/video_console.h @@ -860,9 +860,10 @@ void vidconsole_set_quiet(struct udevice *dev, bool quiet); * vidconsole_set_bitmap_font() - prepare vidconsole for chosen bitmap font * * @dev vidconsole device + * @ctx vidconsole context * @fontdata pointer to font data struct */ -void vidconsole_set_bitmap_font(struct udevice *dev, +void vidconsole_set_bitmap_font(struct udevice *dev, struct vidconsole_ctx *ctx, struct video_fontdata *fontdata); /* -- 2.43.0