[PATCH] pmag*: New framebuffer_alloc API and class_dev changes
DORMANTno replies
From: Kronos <hidden>
Date: 2003-09-15 20:48:08
Hi, this patch converts driver/video/pmag-ba-fb.c and driver/video/pmagb-b-fb.c to framebuffer_alloc. There are also some compilation fixes: ======== drivers/video/pmag-ba-fb.c 1.18 ======== D 1.18 03/09/12 22:08:13+02:00 kronos@kronoz.cjb.net 19 18 12/5/170 P drivers/video/pmag-ba-fb.c C - make the drive compile C - move to framebuffer_alloc ------------------------------------------------ ===== drivers/video/pmag-ba-fb.c 1.17 vs 1.18 =====
--- 1.17/drivers/video/pmag-ba-fb.c Thu Apr 24 12:30:41 2003
+++ 1.18/drivers/video/pmag-ba-fb.c Fri Sep 12 22:08:13 2003@@ -49,7 +49,6 @@ /* * Max 3 TURBOchannel slots -> max 3 PMAG-BA :) */ -static struct fb_info pmagba_fb_info[3]; static struct fb_var_screeninfo pmagbafb_defined = { .xres = 1024,
@@ -63,7 +62,7 @@ .activate = FB_ACTIVATE_NOW, .height = 274, .width = 195, - .accel = FB_ACCEL_NONE, + .accel_flags = FB_ACCEL_NONE, .vmode = FB_VMODE_NONINTERLACED, };
@@ -121,7 +120,13 @@ int __init pmagbafb_init_one(int slot) { unsigned long base_addr = get_tc_base_addr(slot); - struct fb_info *info = &pmagba_fb_info[slot]; + struct fb_info *info; + + info = framebuffer_alloc(0, NULL); + if (!info) { + printk(KERN_ERR "pmag: Cannot allocate memory.\n"); + return -ENOMEM; + } printk("PMAG-BA framebuffer in slot %d\n", slot); /*
@@ -144,10 +149,12 @@ info->screen_base = pmagbafb_fix.smem_start; info->flags = FBINFO_FLAG_DEFAULT; - fb_alloc_cmap(&fb_info.cmap, 256, 0); + fb_alloc_cmap(&info->cmap, 256, 0); - if (register_framebuffer(info) < 0) + if (register_framebuffer(info) < 0) { + kfree(info); return 1; + } return 0; }
======== drivers/video/pmagb-b-fb.c 1.17 ======== D 1.17 03/09/14 00:08:38+02:00 kronos@kronoz.cjb.net 18 17 13/6/172 P drivers/video/pmagb-b-fb.c C - make it compile C - switch to framebuffer_alloc ------------------------------------------------ ===== drivers/video/pmagb-b-fb.c 1.16 vs 1.17 =====
--- 1.16/drivers/video/pmagb-b-fb.c Thu Apr 24 12:30:41 2003
+++ 1.17/drivers/video/pmagb-b-fb.c Sun Sep 14 00:08:38 2003@@ -52,7 +52,6 @@ /* * Max 3 TURBOchannel slots -> max 3 PMAGB-B :) */ -static struct fb_info pmagbb_fb_info[3]; static struct fb_var_screeninfo pmagbbfb_defined = { .xres = 1280,
@@ -70,13 +69,13 @@ .vmode = FB_VMODE_NONINTERLACED, }; -static struct fb_fix_screeninfo pmagbafb_fix = { +static struct fb_fix_screeninfo pmagbbfb_fix = { .id = "PMAGB-BA", .smem_len = (1280 * 1024), .type = FB_TYPE_PACKED_PIXELS, .visual = FB_VISUAL_PSEUDOCOLOR, .line_length = 1280, -} +}; /* * Turn hardware cursor off
@@ -124,7 +123,13 @@ int __init pmagbbfb_init_one(int slot) { unsigned long base_addr = get_tc_base_addr(slot); - struct fb_info *info = &pmagbb_fb_info[slot]; + struct fb_info *info; + + info = framebuffer_alloc(0, NULL); + if (!info) { + printk(KERN_ERR "pmagb: Cannot allocate memory.\n"); + return -ENOMEM; + } printk("PMAGB-BA framebuffer in slot %d\n", slot); /*
@@ -147,10 +152,12 @@ info->screen_base = pmagbbfb_fix.smem_start; info->flags = FBINFO_FLAG_DEFAULT; - fb_alloc_cmap(&fb_info.cmap, 256, 0); + fb_alloc_cmap(&info->cmap, 256, 0); - if (register_framebuffer(info) < 0) + if (register_framebuffer(info) < 0) { + kfree(info); return 1; + } return 0; }
Luca -- Reply-To: kronos@kronoz.cjb.net Home: http://kronoz.cjb.net "Di tutte le perversioni sessuali, la castita` e` la piu` strana". Anatole France ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf