All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
To: gregkh@linuxfoundation.org
Cc: linux-fbdev@vger.kernel.org, Helge Deller <deller@gmx.de>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	linux-serial@vger.kernel.org,
	"Jiri Slaby \(SUSE\)" <jirislaby@kernel.org>
Subject: [PATCH v2 01/47] vgacon: inline vc_scrolldelta_helper() into vgacon_scrolldelta()
Date: Mon, 22 Jan 2024 12:03:15 +0100	[thread overview]
Message-ID: <20240122110401.7289-2-jirislaby@kernel.org> (raw)
In-Reply-To: <20240122110401.7289-1-jirislaby@kernel.org>

Since commit 74d58cd48a8f ("USB: sisusbvga: remove console support"),
vgacon_scrolldelta() is the only user of vc_scrolldelta_helper().

Inline the helper into vgacon_scrolldelta() and drop it.

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Cc: Helge Deller <deller@gmx.de>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
---
 drivers/tty/vt/vt.c            | 40 ----------------------------------
 drivers/video/console/vgacon.c | 36 ++++++++++++++++++++++++++++--
 include/linux/vt_kern.h        |  3 ---
 3 files changed, 34 insertions(+), 45 deletions(-)

diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index 156efda7c80d..3f3f7c216819 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -4748,43 +4748,3 @@ void vcs_scr_updated(struct vc_data *vc)
 {
 	notify_update(vc);
 }
-
-void vc_scrolldelta_helper(struct vc_data *c, int lines,
-		unsigned int rolled_over, void *base, unsigned int size)
-{
-	unsigned long ubase = (unsigned long)base;
-	ptrdiff_t scr_end = (void *)c->vc_scr_end - base;
-	ptrdiff_t vorigin = (void *)c->vc_visible_origin - base;
-	ptrdiff_t origin = (void *)c->vc_origin - base;
-	int margin = c->vc_size_row * 4;
-	int from, wrap, from_off, avail;
-
-	/* Turn scrollback off */
-	if (!lines) {
-		c->vc_visible_origin = c->vc_origin;
-		return;
-	}
-
-	/* Do we have already enough to allow jumping from 0 to the end? */
-	if (rolled_over > scr_end + margin) {
-		from = scr_end;
-		wrap = rolled_over + c->vc_size_row;
-	} else {
-		from = 0;
-		wrap = size;
-	}
-
-	from_off = (vorigin - from + wrap) % wrap + lines * c->vc_size_row;
-	avail = (origin - from + wrap) % wrap;
-
-	/* Only a little piece would be left? Show all incl. the piece! */
-	if (avail < 2 * margin)
-		margin = 0;
-	if (from_off < margin)
-		from_off = 0;
-	if (from_off > avail - margin)
-		from_off = avail;
-
-	c->vc_visible_origin = ubase + (from + from_off) % wrap;
-}
-EXPORT_SYMBOL_GPL(vc_scrolldelta_helper);
diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
index 8ef1579fa57f..9176fff9ce6e 100644
--- a/drivers/video/console/vgacon.c
+++ b/drivers/video/console/vgacon.c
@@ -138,8 +138,40 @@ static inline void vga_set_mem_top(struct vc_data *c)
 
 static void vgacon_scrolldelta(struct vc_data *c, int lines)
 {
-	vc_scrolldelta_helper(c, lines, vga_rolled_over, (void *)vga_vram_base,
-			vga_vram_size);
+	unsigned long scr_end = c->vc_scr_end - vga_vram_base;
+	unsigned long vorigin = c->vc_visible_origin - vga_vram_base;
+	unsigned long origin = c->vc_origin - vga_vram_base;
+	int margin = c->vc_size_row * 4;
+	int from, wrap, from_off, avail;
+
+	/* Turn scrollback off */
+	if (!lines) {
+		c->vc_visible_origin = c->vc_origin;
+		return;
+	}
+
+	/* Do we have already enough to allow jumping from 0 to the end? */
+	if (vga_rolled_over > scr_end + margin) {
+		from = scr_end;
+		wrap = vga_rolled_over + c->vc_size_row;
+	} else {
+		from = 0;
+		wrap = vga_vram_size;
+	}
+
+	from_off = (vorigin - from + wrap) % wrap + lines * c->vc_size_row;
+	avail = (origin - from + wrap) % wrap;
+
+	/* Only a little piece would be left? Show all incl. the piece! */
+	if (avail < 2 * margin)
+		margin = 0;
+	if (from_off < margin)
+		from_off = 0;
+	if (from_off > avail - margin)
+		from_off = avail;
+
+	c->vc_visible_origin = vga_vram_base + (from + from_off) % wrap;
+
 	vga_set_mem_top(c);
 }
 
