Thread (8 messages) 8 messages, 2 authors, 2020-02-07

Re: [PATCH 1/3] fbdev/g364fb: Fix build failure

From: Philippe Mathieu-Daudé <hidden>
Date: 2020-02-05 18:02:25
Also in: dri-devel, linux-mips, lkml

On Sun, Feb 2, 2020 at 3:41 AM Finn Thain [off-list ref] wrote:
This patch resolves these compiler errors and warnings --

  CC      drivers/video/fbdev/g364fb.o
drivers/video/fbdev/g364fb.c: In function 'g364fb_cursor':
drivers/video/fbdev/g364fb.c:137:9: error: 'x' undeclared (first use in this function)
drivers/video/fbdev/g364fb.c:137:9: note: each undeclared identifier is reported only once for each function it appears in
drivers/video/fbdev/g364fb.c:137:7: error: implicit declaration of function 'fontwidth' [-Werror=implicit-function-declaration]
drivers/video/fbdev/g364fb.c:137:23: error: 'p' undeclared (first use in this function)
drivers/video/fbdev/g364fb.c:137:38: error: 'y' undeclared (first use in this function)
drivers/video/fbdev/g364fb.c:137:7: error: implicit declaration of function 'fontheight' [-Werror=implicit-function-declaration]
drivers/video/fbdev/g364fb.c: In function 'g364fb_init':
drivers/video/fbdev/g364fb.c:233:24: error: 'fbvar' undeclared (first use in this function)
drivers/video/fbdev/g364fb.c:234:24: error: 'xres' undeclared (first use in this function)
18 years unnoticed...
drivers/video/fbdev/g364fb.c:201:14: warning: unused variable 'j' [-Wunused-variable]
drivers/video/fbdev/g364fb.c:197:25: warning: unused variable 'pal_ptr' [-Wunused-variable]

The MIPS Magnum framebuffer console now works when tested in QEMU.

Cc: Bartlomiej Zolnierkiewicz <redacted>
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
This commit is the kernel 'git origin' import, not the proper reference.

The actual change is between v2.5.17/2.5.19:
https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/diff/drivers/video/g364fb.c?id³0e6e183a728923267
Date: 2002-05-22 07:52:33...

The same commit introduced the changes in g364fb_cursor(), which was
implemented previous to v2.4.0 so it is hard to follow from there.

Nobody complains during 18 years so I doubt anyone care that
g364fb_cursor() is removed.
And by removing it, you improve the kernel quality, so:
Reviewed-by: Philippe Mathieu-Daudé <redacted>
(Maybe remove the unhelpful 'Fixes' tag).
quoted hunk ↗ jump to hunk
Signed-off-by: Finn Thain <redacted>
---
 drivers/video/fbdev/g364fb.c | 29 +++--------------------------
 1 file changed, 3 insertions(+), 26 deletions(-)
diff --git a/drivers/video/fbdev/g364fb.c b/drivers/video/fbdev/g364fb.c
index 223896cc5f7d..fb26230a3c7b 100644
--- a/drivers/video/fbdev/g364fb.c
+++ b/drivers/video/fbdev/g364fb.c
@@ -108,7 +108,6 @@ static int g364fb_pan_display(struct fb_var_screeninfo *var,
 static int g364fb_setcolreg(u_int regno, u_int red, u_int green,
                            u_int blue, u_int transp,
                            struct fb_info *info);
-static int g364fb_cursor(struct fb_info *info, struct fb_cursor *cursor);
 static int g364fb_blank(int blank, struct fb_info *info);

 static struct fb_ops g364fb_ops = {
@@ -119,28 +118,8 @@ static struct fb_ops g364fb_ops = {
        .fb_fillrect    = cfb_fillrect,
        .fb_copyarea    = cfb_copyarea,
        .fb_imageblit   = cfb_imageblit,
-       .fb_cursor      = g364fb_cursor,
 };

-int g364fb_cursor(struct fb_info *info, struct fb_cursor *cursor)
-{
-
-       switch (cursor->enable) {
-       case CM_ERASE:
-               *(unsigned int *) CTLA_REG |= CURS_TOGGLE;
-               break;
-
-       case CM_MOVE:
-       case CM_DRAW:
-               *(unsigned int *) CTLA_REG &= ~CURS_TOGGLE;
-               *(unsigned int *) CURS_POS_REG > -                   ((x * fontwidth(p)) << 12) | ((y * fontheight(p)) -
-                                                 info->var.yoffset);
-               break;
-       }
-       return 0;
-}
-
 /*
  *  Pan or Wrap the Display
  *
@@ -194,11 +173,9 @@ static int g364fb_setcolreg(u_int regno, u_int red, u_int green,
  */
 int __init g364fb_init(void)
 {
-       volatile unsigned int *pal_ptr > -           (volatile unsigned int *) CLR_PAL_REG;
        volatile unsigned int *curs_pal_ptr >             (volatile unsigned int *) CURS_PAL_REG;
-       int mem, i, j;
+       int mem, i;

        if (fb_get_options("g364fb", NULL))
                return -ENODEV;
@@ -230,8 +207,8 @@ int __init g364fb_init(void)
         */
        *(unsigned short *) (CURS_PAT_REG + 14 * 64) = 0xffff;
        *(unsigned short *) (CURS_PAT_REG + 15 * 64) = 0xffff;
-       fb_var.xres_virtual = fbvar.xres;
-       fb_fix.line_length = (xres / 8) * fb_var.bits_per_pixel;
+       fb_var.xres_virtual = fb_var.xres;
+       fb_fix.line_length = fb_var.xres_virtual * fb_var.bits_per_pixel / 8;
        fb_fix.smem_start = 0x40000000; /* physical address */
        /* get size of video memory; this is special for the JAZZ hardware */
        mem = (r4030_read_reg32(JAZZ_R4030_CONFIG) >> 8) & 3;
--
2.24.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help