Try this patch.

drivers/video/mxc/mxcfb.c

+static int mxcfb_set_par(struct fb_info *fbi)
+{
+       return 0;
+}
+
 /*
  * Set framebuffer parameters and change the operating mode.
  *
  * @param       info     framebuffer information pointer
  */
 static int
-mxcfb_set_par(struct fb_info *fbi)
+mxcfb_set_par_init(struct fb_info *fbi)
 {
        int ret;
        bool use_iram = false;
@@ -281,12 +286,15 @@
                                fbi->var.xres, fbi->var.yres,
                                fbi->var.xres_virtual,
                                IPU_ROTATE_NONE,
-                               fbi->fix.smem_start, fbi->fix.smem_start, 0, 0);
+                               fbi->fix.smem_start,
+                               fbi->fix.smem_start +
+                               (fbi->fix.line_length * fbi->var.yres),
+                               0, 0);

-       ipu_select_buffer(mxc_fbi->ipu_ch, IPU_INPUT_BUFFER, 0);
-
-       if (fbi->fbops->fb_blank)
-               fbi->fbops->fb_blank(mxc_fbi->blank, fbi);
+       if (mxc_fbi->blank == FB_BLANK_UNBLANK) {
+               ipu_select_buffer(mxc_fbi->ipu_ch, IPU_INPUT_BUFFER, 0);
+               ipu_enable_channel(mxc_fbi->ipu_ch);
+       }

        return 0;
 }
@@ -721,7 +729,7 @@

        if ((info->var.xoffset == var->xoffset) &&
            (info->var.yoffset == var->yoffset)) {
-               return 0;       // No change, do nothing
+//             return 0;       // No change, do nothing
        }

        y_bottom = var->yoffset;
@@ -1227,7 +1235,7 @@
        /* Overlay is blanked by default */
        mxcfbi->blank = FB_BLANK_NORMAL;

-       ret = mxcfb_set_par(fbi_ovl);
+       ret = mxcfb_set_par_init(fbi_ovl);
        if (ret < 0) {
                goto err_ovl_3;
        }
@@ -1325,7 +1333,7 @@
        mxcfb_drv_data.suspended = false;
        init_waitqueue_head(&mxcfb_drv_data.suspend_wq);

-       ret = mxcfb_set_par(fbi);
+       ret = mxcfb_set_par_init(fbi);
        if (ret < 0) {
                goto err_3;
        }


On 4月11ζ—₯, 午後5:12, ruckuus <[EMAIL PROTECTED]> wrote:
> Hi,
> I successfuly port android on my board (phyCORE i-MX31) with 2.6.22
> kernel. Now i am fighting with the flickering. Is there any clue ?
> Ruckuus
> On Apr 7, 9:55 pm, Akio <[EMAIL PROTECTED]> wrote:
>
> > you can goto here to see the detail of what I 
> > done.http://androidzaurus.seesaa.net/article/90045743.html
>
> > right now, I'm thinking how to provide calibration information
> > integrate into mxc_ts.c. If any good approach, please let me know.
> > if some one find how to improve the code, please let me know or drop
> > me a mail :)
>
> > BTW, the other points are platform_driver and input_report_key. If I
> > wrong, please show me. after add those code, I can make the
> > touchscreen work, but not very well.
>
> > If some one can provide me a function to do calibration, I'll very
> > happy to do integration :)
>
> > ruckuus, how about the bsp20071219 for i.mx31?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Android Internals" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/android-internals?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to