diff --git a/include/linux/vt_kern.h b/include/linux/vt_kern.h
index c1f5aebef170..a789ea3ed2a0 100644
--- a/include/linux/vt_kern.h
+++ b/include/linux/vt_kern.h
@@ -168,7 +168,4 @@ void vt_set_led_state(unsigned int console, int leds);
 void vt_kbd_con_start(unsigned int console);
 void vt_kbd_con_stop(unsigned int console);
 
-void vc_scrolldelta_helper(struct vc_data *c, int lines,
-		unsigned int rolled_over, void *_base, unsigned int size);
-
 #endif /* _VT_KERN_H */
-- 
2.43.0


WARNING: multiple messages have this Message-ID (diff)
From: "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
To: gregkh@linuxfoundation.org
Cc: linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
	"Jiri Slaby (SUSE)" <jirislaby@kernel.org>,
	Helge Deller <deller@gmx.de>,
	linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: [PATCH v2 01/47] vgacon: inline vc_scrolldelta_helper() into vgacon_scrolldelta()
Date: Mon, 22 Jan 2024 12:03:15 +0100	[thread overview]
Message-ID: <20240122110401.7289-2-jirislaby@kernel.org> (raw)
In-Reply-To: <20240122110401.7289-1-jirislaby@kernel.org>

Since commit 74d58cd48a8f ("USB: sisusbvga: remove console support"),
vgacon_scrolldelta() is the only user of vc_scrolldelta_helper().

Inline the helper into vgacon_scrolldelta() and drop it.

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Cc: Helge Deller <deller@gmx.de>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
---
 drivers/tty/vt/vt.c            | 40 ----------------------------------
 drivers/video/console/vgacon.c | 36 ++++++++++++++++++++++++++++--
 include/linux/vt_kern.h        |  3 ---
 3 files changed, 34 insertions(+), 45 deletions(-)

diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index 156efda7c80d..3f3f7c216819 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -4748,43 +4748,3 @@ void vcs_scr_updated(struct vc_data *vc)
 {
 	notify_update(vc);
 }
-
-void vc_scrolldelta_helper(struct vc_data *c, int lines,
-		unsigned int rolled_over, void *base, unsigned int size)
-{
-	unsigned long ubase = (unsigned long)base;
-	ptrdiff_t scr_end = (void *)c->vc_scr_end - base;
-	ptrdiff_t vorigin = (void *)c->vc_visible_origin - base;
-	ptrdiff_t origin = (void *)c->vc_origin - base;
-	int margin = c->vc_size_row * 4;
-	int from, wrap, from_off, avail;
-
-	/* Turn scrollback off */
-	if (!lines) {
-		c->vc_visible_origin = c->vc_origin;
-		return;
-	}
-
-	/* Do we have already enough to allow jumping from 0 to the end? */
-	if (rolled_over > scr_end + margin) {
-		from = scr_end;
-		wrap = rolled_over + c->vc_size_row;
-	} else {
-		from = 0;
-		wrap = size;
-	}
-
-	from_off = (vorigin - from + wrap) % wrap + lines * c->vc_size_row;
-	avail = (origin - from + wrap) % wrap;
-
-	/* Only a little piece would be left? Show all incl. the piece! */
-	if (avail < 2 * margin)
-		margin = 0;
-	if (from_off < margin)
-		from_off = 0;
-	if (from_off > avail - margin)
-		from_off = avail;
-
-	c->vc_visible_origin = ubase + (from + from_off) % wrap;
-}
-EXPORT_SYMBOL_GPL(vc_scrolldelta_helper);
diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
index 8ef1579fa57f..9176fff9ce6e 100644
--- a/drivers/video/console/vgacon.c
+++ b/drivers/video/console/vgacon.c
@@ -138,8 +138,40 @@ static inline void vga_set_mem_top(struct vc_data *c)
 
 static void vgacon_scrolldelta(struct vc_data *c, int lines)
 {
-	vc_scrolldelta_helper(c, lines, vga_rolled_over, (void *)vga_vram_base,
-			vga_vram_size);
+	unsigned long scr_end = c->vc_scr_end - vga_vram_base;
+	unsigned long vorigin = c->vc_visible_origin - vga_vram_base;
+	unsigned long origin = c->vc_origin - vga_vram_base;
+	int margin = c->vc_size_row * 4;
+	int from, wrap, from_off, avail;
+
+	/* Turn scrollback off */
+	if (!lines) {
+		c->vc_visible_origin = c->vc_origin;
+		return;
+	}
+
+	/* Do we have already enough to allow jumping from 0 to the end? */
+	if (vga_rolled_over > scr_end + margin) {
+		from = scr_end;
+		wrap = vga_rolled_over + c->vc_size_row;
+	} else {
+		from = 0;
+		wrap = vga_vram_size;
+	}
+
+	from_off = (vorigin - from + wrap) % wrap + lines * c->vc_size_row;
+	avail = (origin - from + wrap) % wrap;
+
+	/* Only a little piece would be left? Show all incl. the piece! */
+	if (avail < 2 * margin)
+		margin = 0;
+	if (from_off < margin)
+		from_off = 0;
+	if (from_off > avail - margin)
+		from_off = avail;
+
+	c->vc_visible_origin = vga_vram_base + (from + from_off) % wrap;
+
 	vga_set_mem_top(c);
 }
 
