Message ID | 20201028060533.1206307-1-yepeilin.cs@gmail.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | None | expand |
On Wed, Oct 28, 2020 at 02:05:33AM -0400, Peilin Ye wrote: > Subsystems are assuming the number of characters of our built-in fonts. > Include that information in our kernel font descriptor, `struct > font_desc`. > > Signed-off-by: Peilin Ye <yepeilin.cs@gmail.com> > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > Change in v2: > - Rebase onto 5.10-rc1. Hm there's a tiny conflict now with this because of the unsigned vs signed discussion we've had. Can you please rebase the remaining 3 patches onto linux-next or drm-misc-next or so and then resubmit? Thanks, Daniel > > include/linux/font.h | 1 + > lib/fonts/font_10x18.c | 1 + > lib/fonts/font_6x10.c | 1 + > lib/fonts/font_6x11.c | 1 + > lib/fonts/font_6x8.c | 1 + > lib/fonts/font_7x14.c | 1 + > lib/fonts/font_8x16.c | 1 + > lib/fonts/font_8x8.c | 1 + > lib/fonts/font_acorn_8x8.c | 1 + > lib/fonts/font_mini_4x6.c | 1 + > lib/fonts/font_pearl_8x8.c | 1 + > lib/fonts/font_sun12x22.c | 1 + > lib/fonts/font_sun8x16.c | 1 + > lib/fonts/font_ter16x32.c | 1 + > 14 files changed, 14 insertions(+) > > diff --git a/include/linux/font.h b/include/linux/font.h > index b5b312c19e46..54e60ad2252b 100644 > --- a/include/linux/font.h > +++ b/include/linux/font.h > @@ -17,6 +17,7 @@ struct font_desc { > int idx; > const char *name; > int width, height; > + unsigned int charcount; > const void *data; > int pref; > }; > diff --git a/lib/fonts/font_10x18.c b/lib/fonts/font_10x18.c > index 0e2deac97da0..4096c6562494 100644 > --- a/lib/fonts/font_10x18.c > +++ b/lib/fonts/font_10x18.c > @@ -5137,6 +5137,7 @@ const struct font_desc font_10x18 = { > .name = "10x18", > .width = 10, > .height = 18, > + .charcount = 256, > .data = fontdata_10x18.data, > #ifdef __sparc__ > .pref = 5, > diff --git a/lib/fonts/font_6x10.c b/lib/fonts/font_6x10.c > index 87da8acd07db..32786674cf65 100644 > --- a/lib/fonts/font_6x10.c > +++ b/lib/fonts/font_6x10.c > @@ -3083,6 +3083,7 @@ const struct font_desc font_6x10 = { > .name = "6x10", > .width = 6, > .height = 10, > + .charcount = 256, > .data = fontdata_6x10.data, > .pref = 0, > }; > diff --git a/lib/fonts/font_6x11.c b/lib/fonts/font_6x11.c > index 5e975dfa10a5..81e4a3aed44a 100644 > --- a/lib/fonts/font_6x11.c > +++ b/lib/fonts/font_6x11.c > @@ -3346,6 +3346,7 @@ const struct font_desc font_vga_6x11 = { > .name = "ProFont6x11", > .width = 6, > .height = 11, > + .charcount = 256, > .data = fontdata_6x11.data, > /* Try avoiding this font if possible unless on MAC */ > .pref = -2000, > diff --git a/lib/fonts/font_6x8.c b/lib/fonts/font_6x8.c > index 700039a9ceae..5618ae7ef9fa 100644 > --- a/lib/fonts/font_6x8.c > +++ b/lib/fonts/font_6x8.c > @@ -2571,6 +2571,7 @@ const struct font_desc font_6x8 = { > .name = "6x8", > .width = 6, > .height = 8, > + .charcount = 256, > .data = fontdata_6x8.data, > .pref = 0, > }; > diff --git a/lib/fonts/font_7x14.c b/lib/fonts/font_7x14.c > index 86d298f38505..7708e73d491f 100644 > --- a/lib/fonts/font_7x14.c > +++ b/lib/fonts/font_7x14.c > @@ -4113,6 +4113,7 @@ const struct font_desc font_7x14 = { > .name = "7x14", > .width = 7, > .height = 14, > + .charcount = 256, > .data = fontdata_7x14.data, > .pref = 0, > }; > diff --git a/lib/fonts/font_8x16.c b/lib/fonts/font_8x16.c > index 37cedd36ca5e..74125d3570cf 100644 > --- a/lib/fonts/font_8x16.c > +++ b/lib/fonts/font_8x16.c > @@ -4627,6 +4627,7 @@ const struct font_desc font_vga_8x16 = { > .name = "VGA8x16", > .width = 8, > .height = 16, > + .charcount = 256, > .data = fontdata_8x16.data, > .pref = 0, > }; > diff --git a/lib/fonts/font_8x8.c b/lib/fonts/font_8x8.c > index 8ab695538395..96da4bb31ae4 100644 > --- a/lib/fonts/font_8x8.c > +++ b/lib/fonts/font_8x8.c > @@ -2578,6 +2578,7 @@ const struct font_desc font_vga_8x8 = { > .name = "VGA8x8", > .width = 8, > .height = 8, > + .charcount = 256, > .data = fontdata_8x8.data, > .pref = 0, > }; > diff --git a/lib/fonts/font_acorn_8x8.c b/lib/fonts/font_acorn_8x8.c > index 069b3e80c434..ba74053fec7b 100644 > --- a/lib/fonts/font_acorn_8x8.c > +++ b/lib/fonts/font_acorn_8x8.c > @@ -270,6 +270,7 @@ const struct font_desc font_acorn_8x8 = { > .name = "Acorn8x8", > .width = 8, > .height = 8, > + .charcount = 256, > .data = acorndata_8x8.data, > #ifdef CONFIG_ARCH_ACORN > .pref = 20, > diff --git a/lib/fonts/font_mini_4x6.c b/lib/fonts/font_mini_4x6.c > index 1449876c6a27..637708e8c67e 100644 > --- a/lib/fonts/font_mini_4x6.c > +++ b/lib/fonts/font_mini_4x6.c > @@ -2152,6 +2152,7 @@ const struct font_desc font_mini_4x6 = { > .name = "MINI4x6", > .width = 4, > .height = 6, > + .charcount = 256, > .data = fontdata_mini_4x6.data, > .pref = 3, > }; > diff --git a/lib/fonts/font_pearl_8x8.c b/lib/fonts/font_pearl_8x8.c > index 32d65551e7ed..06cde43c7bd2 100644 > --- a/lib/fonts/font_pearl_8x8.c > +++ b/lib/fonts/font_pearl_8x8.c > @@ -2582,6 +2582,7 @@ const struct font_desc font_pearl_8x8 = { > .name = "PEARL8x8", > .width = 8, > .height = 8, > + .charcount = 256, > .data = fontdata_pearl8x8.data, > .pref = 2, > }; > diff --git a/lib/fonts/font_sun12x22.c b/lib/fonts/font_sun12x22.c > index 641a6b4dca42..d0290d79df2c 100644 > --- a/lib/fonts/font_sun12x22.c > +++ b/lib/fonts/font_sun12x22.c > @@ -6156,6 +6156,7 @@ const struct font_desc font_sun_12x22 = { > .name = "SUN12x22", > .width = 12, > .height = 22, > + .charcount = 256, > .data = fontdata_sun12x22.data, > #ifdef __sparc__ > .pref = 5, > diff --git a/lib/fonts/font_sun8x16.c b/lib/fonts/font_sun8x16.c > index 193fe6d988e0..7d83760354a6 100644 > --- a/lib/fonts/font_sun8x16.c > +++ b/lib/fonts/font_sun8x16.c > @@ -268,6 +268,7 @@ const struct font_desc font_sun_8x16 = { > .name = "SUN8x16", > .width = 8, > .height = 16, > + .charcount = 256, > .data = fontdata_sun8x16.data, > #ifdef __sparc__ > .pref = 10, > diff --git a/lib/fonts/font_ter16x32.c b/lib/fonts/font_ter16x32.c > index 91b9c283bd9c..a2cc25b9f8e3 100644 > --- a/lib/fonts/font_ter16x32.c > +++ b/lib/fonts/font_ter16x32.c > @@ -2062,6 +2062,7 @@ const struct font_desc font_ter_16x32 = { > .name = "TER16x32", > .width = 16, > .height = 32, > + .charcount = 256, > .data = fontdata_ter16x32.data, > #ifdef __sparc__ > .pref = 5, > -- > 2.25.1 >
diff --git a/include/linux/font.h b/include/linux/font.h index b5b312c19e46..54e60ad2252b 100644 --- a/include/linux/font.h +++ b/include/linux/font.h @@ -17,6 +17,7 @@ struct font_desc { int idx; const char *name; int width, height; + unsigned int charcount; const void *data; int pref; }; diff --git a/lib/fonts/font_10x18.c b/lib/fonts/font_10x18.c index 0e2deac97da0..4096c6562494 100644 --- a/lib/fonts/font_10x18.c +++ b/lib/fonts/font_10x18.c @@ -5137,6 +5137,7 @@ const struct font_desc font_10x18 = { .name = "10x18", .width = 10, .height = 18, + .charcount = 256, .data = fontdata_10x18.data, #ifdef __sparc__ .pref = 5, diff --git a/lib/fonts/font_6x10.c b/lib/fonts/font_6x10.c index 87da8acd07db..32786674cf65 100644 --- a/lib/fonts/font_6x10.c +++ b/lib/fonts/font_6x10.c @@ -3083,6 +3083,7 @@ const struct font_desc font_6x10 = { .name = "6x10", .width = 6, .height = 10, + .charcount = 256, .data = fontdata_6x10.data, .pref = 0, }; diff --git a/lib/fonts/font_6x11.c b/lib/fonts/font_6x11.c index 5e975dfa10a5..81e4a3aed44a 100644 --- a/lib/fonts/font_6x11.c +++ b/lib/fonts/font_6x11.c @@ -3346,6 +3346,7 @@ const struct font_desc font_vga_6x11 = { .name = "ProFont6x11", .width = 6, .height = 11, + .charcount = 256, .data = fontdata_6x11.data, /* Try avoiding this font if possible unless on MAC */ .pref = -2000, diff --git a/lib/fonts/font_6x8.c b/lib/fonts/font_6x8.c index 700039a9ceae..5618ae7ef9fa 100644 --- a/lib/fonts/font_6x8.c +++ b/lib/fonts/font_6x8.c @@ -2571,6 +2571,7 @@ const struct font_desc font_6x8 = { .name = "6x8", .width = 6, .height = 8, + .charcount = 256, .data = fontdata_6x8.data, .pref = 0, }; diff --git a/lib/fonts/font_7x14.c b/lib/fonts/font_7x14.c index 86d298f38505..7708e73d491f 100644 --- a/lib/fonts/font_7x14.c +++ b/lib/fonts/font_7x14.c @@ -4113,6 +4113,7 @@ const struct font_desc font_7x14 = { .name = "7x14", .width = 7, .height = 14, + .charcount = 256, .data = fontdata_7x14.data, .pref = 0, }; diff --git a/lib/fonts/font_8x16.c b/lib/fonts/font_8x16.c index 37cedd36ca5e..74125d3570cf 100644 --- a/lib/fonts/font_8x16.c +++ b/lib/fonts/font_8x16.c @@ -4627,6 +4627,7 @@ const struct font_desc font_vga_8x16 = { .name = "VGA8x16", .width = 8, .height = 16, + .charcount = 256, .data = fontdata_8x16.data, .pref = 0, }; diff --git a/lib/fonts/font_8x8.c b/lib/fonts/font_8x8.c index 8ab695538395..96da4bb31ae4 100644 --- a/lib/fonts/font_8x8.c +++ b/lib/fonts/font_8x8.c @@ -2578,6 +2578,7 @@ const struct font_desc font_vga_8x8 = { .name = "VGA8x8", .width = 8, .height = 8, + .charcount = 256, .data = fontdata_8x8.data, .pref = 0, }; diff --git a/lib/fonts/font_acorn_8x8.c b/lib/fonts/font_acorn_8x8.c index 069b3e80c434..ba74053fec7b 100644 --- a/lib/fonts/font_acorn_8x8.c +++ b/lib/fonts/font_acorn_8x8.c @@ -270,6 +270,7 @@ const struct font_desc font_acorn_8x8 = { .name = "Acorn8x8", .width = 8, .height = 8, + .charcount = 256, .data = acorndata_8x8.data, #ifdef CONFIG_ARCH_ACORN .pref = 20, diff --git a/lib/fonts/font_mini_4x6.c b/lib/fonts/font_mini_4x6.c index 1449876c6a27..637708e8c67e 100644 --- a/lib/fonts/font_mini_4x6.c +++ b/lib/fonts/font_mini_4x6.c @@ -2152,6 +2152,7 @@ const struct font_desc font_mini_4x6 = { .name = "MINI4x6", .width = 4, .height = 6, + .charcount = 256, .data = fontdata_mini_4x6.data, .pref = 3, }; diff --git a/lib/fonts/font_pearl_8x8.c b/lib/fonts/font_pearl_8x8.c index 32d65551e7ed..06cde43c7bd2 100644 --- a/lib/fonts/font_pearl_8x8.c +++ b/lib/fonts/font_pearl_8x8.c @@ -2582,6 +2582,7 @@ const struct font_desc font_pearl_8x8 = { .name = "PEARL8x8", .width = 8, .height = 8, + .charcount = 256, .data = fontdata_pearl8x8.data, .pref = 2, }; diff --git a/lib/fonts/font_sun12x22.c b/lib/fonts/font_sun12x22.c index 641a6b4dca42..d0290d79df2c 100644 --- a/lib/fonts/font_sun12x22.c +++ b/lib/fonts/font_sun12x22.c @@ -6156,6 +6156,7 @@ const struct font_desc font_sun_12x22 = { .name = "SUN12x22", .width = 12, .height = 22, + .charcount = 256, .data = fontdata_sun12x22.data, #ifdef __sparc__ .pref = 5, diff --git a/lib/fonts/font_sun8x16.c b/lib/fonts/font_sun8x16.c index 193fe6d988e0..7d83760354a6 100644 --- a/lib/fonts/font_sun8x16.c +++ b/lib/fonts/font_sun8x16.c @@ -268,6 +268,7 @@ const struct font_desc font_sun_8x16 = { .name = "SUN8x16", .width = 8, .height = 16, + .charcount = 256, .data = fontdata_sun8x16.data, #ifdef __sparc__ .pref = 10, diff --git a/lib/fonts/font_ter16x32.c b/lib/fonts/font_ter16x32.c index 91b9c283bd9c..a2cc25b9f8e3 100644 --- a/lib/fonts/font_ter16x32.c +++ b/lib/fonts/font_ter16x32.c @@ -2062,6 +2062,7 @@ const struct font_desc font_ter_16x32 = { .name = "TER16x32", .width = 16, .height = 32, + .charcount = 256, .data = fontdata_ter16x32.data, #ifdef __sparc__ .pref = 5,