The return value of consw::con_set_origin() is only true/false, meaining
if vc->vc_origin is set to vc->vc_screenbuf or not.

So switch the type and returned values accordingly.

And document the hook.

Signed-off-by: Jiri Slaby (SUSE) <jirisl...@kernel.org>
Cc: Helge Deller <del...@gmx.de>
Cc: linux-fb...@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
---
 drivers/video/console/vgacon.c | 8 ++++----
 include/linux/console.h        | 5 ++++-
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
index ea086b39c6f5..4a40da81990d 100644
--- a/drivers/video/console/vgacon.c
+++ b/drivers/video/console/vgacon.c
@@ -65,7 +65,7 @@ static struct vgastate vgastate;
  *  Interface used by the world
  */
 
-static int vgacon_set_origin(struct vc_data *c);
+static bool vgacon_set_origin(struct vc_data *c);
 
 static struct uni_pagedict *vgacon_uni_pagedir;
 static int vgacon_refcount;
@@ -1100,15 +1100,15 @@ static int vgacon_resize(struct vc_data *c, unsigned 
int width,
        return 0;
 }
 
-static int vgacon_set_origin(struct vc_data *c)
+static bool vgacon_set_origin(struct vc_data *c)
 {
        if (vga_is_gfx ||       /* We don't play origin tricks in graphic modes 
*/
            (console_blanked && !vga_palette_blanked))  /* Nor we write to 
blanked screens */
-               return 0;
+               return false;
        c->vc_origin = c->vc_visible_origin = vga_vram_base;
        vga_set_mem_top(c);
        vga_rolled_over = 0;
-       return 1;
+       return true;
 }
 
 static void vgacon_save_screen(struct vc_data *c)
diff --git a/include/linux/console.h b/include/linux/console.h
index 543de22a3f23..c07e1ce6bd14 100644
--- a/include/linux/console.h
+++ b/include/linux/console.h
@@ -63,6 +63,9 @@ enum vc_intensity;
  * @con_set_palette: sets the palette of the console to @table (optional)
  * @con_scrolldelta: the contents of the console should be scrolled by @lines.
  *                  Invoked by user. (optional)
+ * @con_set_origin: set origin (see &vc_data::vc_origin) of the @vc. If not
+ *             provided or returns false, the origin is set to
+ *             @vc->vc_screenbuf. (optional)
  */
 struct consw {
        struct module *owner;
@@ -95,7 +98,7 @@ struct consw {
        void    (*con_set_palette)(struct vc_data *vc,
                        const unsigned char *table);
        void    (*con_scrolldelta)(struct vc_data *vc, int lines);
-       int     (*con_set_origin)(struct vc_data *vc);
+       bool    (*con_set_origin)(struct vc_data *vc);
        void    (*con_save_screen)(struct vc_data *vc);
        u8      (*con_build_attr)(struct vc_data *vc, u8 color,
                        enum vc_intensity intensity,
-- 
2.43.0

Reply via email to