[Concept,12/18] video: truetype: Use consistent ctx/com pattern
Commit Message
From: Simon Glass <simon.glass@canonical.com>
Update functions to use a consistent pattern for accessing vidconsole
context:
- Use vidconsole_ctx(dev) to get console_tt_ctx pointer
- Get vidconsole_ctx via &ctx->com
This removes usage of vidconsole_ctx_from_priv() and the intermediate
vc_priv variable, simplifying the code.
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
---
drivers/video/console_truetype.c | 23 +++++++++++------------
1 file changed, 11 insertions(+), 12 deletions(-)
@@ -264,7 +264,8 @@ struct console_tt_store {
static int console_truetype_set_row(struct udevice *dev, uint row, int clr)
{
struct video_priv *vid_priv = dev_get_uclass_priv(dev->parent);
- struct vidconsole_ctx *com = vidconsole_ctx(dev);
+ struct console_tt_ctx *ctx = vidconsole_ctx(dev);
+ struct vidconsole_ctx *com = &ctx->com;
struct console_tt_priv *priv = dev_get_priv(dev);
void *end, *line;
int font_height;
@@ -411,11 +412,10 @@ static void clear_from(struct udevice *dev, int index)
static int console_truetype_putc_xy(struct udevice *dev, uint x, uint y,
int cp)
{
- struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev);
struct video_priv *vid_priv = dev_get_uclass_priv(dev->parent);
- struct vidconsole_ctx *com = vidconsole_ctx_from_priv(vc_priv);
- struct console_tt_priv *priv = dev_get_priv(dev);
struct console_tt_ctx *ctx = vidconsole_ctx(dev);
+ struct vidconsole_ctx *com = &ctx->com;
+ struct console_tt_priv *priv = dev_get_priv(dev);
struct console_tt_metrics *met = priv->cur_met;
stbtt_fontinfo *font;
int width, height, xoff, yoff;
@@ -914,8 +914,8 @@ static struct console_tt_metrics *find_metrics(struct udevice *dev,
static void set_bitmap_font(struct udevice *dev,
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 console_tt_ctx *ctx = vidconsole_ctx(dev);
+ struct vidconsole_ctx *com = &ctx->com;
struct console_tt_priv *priv = dev_get_priv(dev);
priv->cur_fontdata = fontdata;
@@ -923,13 +923,13 @@ static void set_bitmap_font(struct udevice *dev,
vidconsole_set_bitmap_font(dev, fontdata);
- ctx->tab_width_frac = VID_TO_POS(fontdata->width) * 8 / 2;
+ com->tab_width_frac = VID_TO_POS(fontdata->width) * 8 / 2;
}
static void select_metrics(struct udevice *dev, struct console_tt_metrics *met)
{
- struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev);
- struct vidconsole_ctx *com = vidconsole_ctx_from_priv(vc_priv);
+ struct console_tt_ctx *ctx = vidconsole_ctx(dev);
+ struct vidconsole_ctx *com = &ctx->com;
struct console_tt_priv *priv = dev_get_priv(dev);
struct udevice *vid_dev = dev_get_parent(dev);
struct video_priv *vid_priv = dev_get_uclass_priv(vid_dev);
@@ -1215,10 +1215,9 @@ static int truetype_entry_restore(struct udevice *dev, struct abuf *buf)
static int truetype_get_cursor_info(struct udevice *dev)
{
- struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev);
- struct vidconsole_ctx *com = vidconsole_ctx_from_priv(vc_priv);
- struct console_tt_priv *priv = dev_get_priv(dev);
struct console_tt_ctx *ctx = vidconsole_ctx(dev);
+ struct vidconsole_ctx *com = &ctx->com;
+ struct console_tt_priv *priv = dev_get_priv(dev);
struct vidconsole_cursor *curs = &com->curs;
int x, y, index;
uint height;