Re: [PATCH v2 00/47] tty: vt: cleanup and documentation

Helge Deller
2024-01-22T20:01:27Z

On 1/22/24 12:03, Jiri Slaby (SUSE) wrote:
> Push the console code (vt.c, vt.h, console.h, ...) into a bit more
> maintainable state. Especially all around consw structure and document
> it.
>
> CSI parser is also a bit cleaned up. More to follow some time in the
> next round.

I've not yet looked through all of those patches, but I
tried to boot up a machine with the STI console driver
and I've not seen any issues yet.
So far:

Tested-by: Helge Deller <deller@gmx.de> # parisc STI console

Helge

> [v2] See respective patches for changes. The major changes:
> * vesa.h introduced
> * parameters of csi*() simplified
>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: dri-devel@lists.freedesktop.org
> Cc: Helge Deller <deller@gmx.de>
> Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
> Cc: Jonathan Corbet <corbet@lwn.net>
> Cc: linux-doc@vger.kernel.org
> Cc: linux-fbdev@vger.kernel.org
> Cc: linux-parisc@vger.kernel.org
> Cc: Martin Hostettler <textshell@uchuujin.de>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
>
> Jiri Slaby (SUSE) (47):
>
> vgacon: inline vc_scrolldelta_helper() into vgacon_scrolldelta()
> fbcon: make display_desc a static array in fbcon_startup()
> tty: vt: fix 20 vs 0x20 typo in EScsiignore
> tty: vt: expect valid vc when in tty ops
> tty: vt: pass proper pointers from tioclinux()
> tty: vt: push console lock from tioclinux() down to 2 functions
> tty: vt: pass vc_resize_user as a parameter
> tty: vt: make vc_is_sel()'s vc const
> tty: vt: define an enum for CSI+m codes
> tty: vt: use case ranges for CSI+m fg/bg colors
> tty: vt: define an enum for CSI+J codes
> tty: vt: reflow csi_J()
> use clamp() for counts in csi_?() handlers
> don't pass vc->vc_par[0] to csi_?() handlers
> tty: vt: define an enum for CSI+K codes
> tty: vt: reflow csi_K()
> tty: vt: define an enum for ascii characters
> tty: vt: remove extern from functions in selection.h
> tty: vt: make consw::con_debug_*() return void
> tty: vt: make init parameter of consw::con_init() a bool
> tty: vt: sanitize arguments of consw::con_clear()
> tty: vt: remove checks for count in consw::con_clear() implementations
> tty: vt: add con_putc() helper
> tty: vt: eliminate unneeded consw::con_putc() implementations
> tty: vt: sanitize consw::con_putc() parameters
> tty: vt: sanitize consw::con_putcs() parameters
> consoles: use if instead of switch-case in consw::con_cursor()
> fbdev/core: simplify cursor_state setting in fbcon_ops::cursor()
> tty: vt: remove CM_* constants
> tty: vt: make consw::con_switch() return a bool
> tty: vt: stop using -1 for blank mode in consw::con_blank()
> tty: vt: define a common enum for VESA blanking constants
> tty: vt: use VESA blanking constants
> tty: vt: use enum constants for VESA blanking modes
> tty: vt: make types around consw::con_blank() bool
> tty: vt: make font of consw::con_font_set() const
> tty: vt: make consw::con_font_default()'s name const
> tty: vt: change consw::con_set_origin() return type
> fbcon: remove consw::con_screen_pos()
> tty: vt: remove consw::con_screen_pos()
> tty: vt: make types of screenpos() more consistent
> fbcon: remove fbcon_getxy()
> tty: vt: remove consw::con_getxy()
> tty: vt: remove unused consw::con_flush_scrollback()
> tty: vt: document the rest of struct consw
> tty: vt: fix up kernel-doc
> Documentation: add console.rst
>
> Documentation/driver-api/tty/console.rst | 45 ++
> Documentation/driver-api/tty/index.rst | 1 +
> drivers/tty/vt/selection.c | 43 +-
> drivers/tty/vt/vt.c | 645 +++++++++++------------
> drivers/tty/vt/vt_ioctl.c | 6 +-
> drivers/video/console/dummycon.c | 38 +-
> drivers/video/console/mdacon.c | 43 +-
> drivers/video/console/newport_con.c | 69 +--
> drivers/video/console/sticon.c | 79 ++-
> drivers/video/console/vgacon.c | 152 +++---
> drivers/video/fbdev/core/bitblit.c | 13 +-
> drivers/video/fbdev/core/fbcon.c | 123 ++---
> drivers/video/fbdev/core/fbcon.h | 4 +-
> drivers/video/fbdev/core/fbcon_ccw.c | 13 +-
> drivers/video/fbdev/core/fbcon_cw.c | 13 +-
> drivers/video/fbdev/core/fbcon_ud.c | 13 +-
> drivers/video/fbdev/core/tileblit.c | 4 +-
> include/linux/console.h | 124 +++--
> include/linux/console_struct.h | 1 -
> include/linux/selection.h | 56 +-
> include/linux/vt_kern.h | 12 +-
> include/uapi/linux/fb.h | 8 +-
> include/uapi/linux/vesa.h | 18 +
> 23 files changed, 755 insertions(+), 768 deletions(-)
> create mode 100644 Documentation/driver-api/tty/console.rst
> create mode 100644 include/uapi/linux/vesa.h
>