diff --git a/include/linux/vt_kern.h b/include/linux/vt_kern.h
index c1f5aebef170..a789ea3ed2a0 100644
--- a/include/linux/vt_kern.h
+++ b/include/linux/vt_kern.h
@@ -168,7 +168,4 @@ void vt_set_led_state(unsigned int console, int leds);
 void vt_kbd_con_start(unsigned int console);
 void vt_kbd_con_stop(unsigned int console);
 
-void vc_scrolldelta_helper(struct vc_data *c, int lines,
-		unsigned int rolled_over, void *_base, unsigned int size);
-
 #endif /* _VT_KERN_H */
-- 
2.43.0


  reply	other threads:[~2024-01-22 11:04 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-22 11:03 [PATCH v2 00/47] tty: vt: cleanup and documentation Jiri Slaby (SUSE)
2024-01-22 11:03 ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` Jiri Slaby (SUSE) [this message]
2024-01-22 11:03   ` [PATCH v2 01/47] vgacon: inline vc_scrolldelta_helper() into vgacon_scrolldelta() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 02/47] fbcon: make display_desc a static array in fbcon_startup() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 03/47] tty: vt: fix 20 vs 0x20 typo in EScsiignore Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 04/47] tty: vt: expect valid vc when in tty ops Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 05/47] tty: vt: pass proper pointers from tioclinux() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 06/47] tty: vt: push console lock from tioclinux() down to 2 functions Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 07/47] tty: vt: pass vc_resize_user as a parameter Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 08/47] tty: vt: make vc_is_sel()'s vc const Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 09/47] tty: vt: define an enum for CSI+m codes Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 10/47] tty: vt: use case ranges for CSI+m fg/bg colors Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 11/47] tty: vt: define an enum for CSI+J codes Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 12/47] tty: vt: reflow csi_J() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 13/47] use clamp() for counts in csi_?() handlers Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 14/47] don't pass vc->vc_par[0] to " Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 15/47] tty: vt: define an enum for CSI+K codes Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 16/47] tty: vt: reflow csi_K() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 17/47] tty: vt: define an enum for ascii characters Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 18/47] tty: vt: remove extern from functions in selection.h Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 19/47] tty: vt: make consw::con_debug_*() return void Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 20/47] tty: vt: make init parameter of consw::con_init() a bool Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 21/47] tty: vt: sanitize arguments of consw::con_clear() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 22/47] tty: vt: remove checks for count in consw::con_clear() implementations Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 23/47] tty: vt: add con_putc() helper Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 24/47] tty: vt: eliminate unneeded consw::con_putc() implementations Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 25/47] tty: vt: sanitize consw::con_putc() parameters Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 26/47] tty: vt: sanitize consw::con_putcs() parameters Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 27/47] consoles: use if instead of switch-case in consw::con_cursor() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 28/47] fbdev/core: simplify cursor_state setting in fbcon_ops::cursor() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 29/47] tty: vt: remove CM_* constants Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 30/47] tty: vt: make consw::con_switch() return a bool Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 31/47] tty: vt: stop using -1 for blank mode in consw::con_blank() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 32/47] tty: vt: define a common enum for VESA blanking constants Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 33/47] tty: vt: use " Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 34/47] tty: vt: use enum constants for VESA blanking modes Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 35/47] tty: vt: make types around consw::con_blank() bool Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 36/47] tty: vt: make font of consw::con_font_set() const Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 37/47] tty: vt: make consw::con_font_default()'s name const Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 38/47] tty: vt: change consw::con_set_origin() return type Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 39/47] fbcon: remove consw::con_screen_pos() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 40/47] tty: vt: " Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 41/47] tty: vt: make types of screenpos() more consistent Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 42/47] fbcon: remove fbcon_getxy() Jiri Slaby (SUSE)
2024-01-22 11:03   ` Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 43/47] tty: vt: remove consw::con_getxy() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 44/47] tty: vt: remove unused consw::con_flush_scrollback() Jiri Slaby (SUSE)
2024-01-22 11:03 ` [PATCH v2 45/47] tty: vt: document the rest of struct consw Jiri Slaby (SUSE)
2024-01-22 11:04 ` [PATCH v2 46/47] tty: vt: fix up kernel-doc Jiri Slaby (SUSE)
2024-01-23  4:16   ` Randy Dunlap
2024-01-22 11:04 ` [PATCH v2 47/47] Documentation: add console.rst Jiri Slaby (SUSE)
2024-01-22 20:00 ` [PATCH v2 00/47] tty: vt: cleanup and documentation Helge Deller
2024-01-22 20:00   ` Helge Deller

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=20240122110401.7289-2-jirislaby@kernel.org \
    --to=jirislaby@kernel.org \
    --cc=deller@gmx.de \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.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.