V4L/DVB: media/IR/imon: precendence issue: ! vs ==
[safe/jmp/linux-2.6] / drivers / video / pxafb.c
index 33a6aac..825b665 100644 (file)
@@ -398,6 +398,7 @@ static void pxafb_setmode(struct fb_var_screeninfo *var,
        var->lower_margin       = mode->lower_margin;
        var->sync               = mode->sync;
        var->grayscale          = mode->cmap_greyscale;
+       var->transp.length      = mode->transparency;
 
        /* set the initial RGBA bitfields */
        pxafb_set_pixfmt(var, mode->depth);
@@ -1222,11 +1223,12 @@ static int pxafb_smart_thread(void *arg)
        struct pxafb_info *fbi = arg;
        struct pxafb_mach_info *inf = fbi->dev->platform_data;
 
-       if (!fbi || !inf->smart_update) {
+       if (!inf->smart_update) {
                pr_err("%s: not properly initialized, thread terminated\n",
                                __func__);
                return -EINVAL;
        }
+       inf = fbi->dev->platform_data;
 
        pr_debug("%s(): task starting\n", __func__);
 
@@ -1666,7 +1668,7 @@ static int pxafb_resume(struct device *dev)
        return 0;
 }
 
-static struct dev_pm_ops pxafb_pm_ops = {
+static const struct dev_pm_ops pxafb_pm_ops = {
        .suspend        = pxafb_suspend,
        .resume         = pxafb_resume,
 };