From: Jiri Slaby <jirislaby@kernel.org>
To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
kbd@lists.altlinux.org
Cc: linux-kernel@vger.kernel.org
Subject: Re: [kbd] [patch 1/3] VT: Add height parameter to con_font_get/set consw operations
Date: Tue, 6 Dec 2022 07:40:30 +0100 [thread overview]
Message-ID: <27ade063-79df-dad9-0427-e16f1ddb43ef@kernel.org> (raw)
In-Reply-To: <20221205000807.751605665@ens-lyon.org>
On 05. 12. 22, 1:07, Samuel Thibault wrote:
> The current con_font_get/set API currently hardcodes a 32-pixel-tall
> limitation, which only dates from the old VGA hardware which could not
> handle taller fonts than that.
>
> This change just adds a vpitch parameter to release this
> constraint. Drivers which do not support vpitch != 32 can just return
> EINVAL when it is not 32, font loading tools will revert to trying 32
> and succeed.
>
> This change makes the fbcon driver consider vpitch appropriately, thus
> making it able to load large fonts.
>
> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
>
...
> --- linux-6.0.orig/drivers/usb/misc/sisusbvga/sisusb_con.c
> +++ linux-6.0/drivers/usb/misc/sisusbvga/sisusb_con.c
...
> @@ -1243,13 +1244,15 @@ sisusbcon_font_set(struct vc_data *c, st
>
> /* Interface routine */
> static int
> -sisusbcon_font_get(struct vc_data *c, struct console_font *font)
> +sisusbcon_font_get(struct vc_data *c, struct console_font *font, unsigned int vpitch)
> {
> struct sisusb_usb_data *sisusb;
>
> sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num);
> if (!sisusb)
> return -ENODEV;
> + if (vpitch != 32)
> + return -EINVAL;
>
> /* sisusb->lock is down */
>
> @@ -1268,7 +1271,7 @@ sisusbcon_font_get(struct vc_data *c, st
> }
>
> /* Copy 256 chars only, like vgacon */
> - memcpy(font->data, sisusb->font_backup, 256 * 32);
> + memcpy(font->data, sisusb->font_backup, 256 * height);
Have you tested this? What does this 'height' refer to?
thanks,
--
js
suse labs
WARNING: multiple messages have this Message-ID (diff)
From: Jiri Slaby <jirislaby@kernel.org>
To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
kbd@lists.altlinux.org
Cc: linux-kernel@vger.kernel.org
Subject: Re: [patch 1/3] VT: Add height parameter to con_font_get/set consw operations
Date: Tue, 6 Dec 2022 07:40:30 +0100 [thread overview]
Message-ID: <27ade063-79df-dad9-0427-e16f1ddb43ef@kernel.org> (raw)
In-Reply-To: <20221205000807.751605665@ens-lyon.org>
On 05. 12. 22, 1:07, Samuel Thibault wrote:
> The current con_font_get/set API currently hardcodes a 32-pixel-tall
> limitation, which only dates from the old VGA hardware which could not
> handle taller fonts than that.
>
> This change just adds a vpitch parameter to release this
> constraint. Drivers which do not support vpitch != 32 can just return
> EINVAL when it is not 32, font loading tools will revert to trying 32
> and succeed.
>
> This change makes the fbcon driver consider vpitch appropriately, thus
> making it able to load large fonts.
>
> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
>
...
> --- linux-6.0.orig/drivers/usb/misc/sisusbvga/sisusb_con.c
> +++ linux-6.0/drivers/usb/misc/sisusbvga/sisusb_con.c
...
> @@ -1243,13 +1244,15 @@ sisusbcon_font_set(struct vc_data *c, st
>
> /* Interface routine */
> static int
> -sisusbcon_font_get(struct vc_data *c, struct console_font *font)
> +sisusbcon_font_get(struct vc_data *c, struct console_font *font, unsigned int vpitch)
> {
> struct sisusb_usb_data *sisusb;
>
> sisusb = sisusb_get_sisusb_lock_and_check(c->vc_num);
> if (!sisusb)
> return -ENODEV;
> + if (vpitch != 32)
> + return -EINVAL;
>
> /* sisusb->lock is down */
>
> @@ -1268,7 +1271,7 @@ sisusbcon_font_get(struct vc_data *c, st
> }
>
> /* Copy 256 chars only, like vgacon */
> - memcpy(font->data, sisusb->font_backup, 256 * 32);
> + memcpy(font->data, sisusb->font_backup, 256 * height);
Have you tested this? What does this 'height' refer to?
thanks,
--
js
suse labs
next prev parent reply other threads:[~2022-12-06 6:40 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-05 0:07 [kbd] [patch 0/3] VT: Support >32x32 fonts for hidpi displays Samuel Thibault
2022-12-05 0:07 ` Samuel Thibault
2022-12-05 0:07 ` [kbd] [patch 1/3] VT: Add height parameter to con_font_get/set consw operations Samuel Thibault
2022-12-05 0:07 ` Samuel Thibault
2022-12-06 6:40 ` Jiri Slaby [this message]
2022-12-06 6:40 ` Jiri Slaby
2022-12-06 20:39 ` [kbd] " Samuel Thibault
2022-12-06 20:39 ` Samuel Thibault
2022-12-07 7:39 ` [kbd] " Jiri Slaby
2022-12-07 7:39 ` Jiri Slaby
2022-12-07 8:21 ` [kbd] " Greg Kroah-Hartman
2022-12-07 8:21 ` Greg Kroah-Hartman
2022-12-05 0:07 ` [kbd] [patch 2/3] VT: Add KD_FONT_OP_SET/GET_TALL operations Samuel Thibault
2022-12-05 0:07 ` Samuel Thibault
2022-12-05 0:07 ` [kbd] [patch 3/3] VT: Bump font size limitation to 64x128 pixels Samuel Thibault
2022-12-05 0:07 ` Samuel Thibault
2022-12-06 6:48 ` [kbd] " Jiri Slaby
2022-12-06 6:48 ` Jiri Slaby
2022-12-06 20:47 ` [kbd] " Samuel Thibault
2022-12-06 20:47 ` Samuel Thibault
2022-12-05 0:09 ` [kbd] [patch 1/1] font: Leverage KD_FONT_OP_GET/SET_TALL font operations Samuel Thibault
2022-12-05 0:09 ` Samuel Thibault
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=27ade063-79df-dad9-0427-e16f1ddb43ef@kernel.org \
--to=jirislaby@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=kbd@lists.altlinux.org \
--cc=linux-kernel@vger.kernel.org \
--cc=samuel.thibault@ens-lyon.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.