* [2.6 patch] pm3fb: remove kernel 2.2 code
@ 2005-02-11 16:43 Adrian Bunk
0 siblings, 0 replies; 4+ messages in thread
From: Adrian Bunk @ 2005-02-11 16:43 UTC (permalink / raw)
To: Andrew Morton; +Cc: adaplas, linux-fbdev-devel, linux-kernel
This patch removes kernel 2.2 code from pm3fb.{c,h}.
It also removes KERNEL_2_4 and KERNEL_2_5 since all places where this
was used had a
#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
(Yes, I know the driver is marked as BROKEN.)
Signed-off-by: Adrian Bunk <bunk@stusta.de>
---
This patch was already sent on:
- 8 Feb 2004
- 21 Nov 2004
diffstat output:
drivers/video/pm3fb.c | 287 +++++++-----------------------------------
include/video/pm3fb.h | 40 -----
2 files changed, 54 insertions(+), 273 deletions(-)
Please apply
Adrian
--- linux-2.6.2-mm1/include/video/pm3fb.h.old 2004-02-07 21:50:06.000000000 +0100
+++ linux-2.6.2-mm1/include/video/pm3fb.h 2004-02-07 22:01:37.000000000 +0100
@@ -1119,34 +1119,6 @@
/* ***** pm3fb useful define and macro ***** */
/* ***************************************** */
-/* kernel -specific definitions */
-/* what kernel is this ? */
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)))
-#define KERNEL_2_5
-#endif
-
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)))
-#define KERNEL_2_4
-#endif
-
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0)))
-#define KERNEL_2_2
-/* pci_resource_start, available in 2.2.18 */
-#include <linux/kcomp.h>
-#ifdef CONFIG_FB_OF
-#define SUPPORT_FB_OF
-#endif
-#endif
-
-#if (!defined(KERNEL_2_2)) && (!defined(KERNEL_2_4)) && (!defined(KERNEL_2_5))
-#error "Only kernel 2.2.x, kernel 2.4.y and kernel 2.5.z might work"
-#endif
-
-/* not sure if/why it's needed. doesn't work without on my PowerMac... */
-#ifdef __BIG_ENDIAN
-#define MUST_BYTESWAP
-#endif
-
/* permedia3 -specific definitions */
#define PM3_SCALE_TO_CLOCK(pr, fe, po) ((2 * PM3_REF_CLOCK * fe) / (pr * (1 << (po))))
@@ -1203,19 +1175,9 @@
/* ******************************************** */
/* ***** A bunch of register-access macro ***** */
/* ******************************************** */
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP /* we are writing big_endian to big_endian through a little_endian macro */
-#define PM3_READ_REG(r) __swab32(readl((l_fb_info->vIOBase + r)))
-#define PM3_WRITE_REG(r, v) writel(__swab32(v), (l_fb_info->vIOBase + r))
-#else /* MUST_BYTESWAP */
-#define PM3_WRITE_REG(r, v) writel(v, (l_fb_info->vIOBase + r))
-#define PM3_READ_REG(r) readl((l_fb_info->vIOBase + r))
-#endif /* MUST_BYTESWAP */
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* native-endian access */
+
#define PM3_WRITE_REG(r, v) fb_writel(v, (l_fb_info->vIOBase + r))
#define PM3_READ_REG(r) fb_readl((l_fb_info->vIOBase + r))
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
#define depth2bpp(d) ((d + 7L) & ~7L)
--- linux-2.6.2-mm1/drivers/video/pm3fb.c.old 2004-02-07 21:53:04.000000000 +0100
+++ linux-2.6.2-mm1/drivers/video/pm3fb.c 2004-02-07 22:03:22.000000000 +0100
@@ -137,9 +137,6 @@
unsigned long use_current;
struct pm3fb_par *current_par;
struct pci_dev *dev; /* PCI device */
-#ifdef SUPPORT_FB_OF
- struct device_node *dn; /* OF node for the PCI device */
-#endif /* SUPPORT_FB_OF */
unsigned long board_type; /* index in the cardbase */
unsigned char *fb_base; /* framebuffer memory base */
u32 fb_size; /* framebuffer memory size */
@@ -665,20 +662,6 @@
/* the struct that hold them together */
-#ifdef KERNEL_2_2
-struct fbgen_hwswitch pm3fb_switch = {
- pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
- pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg, pm3fb_setcolreg,
- pm3fb_pan_display, pm3fb_blank, pm3fb_set_disp
-};
-
-static struct fb_ops pm3fb_ops = {
- fbgen_get_fix, fbgen_get_var, fbgen_set_var,
- fbgen_get_cmap, fbgen_set_cmap, fbgen_pan_display, pm3fb_ioctl,
- NULL, NULL
-};
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
struct fbgen_hwswitch pm3fb_switch = {
pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg,
@@ -697,7 +680,7 @@
.fb_blank = fbgen_blank,
.fb_ioctl = pm3fb_ioctl,
};
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
+
#ifdef PM3FB_USE_ACCEL
#ifdef FBCON_HAS_CFB32
static struct display_switch pm3fb_cfb32 = {
@@ -1451,26 +1434,11 @@
/* pm3 split up memory, replicates, and do a lot of nasty stuff IMHO ;-) */
for (i = 0; i < 32; i++) {
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(i * 0x00345678),
- (l_fb_info->v_fb + (i * 1048576)));
-#else
- writel(i * 0x00345678, (l_fb_info->v_fb + (i * 1048576)));
-#endif
- mb();
-#ifdef MUST_BYTESWAP
- temp1 = __swab32(readl((l_fb_info->v_fb + (i * 1048576))));
-#else
- temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
-#endif
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(i * 0x00345678,
(l_fb_info->v_fb + (i * 1048576)));
mb();
temp1 = fb_readl((l_fb_info->v_fb + (i * 1048576)));
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
+
/* Let's check for wrapover, write will fail at 16MB boundary */
if (temp1 == (i * 0x00345678))
memsize = i;
@@ -1489,31 +1457,6 @@
}
for (i = 32; i < 64; i++) {
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(i * 0x00345678),
- (l_fb_info->v_fb + (i * 1048576)));
-#else
- writel(i * 0x00345678,
- (l_fb_info->v_fb + (i * 1048576)));
-#endif
- mb();
-#ifdef MUST_BYTESWAP
- temp1 =
- __swab32(readl
- ((l_fb_info->v_fb + (i * 1048576))));
- temp2 =
- __swab32(readl
- ((l_fb_info->v_fb +
- ((i - 32) * 1048576))));
-#else
- temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
- temp2 =
- readl((l_fb_info->v_fb +
- ((i - 32) * 1048576)));
-#endif
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(i * 0x00345678,
(l_fb_info->v_fb + (i * 1048576)));
mb();
@@ -1522,7 +1465,6 @@
temp2 =
fb_readl((l_fb_info->v_fb +
((i - 32) * 1048576)));
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
if ((temp1 == (i * 0x00345678)) && (temp2 == 0)) /* different value, different RAM... */
memsize = i;
else
@@ -1565,16 +1507,7 @@
for (i = 0; i < (l_fb_info->fb_size / sizeof(u32)) ; i++) /* clear entire FB memory to black */
{
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(cc), (l_fb_info->v_fb + (i * sizeof(u32))));
-#else
- writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
-#endif
-#endif
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
-#endif
}
}
@@ -3424,89 +3357,63 @@
for (i = 0; i < PM3_MAX_BOARD; i++) {
l_fb_info = &(fb_info[i]);
if ((l_fb_info->dev) && (!disable[i])) { /* PCI device was found and not disabled by user */
-#ifdef SUPPORT_FB_OF
- struct device_node *dp =
- find_pci_device_OFnode(l_fb_info->dev->bus->
- number,
- l_fb_info->dev->devfn);
-
- if ((dp) && (!strncmp(dp->name, "formacGA12", 10))) {
- /* do nothing, init of board is done in pm3fb_of_init */
- } else {
-#endif
- DPRINTK(2,
- "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
- (unsigned long) l_fb_info->dev,
- (unsigned long) l_fb_info->dev->
- vendor,
- (unsigned long) l_fb_info->dev->
- device,
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 0),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 1),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 2),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 3),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 4),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 5),
- (unsigned long) l_fb_info->dev->
- irq);
-
- l_fb_info->pIOBase =
- (unsigned char *)
- pci_resource_start(l_fb_info->dev, 0);
+ DPRINTK(2,
+ "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
+ (unsigned long) l_fb_info->dev,
+ (unsigned long) l_fb_info->dev->vendor,
+ (unsigned long) l_fb_info->dev->device,
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 0),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 1),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 2),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 3),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 4),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 5),
+ (unsigned long) l_fb_info->dev->irq);
+
+ l_fb_info->pIOBase =
+ (unsigned char *)
+ pci_resource_start(l_fb_info->dev, 0);
#ifdef __BIG_ENDIAN
- l_fb_info->pIOBase += PM3_REGS_SIZE;
+ l_fb_info->pIOBase += PM3_REGS_SIZE;
#endif
- l_fb_info->vIOBase = (unsigned char *) -1;
- l_fb_info->p_fb =
- (unsigned char *)
- pci_resource_start(l_fb_info->dev, 1);
- l_fb_info->v_fb = (unsigned char *) -1;
+ l_fb_info->vIOBase = (unsigned char *) -1;
+ l_fb_info->p_fb =
+ (unsigned char *)
+ pci_resource_start(l_fb_info->dev, 1);
+ l_fb_info->v_fb = (unsigned char *) -1;
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* full resource management, new in linux-2.4.x */
- if (!request_mem_region
- ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
- "pm3fb")) {
- printk
- (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
- l_fb_info->board_num);
- continue;
- }
if (!request_mem_region
- ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
- "pm3fb I/O regs")) {
- printk
- (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
- l_fb_info->board_num);
- continue;
- }
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
- if (forcesize[l_fb_info->board_num])
- l_fb_info->fb_size = forcesize[l_fb_info->board_num];
-
- l_fb_info->fb_size =
- pm3fb_size_memory(l_fb_info);
+ ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
+ "pm3fb")) {
+ printk
+ (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
+ l_fb_info->board_num);
+ continue;
+ }
+ if (!request_mem_region
+ ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
+ "pm3fb I/O regs")) {
+ printk
+ (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
+ l_fb_info->board_num);
+ continue;
+ }
+ if (forcesize[l_fb_info->board_num])
+ l_fb_info->fb_size = forcesize[l_fb_info->board_num];
+ l_fb_info->fb_size =
+ pm3fb_size_memory(l_fb_info);
if (l_fb_info->fb_size) {
- (void) pci_enable_device(l_fb_info->dev);
- pm3fb_common_init(l_fb_info);
- } else
- printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
-
-#ifdef SUPPORT_FB_OF
- }
-#endif /* SUPPORT_FB_OF */
+ (void) pci_enable_device(l_fb_info->dev);
+ pm3fb_common_init(l_fb_info);
+ } else
+ printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
}
}
}
@@ -3590,12 +3497,7 @@
/* ***** standard FB API init functions ***** */
/* ****************************************** */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
int __init pm3fb_setup(char *options)
-#endif
-#ifdef KERNEL_2_2
-__initfunc(void pm3fb_setup(char *options, int *ints))
-#endif
{
long opsi = strlen(options);
@@ -3606,17 +3508,10 @@
PM3_OPTIONS_SIZE) ? PM3_OPTIONS_SIZE : (opsi + 1));
g_options[PM3_OPTIONS_SIZE - 1] = 0;
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
return (0);
-#endif
}
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
int __init pm3fb_init(void)
-#endif
-#ifdef KERNEL_2_2
-__initfunc(void pm3fb_init(void))
-#endif
{
DTRACE;
@@ -3629,82 +3524,8 @@
if (!fb_info[0].dev) { /* not even one board ??? */
DPRINTK(1, "No PCI Permedia3 board detected\n");
}
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
return (0);
-#endif
-}
-
-#ifdef SUPPORT_FB_OF /* linux-2.2.x only */
-__initfunc(void pm3fb_of_init(struct device_node *dp))
-{
- struct pm3fb_info *l_fb_info = NULL;
- unsigned long i;
- long bn = -1;
- struct device_node *dn;
-
- DTRACE;
-
- DPRINTK(2, "OpenFirmware board : %s\n", dp->full_name);
-
- for (i = 0; i < dp->n_addrs; i++) {
- DPRINTK(2, "MemRange : 0x%08x - 0x%x\n",
- dp->addrs[i].address, dp->addrs[i].size);
- }
-
- for (i = 0; i < PM3_MAX_BOARD; i++) { /* find which PCI board is the OF device */
- if (fb_info[i].dev) {
- dn = find_pci_device_OFnode(fb_info[i].dev->bus->
- number,
- fb_info[i].dev->devfn);
- if (dn == dp) {
- if (bn == -1)
- bn = i;
- else {
- DPRINTK(1,
- "Error: Multiple PCI device for a single OpenFirmware node\n");
- }
- }
- }
- }
-
- if (bn == -1) {
- DPRINTK(1, "Warning: non-PCI Permedia3 found\n");
- i = 0;
- while (fb_info[i].dev && (i < PM3_MAX_BOARD))
- i++;
- if (i < PM3_MAX_BOARD)
- bn = i;
- else {
- printk
- (KERN_ERR "pm3fb: Error: Couldn't find room for OpenFirmware device");
- return;
- }
- }
-
- l_fb_info = &(fb_info[bn]);
-
- l_fb_info->dn = dp;
-
- l_fb_info->pIOBase = (unsigned char *) dp->addrs[3].address;
-#ifdef __BIG_ENDIAN
- l_fb_info->pIOBase += PM3_REGS_SIZE;
-#endif
- l_fb_info->vIOBase = (unsigned char *) -1;
- l_fb_info->p_fb = (unsigned char *) dp->addrs[1].address;
- l_fb_info->v_fb = (unsigned char *) -1;
-
- l_fb_info->fb_size = pm3fb_size_memory(l_fb_info); /* (unsigned long)dp->addrs[1].size; *//* OF is a liar ! it claims 256 Mb */
-
- DPRINTK(2,
- "OpenFirmware board (#%ld) : IOBase 0x%08lx, p_fb 0x%08lx, fb_size %d KB\n",
- bn, (unsigned long) l_fb_info->pIOBase,
- (unsigned long) l_fb_info->p_fb, l_fb_info->fb_size >> 10);
-
- l_fb_info->use_current = 1; /* will use current mode by default */
-
- pm3fb_common_init(l_fb_info);
}
-#endif /* SUPPORT_FB_OF */
/* ************************* */
/* **** Module support ***** */
@@ -3808,14 +3629,12 @@
if (l_fb_info->vIOBase !=
(unsigned char *) -1) {
pm3fb_unmapIO(l_fb_info);
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
release_mem_region(l_fb_info->p_fb,
l_fb_info->
fb_size);
release_mem_region(l_fb_info->
pIOBase,
PM3_REGS_SIZE);
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
}
unregister_framebuffer(&l_fb_info->gen.
info);
^ permalink raw reply [flat|nested] 4+ messages in thread* [2.6 patch] pm3fb: remove kernel 2.2 code
@ 2004-02-08 1:06 Adrian Bunk
2004-02-08 1:17 ` Andrew Morton
2004-02-19 21:58 ` James Simmons
0 siblings, 2 replies; 4+ messages in thread
From: Adrian Bunk @ 2004-02-08 1:06 UTC (permalink / raw)
To: James Simmons, Andrew Morton; +Cc: linux-kernel
The patch below removes kernel 2.2 code from pm3fb.{c,h}.
It also removes KERNEL_2_4 and KERNEL_2_5 since all places where this
was used had a
#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
diffstat output:
drivers/video/pm3fb.c | 287 +++++++-----------------------------------
include/video/pm3fb.h | 40 -----
2 files changed, 54 insertions(+), 273 deletions(-)
Please apply
Adrian
--- linux-2.6.2-mm1/include/video/pm3fb.h.old 2004-02-07 21:50:06.000000000 +0100
+++ linux-2.6.2-mm1/include/video/pm3fb.h 2004-02-07 22:01:37.000000000 +0100
@@ -1119,34 +1119,6 @@
/* ***** pm3fb useful define and macro ***** */
/* ***************************************** */
-/* kernel -specific definitions */
-/* what kernel is this ? */
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)))
-#define KERNEL_2_5
-#endif
-
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)))
-#define KERNEL_2_4
-#endif
-
-#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0)))
-#define KERNEL_2_2
-/* pci_resource_start, available in 2.2.18 */
-#include <linux/kcomp.h>
-#ifdef CONFIG_FB_OF
-#define SUPPORT_FB_OF
-#endif
-#endif
-
-#if (!defined(KERNEL_2_2)) && (!defined(KERNEL_2_4)) && (!defined(KERNEL_2_5))
-#error "Only kernel 2.2.x, kernel 2.4.y and kernel 2.5.z might work"
-#endif
-
-/* not sure if/why it's needed. doesn't work without on my PowerMac... */
-#ifdef __BIG_ENDIAN
-#define MUST_BYTESWAP
-#endif
-
/* permedia3 -specific definitions */
#define PM3_SCALE_TO_CLOCK(pr, fe, po) ((2 * PM3_REF_CLOCK * fe) / (pr * (1 << (po))))
@@ -1203,19 +1175,9 @@
/* ******************************************** */
/* ***** A bunch of register-access macro ***** */
/* ******************************************** */
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP /* we are writing big_endian to big_endian through a little_endian macro */
-#define PM3_READ_REG(r) __swab32(readl((l_fb_info->vIOBase + r)))
-#define PM3_WRITE_REG(r, v) writel(__swab32(v), (l_fb_info->vIOBase + r))
-#else /* MUST_BYTESWAP */
-#define PM3_WRITE_REG(r, v) writel(v, (l_fb_info->vIOBase + r))
-#define PM3_READ_REG(r) readl((l_fb_info->vIOBase + r))
-#endif /* MUST_BYTESWAP */
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* native-endian access */
+
#define PM3_WRITE_REG(r, v) fb_writel(v, (l_fb_info->vIOBase + r))
#define PM3_READ_REG(r) fb_readl((l_fb_info->vIOBase + r))
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
#define depth2bpp(d) ((d + 7L) & ~7L)
--- linux-2.6.2-mm1/drivers/video/pm3fb.c.old 2004-02-07 21:53:04.000000000 +0100
+++ linux-2.6.2-mm1/drivers/video/pm3fb.c 2004-02-07 22:03:22.000000000 +0100
@@ -137,9 +137,6 @@
unsigned long use_current;
struct pm3fb_par *current_par;
struct pci_dev *dev; /* PCI device */
-#ifdef SUPPORT_FB_OF
- struct device_node *dn; /* OF node for the PCI device */
-#endif /* SUPPORT_FB_OF */
unsigned long board_type; /* index in the cardbase */
unsigned char *fb_base; /* framebuffer memory base */
u32 fb_size; /* framebuffer memory size */
@@ -665,20 +662,6 @@
/* the struct that hold them together */
-#ifdef KERNEL_2_2
-struct fbgen_hwswitch pm3fb_switch = {
- pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
- pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg, pm3fb_setcolreg,
- pm3fb_pan_display, pm3fb_blank, pm3fb_set_disp
-};
-
-static struct fb_ops pm3fb_ops = {
- fbgen_get_fix, fbgen_get_var, fbgen_set_var,
- fbgen_get_cmap, fbgen_set_cmap, fbgen_pan_display, pm3fb_ioctl,
- NULL, NULL
-};
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
struct fbgen_hwswitch pm3fb_switch = {
pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg,
@@ -697,7 +680,7 @@
.fb_blank = fbgen_blank,
.fb_ioctl = pm3fb_ioctl,
};
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
+
#ifdef PM3FB_USE_ACCEL
#ifdef FBCON_HAS_CFB32
static struct display_switch pm3fb_cfb32 = {
@@ -1451,26 +1434,11 @@
/* pm3 split up memory, replicates, and do a lot of nasty stuff IMHO ;-) */
for (i = 0; i < 32; i++) {
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(i * 0x00345678),
- (l_fb_info->v_fb + (i * 1048576)));
-#else
- writel(i * 0x00345678, (l_fb_info->v_fb + (i * 1048576)));
-#endif
- mb();
-#ifdef MUST_BYTESWAP
- temp1 = __swab32(readl((l_fb_info->v_fb + (i * 1048576))));
-#else
- temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
-#endif
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(i * 0x00345678,
(l_fb_info->v_fb + (i * 1048576)));
mb();
temp1 = fb_readl((l_fb_info->v_fb + (i * 1048576)));
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
+
/* Let's check for wrapover, write will fail at 16MB boundary */
if (temp1 == (i * 0x00345678))
memsize = i;
@@ -1489,31 +1457,6 @@
}
for (i = 32; i < 64; i++) {
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(i * 0x00345678),
- (l_fb_info->v_fb + (i * 1048576)));
-#else
- writel(i * 0x00345678,
- (l_fb_info->v_fb + (i * 1048576)));
-#endif
- mb();
-#ifdef MUST_BYTESWAP
- temp1 =
- __swab32(readl
- ((l_fb_info->v_fb + (i * 1048576))));
- temp2 =
- __swab32(readl
- ((l_fb_info->v_fb +
- ((i - 32) * 1048576))));
-#else
- temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
- temp2 =
- readl((l_fb_info->v_fb +
- ((i - 32) * 1048576)));
-#endif
-#endif /* KERNEL_2_2 */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(i * 0x00345678,
(l_fb_info->v_fb + (i * 1048576)));
mb();
@@ -1522,7 +1465,6 @@
temp2 =
fb_readl((l_fb_info->v_fb +
((i - 32) * 1048576)));
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
if ((temp1 == (i * 0x00345678)) && (temp2 == 0)) /* different value, different RAM... */
memsize = i;
else
@@ -1565,16 +1507,7 @@
for (i = 0; i < (l_fb_info->fb_size / sizeof(u32)) ; i++) /* clear entire FB memory to black */
{
-#ifdef KERNEL_2_2
-#ifdef MUST_BYTESWAP
- writel(__swab32(cc), (l_fb_info->v_fb + (i * sizeof(u32))));
-#else
- writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
-#endif
-#endif
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
fb_writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
-#endif
}
}
@@ -3424,89 +3357,63 @@
for (i = 0; i < PM3_MAX_BOARD; i++) {
l_fb_info = &(fb_info[i]);
if ((l_fb_info->dev) && (!disable[i])) { /* PCI device was found and not disabled by user */
-#ifdef SUPPORT_FB_OF
- struct device_node *dp =
- find_pci_device_OFnode(l_fb_info->dev->bus->
- number,
- l_fb_info->dev->devfn);
-
- if ((dp) && (!strncmp(dp->name, "formacGA12", 10))) {
- /* do nothing, init of board is done in pm3fb_of_init */
- } else {
-#endif
- DPRINTK(2,
- "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
- (unsigned long) l_fb_info->dev,
- (unsigned long) l_fb_info->dev->
- vendor,
- (unsigned long) l_fb_info->dev->
- device,
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 0),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 1),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 2),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 3),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 4),
- (unsigned long)
- pci_resource_start(l_fb_info->dev,
- 5),
- (unsigned long) l_fb_info->dev->
- irq);
-
- l_fb_info->pIOBase =
- (unsigned char *)
- pci_resource_start(l_fb_info->dev, 0);
+ DPRINTK(2,
+ "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
+ (unsigned long) l_fb_info->dev,
+ (unsigned long) l_fb_info->dev->vendor,
+ (unsigned long) l_fb_info->dev->device,
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 0),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 1),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 2),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 3),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 4),
+ (unsigned long)
+ pci_resource_start(l_fb_info->dev, 5),
+ (unsigned long) l_fb_info->dev->irq);
+
+ l_fb_info->pIOBase =
+ (unsigned char *)
+ pci_resource_start(l_fb_info->dev, 0);
#ifdef __BIG_ENDIAN
- l_fb_info->pIOBase += PM3_REGS_SIZE;
+ l_fb_info->pIOBase += PM3_REGS_SIZE;
#endif
- l_fb_info->vIOBase = (unsigned char *) -1;
- l_fb_info->p_fb =
- (unsigned char *)
- pci_resource_start(l_fb_info->dev, 1);
- l_fb_info->v_fb = (unsigned char *) -1;
+ l_fb_info->vIOBase = (unsigned char *) -1;
+ l_fb_info->p_fb =
+ (unsigned char *)
+ pci_resource_start(l_fb_info->dev, 1);
+ l_fb_info->v_fb = (unsigned char *) -1;
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* full resource management, new in linux-2.4.x */
- if (!request_mem_region
- ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
- "pm3fb")) {
- printk
- (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
- l_fb_info->board_num);
- continue;
- }
if (!request_mem_region
- ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
- "pm3fb I/O regs")) {
- printk
- (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
- l_fb_info->board_num);
- continue;
- }
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
- if (forcesize[l_fb_info->board_num])
- l_fb_info->fb_size = forcesize[l_fb_info->board_num];
-
- l_fb_info->fb_size =
- pm3fb_size_memory(l_fb_info);
+ ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
+ "pm3fb")) {
+ printk
+ (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
+ l_fb_info->board_num);
+ continue;
+ }
+ if (!request_mem_region
+ ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
+ "pm3fb I/O regs")) {
+ printk
+ (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
+ l_fb_info->board_num);
+ continue;
+ }
+ if (forcesize[l_fb_info->board_num])
+ l_fb_info->fb_size = forcesize[l_fb_info->board_num];
+ l_fb_info->fb_size =
+ pm3fb_size_memory(l_fb_info);
if (l_fb_info->fb_size) {
- (void) pci_enable_device(l_fb_info->dev);
- pm3fb_common_init(l_fb_info);
- } else
- printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
-
-#ifdef SUPPORT_FB_OF
- }
-#endif /* SUPPORT_FB_OF */
+ (void) pci_enable_device(l_fb_info->dev);
+ pm3fb_common_init(l_fb_info);
+ } else
+ printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
}
}
}
@@ -3590,12 +3497,7 @@
/* ***** standard FB API init functions ***** */
/* ****************************************** */
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
int __init pm3fb_setup(char *options)
-#endif
-#ifdef KERNEL_2_2
-__initfunc(void pm3fb_setup(char *options, int *ints))
-#endif
{
long opsi = strlen(options);
@@ -3606,17 +3508,10 @@
PM3_OPTIONS_SIZE) ? PM3_OPTIONS_SIZE : (opsi + 1));
g_options[PM3_OPTIONS_SIZE - 1] = 0;
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
return (0);
-#endif
}
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
int __init pm3fb_init(void)
-#endif
-#ifdef KERNEL_2_2
-__initfunc(void pm3fb_init(void))
-#endif
{
DTRACE;
@@ -3629,82 +3524,8 @@
if (!fb_info[0].dev) { /* not even one board ??? */
DPRINTK(1, "No PCI Permedia3 board detected\n");
}
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
return (0);
-#endif
-}
-
-#ifdef SUPPORT_FB_OF /* linux-2.2.x only */
-__initfunc(void pm3fb_of_init(struct device_node *dp))
-{
- struct pm3fb_info *l_fb_info = NULL;
- unsigned long i;
- long bn = -1;
- struct device_node *dn;
-
- DTRACE;
-
- DPRINTK(2, "OpenFirmware board : %s\n", dp->full_name);
-
- for (i = 0; i < dp->n_addrs; i++) {
- DPRINTK(2, "MemRange : 0x%08x - 0x%x\n",
- dp->addrs[i].address, dp->addrs[i].size);
- }
-
- for (i = 0; i < PM3_MAX_BOARD; i++) { /* find which PCI board is the OF device */
- if (fb_info[i].dev) {
- dn = find_pci_device_OFnode(fb_info[i].dev->bus->
- number,
- fb_info[i].dev->devfn);
- if (dn == dp) {
- if (bn == -1)
- bn = i;
- else {
- DPRINTK(1,
- "Error: Multiple PCI device for a single OpenFirmware node\n");
- }
- }
- }
- }
-
- if (bn == -1) {
- DPRINTK(1, "Warning: non-PCI Permedia3 found\n");
- i = 0;
- while (fb_info[i].dev && (i < PM3_MAX_BOARD))
- i++;
- if (i < PM3_MAX_BOARD)
- bn = i;
- else {
- printk
- (KERN_ERR "pm3fb: Error: Couldn't find room for OpenFirmware device");
- return;
- }
- }
-
- l_fb_info = &(fb_info[bn]);
-
- l_fb_info->dn = dp;
-
- l_fb_info->pIOBase = (unsigned char *) dp->addrs[3].address;
-#ifdef __BIG_ENDIAN
- l_fb_info->pIOBase += PM3_REGS_SIZE;
-#endif
- l_fb_info->vIOBase = (unsigned char *) -1;
- l_fb_info->p_fb = (unsigned char *) dp->addrs[1].address;
- l_fb_info->v_fb = (unsigned char *) -1;
-
- l_fb_info->fb_size = pm3fb_size_memory(l_fb_info); /* (unsigned long)dp->addrs[1].size; *//* OF is a liar ! it claims 256 Mb */
-
- DPRINTK(2,
- "OpenFirmware board (#%ld) : IOBase 0x%08lx, p_fb 0x%08lx, fb_size %d KB\n",
- bn, (unsigned long) l_fb_info->pIOBase,
- (unsigned long) l_fb_info->p_fb, l_fb_info->fb_size >> 10);
-
- l_fb_info->use_current = 1; /* will use current mode by default */
-
- pm3fb_common_init(l_fb_info);
}
-#endif /* SUPPORT_FB_OF */
/* ************************* */
/* **** Module support ***** */
@@ -3808,14 +3629,12 @@
if (l_fb_info->vIOBase !=
(unsigned char *) -1) {
pm3fb_unmapIO(l_fb_info);
-#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
release_mem_region(l_fb_info->p_fb,
l_fb_info->
fb_size);
release_mem_region(l_fb_info->
pIOBase,
PM3_REGS_SIZE);
-#endif /* KERNEL_2_4 or KERNEL_2_5 */
}
unregister_framebuffer(&l_fb_info->gen.
info);
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [2.6 patch] pm3fb: remove kernel 2.2 code
2004-02-08 1:06 Adrian Bunk
@ 2004-02-08 1:17 ` Andrew Morton
2004-02-19 21:58 ` James Simmons
1 sibling, 0 replies; 4+ messages in thread
From: Andrew Morton @ 2004-02-08 1:17 UTC (permalink / raw)
To: Adrian Bunk; +Cc: jsimmons, linux-kernel
Adrian Bunk <bunk@fs.tum.de> wrote:
>
> The patch below removes kernel 2.2 code from pm3fb.{c,h}.
umm, exactly how many more patches like this were you planning on sending?
If it's just a few then OK, but I'm afraid I don't really have the energy
for a huge round of 2.[024] decrufitfication patches right now. Sorry.
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [2.6 patch] pm3fb: remove kernel 2.2 code
2004-02-08 1:06 Adrian Bunk
2004-02-08 1:17 ` Andrew Morton
@ 2004-02-19 21:58 ` James Simmons
1 sibling, 0 replies; 4+ messages in thread
From: James Simmons @ 2004-02-19 21:58 UTC (permalink / raw)
To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel
Ug. That driver needs to to replaced.
On Sun, 8 Feb 2004, Adrian Bunk wrote:
> The patch below removes kernel 2.2 code from pm3fb.{c,h}.
>
> It also removes KERNEL_2_4 and KERNEL_2_5 since all places where this
> was used had a
> #if (defined KERNEL_2_4) || (defined KERNEL_2_5)
>
> diffstat output:
> drivers/video/pm3fb.c | 287 +++++++-----------------------------------
> include/video/pm3fb.h | 40 -----
> 2 files changed, 54 insertions(+), 273 deletions(-)
>
> Please apply
> Adrian
>
>
> --- linux-2.6.2-mm1/include/video/pm3fb.h.old 2004-02-07 21:50:06.000000000 +0100
> +++ linux-2.6.2-mm1/include/video/pm3fb.h 2004-02-07 22:01:37.000000000 +0100
> @@ -1119,34 +1119,6 @@
> /* ***** pm3fb useful define and macro ***** */
> /* ***************************************** */
>
> -/* kernel -specific definitions */
> -/* what kernel is this ? */
> -#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)))
> -#define KERNEL_2_5
> -#endif
> -
> -#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)))
> -#define KERNEL_2_4
> -#endif
> -
> -#if ((LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0)))
> -#define KERNEL_2_2
> -/* pci_resource_start, available in 2.2.18 */
> -#include <linux/kcomp.h>
> -#ifdef CONFIG_FB_OF
> -#define SUPPORT_FB_OF
> -#endif
> -#endif
> -
> -#if (!defined(KERNEL_2_2)) && (!defined(KERNEL_2_4)) && (!defined(KERNEL_2_5))
> -#error "Only kernel 2.2.x, kernel 2.4.y and kernel 2.5.z might work"
> -#endif
> -
> -/* not sure if/why it's needed. doesn't work without on my PowerMac... */
> -#ifdef __BIG_ENDIAN
> -#define MUST_BYTESWAP
> -#endif
> -
> /* permedia3 -specific definitions */
> #define PM3_SCALE_TO_CLOCK(pr, fe, po) ((2 * PM3_REF_CLOCK * fe) / (pr * (1 << (po))))
>
> @@ -1203,19 +1175,9 @@
> /* ******************************************** */
> /* ***** A bunch of register-access macro ***** */
> /* ******************************************** */
> -#ifdef KERNEL_2_2
> -#ifdef MUST_BYTESWAP /* we are writing big_endian to big_endian through a little_endian macro */
> -#define PM3_READ_REG(r) __swab32(readl((l_fb_info->vIOBase + r)))
> -#define PM3_WRITE_REG(r, v) writel(__swab32(v), (l_fb_info->vIOBase + r))
> -#else /* MUST_BYTESWAP */
> -#define PM3_WRITE_REG(r, v) writel(v, (l_fb_info->vIOBase + r))
> -#define PM3_READ_REG(r) readl((l_fb_info->vIOBase + r))
> -#endif /* MUST_BYTESWAP */
> -#endif /* KERNEL_2_2 */
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* native-endian access */
> +
> #define PM3_WRITE_REG(r, v) fb_writel(v, (l_fb_info->vIOBase + r))
> #define PM3_READ_REG(r) fb_readl((l_fb_info->vIOBase + r))
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
>
>
> #define depth2bpp(d) ((d + 7L) & ~7L)
> --- linux-2.6.2-mm1/drivers/video/pm3fb.c.old 2004-02-07 21:53:04.000000000 +0100
> +++ linux-2.6.2-mm1/drivers/video/pm3fb.c 2004-02-07 22:03:22.000000000 +0100
> @@ -137,9 +137,6 @@
> unsigned long use_current;
> struct pm3fb_par *current_par;
> struct pci_dev *dev; /* PCI device */
> -#ifdef SUPPORT_FB_OF
> - struct device_node *dn; /* OF node for the PCI device */
> -#endif /* SUPPORT_FB_OF */
> unsigned long board_type; /* index in the cardbase */
> unsigned char *fb_base; /* framebuffer memory base */
> u32 fb_size; /* framebuffer memory size */
> @@ -665,20 +662,6 @@
>
>
> /* the struct that hold them together */
> -#ifdef KERNEL_2_2
> -struct fbgen_hwswitch pm3fb_switch = {
> - pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
> - pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg, pm3fb_setcolreg,
> - pm3fb_pan_display, pm3fb_blank, pm3fb_set_disp
> -};
> -
> -static struct fb_ops pm3fb_ops = {
> - fbgen_get_fix, fbgen_get_var, fbgen_set_var,
> - fbgen_get_cmap, fbgen_set_cmap, fbgen_pan_display, pm3fb_ioctl,
> - NULL, NULL
> -};
> -#endif /* KERNEL_2_2 */
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> struct fbgen_hwswitch pm3fb_switch = {
> pm3fb_detect, pm3fb_encode_fix, pm3fb_decode_var, pm3fb_encode_var,
> pm3fb_get_par, pm3fb_set_par, pm3fb_getcolreg,
> @@ -697,7 +680,7 @@
> .fb_blank = fbgen_blank,
> .fb_ioctl = pm3fb_ioctl,
> };
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
> +
> #ifdef PM3FB_USE_ACCEL
> #ifdef FBCON_HAS_CFB32
> static struct display_switch pm3fb_cfb32 = {
> @@ -1451,26 +1434,11 @@
>
> /* pm3 split up memory, replicates, and do a lot of nasty stuff IMHO ;-) */
> for (i = 0; i < 32; i++) {
> -#ifdef KERNEL_2_2
> -#ifdef MUST_BYTESWAP
> - writel(__swab32(i * 0x00345678),
> - (l_fb_info->v_fb + (i * 1048576)));
> -#else
> - writel(i * 0x00345678, (l_fb_info->v_fb + (i * 1048576)));
> -#endif
> - mb();
> -#ifdef MUST_BYTESWAP
> - temp1 = __swab32(readl((l_fb_info->v_fb + (i * 1048576))));
> -#else
> - temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
> -#endif
> -#endif /* KERNEL_2_2 */
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> fb_writel(i * 0x00345678,
> (l_fb_info->v_fb + (i * 1048576)));
> mb();
> temp1 = fb_readl((l_fb_info->v_fb + (i * 1048576)));
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
> +
> /* Let's check for wrapover, write will fail at 16MB boundary */
> if (temp1 == (i * 0x00345678))
> memsize = i;
> @@ -1489,31 +1457,6 @@
> }
>
> for (i = 32; i < 64; i++) {
> -#ifdef KERNEL_2_2
> -#ifdef MUST_BYTESWAP
> - writel(__swab32(i * 0x00345678),
> - (l_fb_info->v_fb + (i * 1048576)));
> -#else
> - writel(i * 0x00345678,
> - (l_fb_info->v_fb + (i * 1048576)));
> -#endif
> - mb();
> -#ifdef MUST_BYTESWAP
> - temp1 =
> - __swab32(readl
> - ((l_fb_info->v_fb + (i * 1048576))));
> - temp2 =
> - __swab32(readl
> - ((l_fb_info->v_fb +
> - ((i - 32) * 1048576))));
> -#else
> - temp1 = readl((l_fb_info->v_fb + (i * 1048576)));
> - temp2 =
> - readl((l_fb_info->v_fb +
> - ((i - 32) * 1048576)));
> -#endif
> -#endif /* KERNEL_2_2 */
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> fb_writel(i * 0x00345678,
> (l_fb_info->v_fb + (i * 1048576)));
> mb();
> @@ -1522,7 +1465,6 @@
> temp2 =
> fb_readl((l_fb_info->v_fb +
> ((i - 32) * 1048576)));
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
> if ((temp1 == (i * 0x00345678)) && (temp2 == 0)) /* different value, different RAM... */
> memsize = i;
> else
> @@ -1565,16 +1507,7 @@
>
> for (i = 0; i < (l_fb_info->fb_size / sizeof(u32)) ; i++) /* clear entire FB memory to black */
> {
> -#ifdef KERNEL_2_2
> -#ifdef MUST_BYTESWAP
> - writel(__swab32(cc), (l_fb_info->v_fb + (i * sizeof(u32))));
> -#else
> - writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
> -#endif
> -#endif
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> fb_writel(cc, (l_fb_info->v_fb + (i * sizeof(u32))));
> -#endif
> }
> }
>
> @@ -3424,89 +3357,63 @@
> for (i = 0; i < PM3_MAX_BOARD; i++) {
> l_fb_info = &(fb_info[i]);
> if ((l_fb_info->dev) && (!disable[i])) { /* PCI device was found and not disabled by user */
> -#ifdef SUPPORT_FB_OF
> - struct device_node *dp =
> - find_pci_device_OFnode(l_fb_info->dev->bus->
> - number,
> - l_fb_info->dev->devfn);
> -
> - if ((dp) && (!strncmp(dp->name, "formacGA12", 10))) {
> - /* do nothing, init of board is done in pm3fb_of_init */
> - } else {
> -#endif
> - DPRINTK(2,
> - "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
> - (unsigned long) l_fb_info->dev,
> - (unsigned long) l_fb_info->dev->
> - vendor,
> - (unsigned long) l_fb_info->dev->
> - device,
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 0),
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 1),
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 2),
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 3),
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 4),
> - (unsigned long)
> - pci_resource_start(l_fb_info->dev,
> - 5),
> - (unsigned long) l_fb_info->dev->
> - irq);
> -
> - l_fb_info->pIOBase =
> - (unsigned char *)
> - pci_resource_start(l_fb_info->dev, 0);
> + DPRINTK(2,
> + "found @%lx Vendor %lx Device %lx ; base @ : %lx - %lx - %lx - %lx - %lx - %lx, irq %ld\n",
> + (unsigned long) l_fb_info->dev,
> + (unsigned long) l_fb_info->dev->vendor,
> + (unsigned long) l_fb_info->dev->device,
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 0),
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 1),
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 2),
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 3),
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 4),
> + (unsigned long)
> + pci_resource_start(l_fb_info->dev, 5),
> + (unsigned long) l_fb_info->dev->irq);
> +
> + l_fb_info->pIOBase =
> + (unsigned char *)
> + pci_resource_start(l_fb_info->dev, 0);
> #ifdef __BIG_ENDIAN
> - l_fb_info->pIOBase += PM3_REGS_SIZE;
> + l_fb_info->pIOBase += PM3_REGS_SIZE;
> #endif
> - l_fb_info->vIOBase = (unsigned char *) -1;
> - l_fb_info->p_fb =
> - (unsigned char *)
> - pci_resource_start(l_fb_info->dev, 1);
> - l_fb_info->v_fb = (unsigned char *) -1;
> + l_fb_info->vIOBase = (unsigned char *) -1;
> + l_fb_info->p_fb =
> + (unsigned char *)
> + pci_resource_start(l_fb_info->dev, 1);
> + l_fb_info->v_fb = (unsigned char *) -1;
>
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5) /* full resource management, new in linux-2.4.x */
> - if (!request_mem_region
> - ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
> - "pm3fb")) {
> - printk
> - (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
> - l_fb_info->board_num);
> - continue;
> - }
> if (!request_mem_region
> - ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
> - "pm3fb I/O regs")) {
> - printk
> - (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
> - l_fb_info->board_num);
> - continue;
> - }
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
> - if (forcesize[l_fb_info->board_num])
> - l_fb_info->fb_size = forcesize[l_fb_info->board_num];
> -
> - l_fb_info->fb_size =
> - pm3fb_size_memory(l_fb_info);
> + ((unsigned long)l_fb_info->p_fb, 64 * 1024 * 1024, /* request full aperture size */
> + "pm3fb")) {
> + printk
> + (KERN_ERR "pm3fb: Error: couldn't request framebuffer memory, board #%ld\n",
> + l_fb_info->board_num);
> + continue;
> + }
> + if (!request_mem_region
> + ((unsigned long)l_fb_info->pIOBase, PM3_REGS_SIZE,
> + "pm3fb I/O regs")) {
> + printk
> + (KERN_ERR "pm3fb: Error: couldn't request IObase memory, board #%ld\n",
> + l_fb_info->board_num);
> + continue;
> + }
> + if (forcesize[l_fb_info->board_num])
> + l_fb_info->fb_size = forcesize[l_fb_info->board_num];
>
> + l_fb_info->fb_size =
> + pm3fb_size_memory(l_fb_info);
> if (l_fb_info->fb_size) {
> - (void) pci_enable_device(l_fb_info->dev);
> - pm3fb_common_init(l_fb_info);
> - } else
> - printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
> -
> -#ifdef SUPPORT_FB_OF
> - }
> -#endif /* SUPPORT_FB_OF */
> + (void) pci_enable_device(l_fb_info->dev);
> + pm3fb_common_init(l_fb_info);
> + } else
> + printk(KERN_ERR "pm3fb: memory problem, not enabling board #%ld\n", l_fb_info->board_num);
> }
> }
> }
> @@ -3590,12 +3497,7 @@
> /* ***** standard FB API init functions ***** */
> /* ****************************************** */
>
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> int __init pm3fb_setup(char *options)
> -#endif
> -#ifdef KERNEL_2_2
> -__initfunc(void pm3fb_setup(char *options, int *ints))
> -#endif
> {
> long opsi = strlen(options);
>
> @@ -3606,17 +3508,10 @@
> PM3_OPTIONS_SIZE) ? PM3_OPTIONS_SIZE : (opsi + 1));
> g_options[PM3_OPTIONS_SIZE - 1] = 0;
>
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> return (0);
> -#endif
> }
>
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> int __init pm3fb_init(void)
> -#endif
> -#ifdef KERNEL_2_2
> -__initfunc(void pm3fb_init(void))
> -#endif
> {
> DTRACE;
>
> @@ -3629,82 +3524,8 @@
> if (!fb_info[0].dev) { /* not even one board ??? */
> DPRINTK(1, "No PCI Permedia3 board detected\n");
> }
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> return (0);
> -#endif
> -}
> -
> -#ifdef SUPPORT_FB_OF /* linux-2.2.x only */
> -__initfunc(void pm3fb_of_init(struct device_node *dp))
> -{
> - struct pm3fb_info *l_fb_info = NULL;
> - unsigned long i;
> - long bn = -1;
> - struct device_node *dn;
> -
> - DTRACE;
> -
> - DPRINTK(2, "OpenFirmware board : %s\n", dp->full_name);
> -
> - for (i = 0; i < dp->n_addrs; i++) {
> - DPRINTK(2, "MemRange : 0x%08x - 0x%x\n",
> - dp->addrs[i].address, dp->addrs[i].size);
> - }
> -
> - for (i = 0; i < PM3_MAX_BOARD; i++) { /* find which PCI board is the OF device */
> - if (fb_info[i].dev) {
> - dn = find_pci_device_OFnode(fb_info[i].dev->bus->
> - number,
> - fb_info[i].dev->devfn);
> - if (dn == dp) {
> - if (bn == -1)
> - bn = i;
> - else {
> - DPRINTK(1,
> - "Error: Multiple PCI device for a single OpenFirmware node\n");
> - }
> - }
> - }
> - }
> -
> - if (bn == -1) {
> - DPRINTK(1, "Warning: non-PCI Permedia3 found\n");
> - i = 0;
> - while (fb_info[i].dev && (i < PM3_MAX_BOARD))
> - i++;
> - if (i < PM3_MAX_BOARD)
> - bn = i;
> - else {
> - printk
> - (KERN_ERR "pm3fb: Error: Couldn't find room for OpenFirmware device");
> - return;
> - }
> - }
> -
> - l_fb_info = &(fb_info[bn]);
> -
> - l_fb_info->dn = dp;
> -
> - l_fb_info->pIOBase = (unsigned char *) dp->addrs[3].address;
> -#ifdef __BIG_ENDIAN
> - l_fb_info->pIOBase += PM3_REGS_SIZE;
> -#endif
> - l_fb_info->vIOBase = (unsigned char *) -1;
> - l_fb_info->p_fb = (unsigned char *) dp->addrs[1].address;
> - l_fb_info->v_fb = (unsigned char *) -1;
> -
> - l_fb_info->fb_size = pm3fb_size_memory(l_fb_info); /* (unsigned long)dp->addrs[1].size; *//* OF is a liar ! it claims 256 Mb */
> -
> - DPRINTK(2,
> - "OpenFirmware board (#%ld) : IOBase 0x%08lx, p_fb 0x%08lx, fb_size %d KB\n",
> - bn, (unsigned long) l_fb_info->pIOBase,
> - (unsigned long) l_fb_info->p_fb, l_fb_info->fb_size >> 10);
> -
> - l_fb_info->use_current = 1; /* will use current mode by default */
> -
> - pm3fb_common_init(l_fb_info);
> }
> -#endif /* SUPPORT_FB_OF */
>
> /* ************************* */
> /* **** Module support ***** */
> @@ -3808,14 +3629,12 @@
> if (l_fb_info->vIOBase !=
> (unsigned char *) -1) {
> pm3fb_unmapIO(l_fb_info);
> -#if (defined KERNEL_2_4) || (defined KERNEL_2_5)
> release_mem_region(l_fb_info->p_fb,
> l_fb_info->
> fb_size);
> release_mem_region(l_fb_info->
> pIOBase,
> PM3_REGS_SIZE);
> -#endif /* KERNEL_2_4 or KERNEL_2_5 */
> }
> unregister_framebuffer(&l_fb_info->gen.
> info);
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2005-02-11 16:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-02-11 16:43 [2.6 patch] pm3fb: remove kernel 2.2 code Adrian Bunk
-- strict thread matches above, loose matches on Subject: below --
2004-02-08 1:06 Adrian Bunk
2004-02-08 1:17 ` Andrew Morton
2004-02-19 21:58 ` James Simmons
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox