diff --git a/drivers/video/fbdev/mxc/mxc_epdc_fb.c.orig b/drivers/video/fbdev/mxc/mxc_epdc_fb.c
index 5c7d87d..5c31379 100644
--- a/drivers/video/fbdev/mxc/mxc_epdc_fb.c.orig
+++ b/drivers/video/fbdev/mxc/mxc_epdc_fb.c
@@ -3489,10 +3489,10 @@ static void mxc_epdc_fb_update_pages(struct mxc_epdc_fb_data *fb_data,
 	update.update_region.top = y1;
 	update.update_region.height = y2 - y1;
 	update.waveform_mode = WAVEFORM_MODE_AUTO;
-	update.update_mode = UPDATE_MODE_FULL;
+	update.update_mode = UPDATE_MODE_PARTIAL;
 	update.update_marker = 0;
 	update.temp = TEMP_USE_AMBIENT;
-	update.flags = 0;
+	update.flags = EPDC_FLAG_USE_REGAL;
 
 	mxc_epdc_fb_send_update(&update, &fb_data->info);
 }
@@ -3687,7 +3687,7 @@ static struct fb_ops mxc_epdc_fb_ops = {
 };
 
 static struct fb_deferred_io mxc_epdc_fb_defio = {
-	.delay = HZ,
+	.delay = HZ / 30,
 	.deferred_io = mxc_epdc_fb_deferred_io,
 };
 
