Atari Atyfb fixes
diff mbox series

Message ID 200305111030.h4BAUBhO019633@callisto.of.borg
State New, archived
Headers show
Series
  • Atari Atyfb fixes
Related show

Commit Message

Geert Uytterhoeven May 11, 2003, 10:30 a.m. UTC
Atyfb fixes for Atari (got reversed in 2.5.69):
  - Add missing allocation of default_par
  - Kill warnings in assignments


Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Comments

Ben Collins May 11, 2003, 3:16 p.m. UTC | #1
On Sun, May 11, 2003 at 12:30:11PM +0200, Geert Uytterhoeven wrote:
> Atyfb fixes for Atari (got reversed in 2.5.69):
>   - Add missing allocation of default_par
>   - Kill warnings in assignments

Thanks for the Cc. The patch looked pretty safe, but I tested it on
sparc64 anyway, and it didn't break anything.

Patch
diff mbox series

--- linux-2.5.x/drivers/video/aty/atyfb_base.c	Mon Feb 10 21:59:19 2003
+++ linux-m68k-2.5.x/drivers/video/aty/atyfb_base.c	Tue Feb 25 18:31:27 2003
@@ -2319,15 +2319,25 @@ 
 			return -ENOMEM;
 		}
 		memset(info, 0, sizeof(struct fb_info));
-		info->fix = atyfb_fix;		
+
+		default_par = kmalloc(sizeof(struct atyfb_par), GFP_ATOMIC);
+		if (!default_par) {
+			printk
+			    ("atyfb_init: can't alloc atyfb_par\n");
+			kfree(info);
+			return -ENXIO;
+		}
+		memset(default_par, 0, sizeof(struct atyfb_par));
+
+		info->fix = atyfb_fix;
 
 		/*
 		 *  Map the video memory (physical address given) to somewhere in the
 		 *  kernel address space.
 		 */
-		info->screen_base = (unsigned long)ioremap(phys_vmembase[m64_num],
+		info->screen_base = ioremap(phys_vmembase[m64_num],
 					 		   phys_size[m64_num]);	
-		info->fix.smem_start = info->screen_base;	/* Fake! */
+		info->fix.smem_start = (unsigned long)info->screen_base;	/* Fake! */
 		default_par->ati_regbase = (unsigned long)ioremap(phys_guiregbase[m64_num],
 							  0x10000) + 0xFC00ul;
 		info->fix.mmio_start = default_par->ati_regbase; /* Fake! */