Re: [PATCH] fbdev phys_to_virt() bugfix

Linus Torvalds (torvalds@transmeta.com)
Wed, 27 Jan 1999 10:22:23 -0800 (PST)


On Wed, 27 Jan 1999, Geert Uytterhoeven wrote:
> diff -u --recursive --exclude-from=/home/geert/diff-excludes-linux --new-file native-2.2.0/drivers/video/skeletonfb.c linux/drivers/video/skeletonfb.c
> --- native-2.2.0/drivers/video/skeletonfb.c Mon Oct 5 19:36:05 1998
> +++ linux/drivers/video/skeletonfb.c Sun Jan 24 20:27:02 1999
> @@ -240,12 +240,13 @@
> return 0;
> }
>
> -static void xxx_set_dispsw(const void *par, struct display *disp,
> - struct fb_info_gen *info)
> +static void xxx_set_disp(const void *par, struct display *disp,
> + struct fb_info_gen *info)
> {
> unsigned long flags;
>
> /*
> + * Fill in a pointer with the virtual address of the mapped frame buffer.
> * Fill in a pointer to appropriate low level text console operations (and
> * optionally a pointer to help data) for the video mode `par' of your
> * video hardware. These can be generic software routines, or hardware
> @@ -254,6 +255,7 @@
> * pointer to dummy operations, and there will be no text output.
> */
> save_flags(flags); cli();
> + disp->screen_base = virtual_frame_buffer_address;
> #ifdef FBCON_HAS_CFB8
> if (is_cfb8) {
> disp->dispsw = fbcon_cfb8;
> @@ -278,7 +280,6 @@
> } else
> #endif
> disp->dispsw = &fbcon_dummy;
> - restore_flags(flags);
> }
>
>

The above cannot be correct. You remove the thing that restores flags.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/