git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pata_hpt3x2n: fix clock turnaround
[safe/jmp/linux-2.6]
/
drivers
/
video
/
sstfb.c
diff --git
a/drivers/video/sstfb.c
b/drivers/video/sstfb.c
index
59cd1e7
..
609d0a5
100644
(file)
--- a/
drivers/video/sstfb.c
+++ b/
drivers/video/sstfb.c
@@
-88,7
+88,7
@@
#include <linux/init.h>
#include <linux/slab.h>
#include <asm/io.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <asm/io.h>
-#include <
asm
/uaccess.h>
+#include <
linux
/uaccess.h>
#include <video/sstfb.h>
#include <video/sstfb.h>
@@
-257,6
+257,7
@@
static void __sst_dac_write(u8 __iomem *vbase, u8 reg, u8 val)
r_dprintk("sst_dac_write(%#x, %#x)\n", reg, val);
reg &= 0x07;
__sst_write(vbase, DAC_DATA,(((u32)reg << 8)) | (u32)val);
r_dprintk("sst_dac_write(%#x, %#x)\n", reg, val);
reg &= 0x07;
__sst_write(vbase, DAC_DATA,(((u32)reg << 8)) | (u32)val);
+ __sst_wait_idle(vbase);
}
/* indexed access to ti/att dacs */
}
/* indexed access to ti/att dacs */
@@
-1005,7
+1006,7
@@
static int sst_set_pll_att_ti(struct fb_info *info,
break;
default:
dprintk("%s: wrong clock code '%d'\n",
break;
default:
dprintk("%s: wrong clock code '%d'\n",
- __
FUNCTION
__, clock);
+ __
func
__, clock);
return 0;
}
udelay(300);
return 0;
}
udelay(300);
@@
-1047,7
+1048,7
@@
static int sst_set_pll_ics(struct fb_info *info,
break;
default:
dprintk("%s: wrong clock code '%d'\n",
break;
default:
dprintk("%s: wrong clock code '%d'\n",
- __
FUNCTION
__, clock);
+ __
func
__, clock);
return 0;
}
udelay(300);
return 0;
}
udelay(300);
@@
-1078,7
+1079,7
@@
static void sst_set_vidmod_att_ti(struct fb_info *info, const int bpp)
sst_dac_write(DACREG_RMR, (cr0 & 0x0f) | DACREG_CR0_16BPP);
break;
default:
sst_dac_write(DACREG_RMR, (cr0 & 0x0f) | DACREG_CR0_16BPP);
break;
default:
- dprintk("%s: bad depth '%u'\n", __
FUNCTION
__, bpp);
+ dprintk("%s: bad depth '%u'\n", __
func
__, bpp);
break;
}
}
break;
}
}
@@
-1092,7
+1093,7
@@
static void sst_set_vidmod_ics(struct fb_info *info, const int bpp)
sst_dac_write(DACREG_ICS_CMD, DACREG_ICS_CMD_16BPP);
break;
default:
sst_dac_write(DACREG_ICS_CMD, DACREG_ICS_CMD_16BPP);
break;
default:
- dprintk("%s: bad depth '%u'\n", __
FUNCTION
__, bpp);
+ dprintk("%s: bad depth '%u'\n", __
func
__, bpp);
break;
}
}
break;
}
}
@@
-1132,7
+1133,7
@@
static int __devinit sst_detect_dactype(struct fb_info *info, struct sstfb_par *
}
if (!ret)
return 0;
}
if (!ret)
return 0;
- f_dprintk("%s found %s\n", __
FUNCTION
__, dacs[i].name);
+ f_dprintk("%s found %s\n", __
func
__, dacs[i].name);
par->dac_sw = dacs[i];
return 1;
}
par->dac_sw = dacs[i];
return 1;
}
@@
-1347,7
+1348,7
@@
static int __devinit sstfb_probe(struct pci_dev *pdev,
f_ddprintk("found device : %s\n", spec->name);
par->dev = pdev;
f_ddprintk("found device : %s\n", spec->name);
par->dev = pdev;
- p
ci_read_config_byte(pdev, PCI_REVISION_ID, &par->revision)
;
+ p
ar->revision = pdev->revision
;
fix->mmio_start = pci_resource_start(pdev,0);
fix->mmio_len = 0x400000;
fix->mmio_start = pci_resource_start(pdev,0);
fix->mmio_len = 0x400000;
@@
-1420,13
+1421,16
@@
static int __devinit sstfb_probe(struct pci_dev *pdev,
goto fail;
}
goto fail;
}
- fb_alloc_cmap(&info->cmap, 256, 0);
+ if (fb_alloc_cmap(&info->cmap, 256, 0)) {
+ printk(KERN_ERR "sstfb: can't alloc cmap memory.\n");
+ goto fail;
+ }
/* register fb */
info->device = &pdev->dev;
if (register_framebuffer(info) < 0) {
printk(KERN_ERR "sstfb: can't register framebuffer.\n");
/* register fb */
info->device = &pdev->dev;
if (register_framebuffer(info) < 0) {
printk(KERN_ERR "sstfb: can't register framebuffer.\n");
- goto fail;
+ goto fail
_register
;
}
sstfb_clear_screen(info);
}
sstfb_clear_screen(info);
@@
-1440,8
+1444,9
@@
static int __devinit sstfb_probe(struct pci_dev *pdev,
return 0;
return 0;
-fail:
+fail
_register
:
fb_dealloc_cmap(&info->cmap);
fb_dealloc_cmap(&info->cmap);
+fail:
iounmap(info->screen_base);
fail_fb_remap:
iounmap(par->mmio_vbase);
iounmap(info->screen_base);
fail_fb_remap:
iounmap(par->mmio_vbase);