diff --git a/drivers/video/fsl_diu_fb.c b/drivers/video/fsl_diu_fb.c
index e1d6c26..cb43904 100644
--- a/drivers/video/fsl_diu_fb.c
+++ b/drivers/video/fsl_diu_fb.c
@@ -31,52 +31,8 @@
 #include "videomodes.h"
 #include <video_fb.h>
 #include <fsl_diu_fb.h>
-
-struct fb_var_screeninfo {
-	unsigned int xres;		/* visible resolution		*/
-	unsigned int yres;
-
-	unsigned int bits_per_pixel;	/* guess what			*/
-
-	/* Timing: All values in pixclocks, except pixclock (of course) */
-	unsigned int pixclock;		/* pixel clock in ps (pico seconds) */
-	unsigned int left_margin;	/* time from sync to picture	*/
-	unsigned int right_margin;	/* time from picture to sync	*/
-	unsigned int upper_margin;	/* time from sync to picture	*/
-	unsigned int lower_margin;
-	unsigned int hsync_len;		/* length of horizontal sync	*/
-	unsigned int vsync_len;		/* length of vertical sync	*/
-	unsigned int sync;		/* see FB_SYNC_*		*/
-	unsigned int vmode;		/* see FB_VMODE_*		*/
-	unsigned int rotate;		/* angle we rotate counter clockwise */
-};
-
-struct fb_info {
-	struct fb_var_screeninfo var;	/* Current var */
-	unsigned int smem_len;		/* Length of frame buffer mem */
-	unsigned int type;		/* see FB_TYPE_*		*/
-	unsigned int line_length;	/* length of a line in bytes    */
-
-	void *screen_base;
-	unsigned long screen_size;
-};
-
-struct fb_videomode {
-	const char *name;	/* optional */
-	unsigned int refresh;		/* optional */
-	unsigned int xres;
-	unsigned int yres;
-	unsigned int pixclock;
-	unsigned int left_margin;
-	unsigned int right_margin;
-	unsigned int upper_margin;
-	unsigned int lower_margin;
-	unsigned int hsync_len;
-	unsigned int vsync_len;
-	unsigned int sync;
-	unsigned int vmode;
-	unsigned int flag;
-};
+#include <linux/list.h>
+#include <linux/fb.h>
 
 /* This setting is used for the ifm pdm360ng with PRIMEVIEW PM070WL3 */
 static struct fb_videomode fsl_diu_mode_800_480 = {
@@ -248,7 +204,7 @@
  * point to the framebuffer memory. Memory is aligned as needed.
  */
 static struct diu_ad *allocate_fb(unsigned int xres, unsigned int yres,
-				  unsigned int depth, void **fb)
+				  unsigned int depth, char **fb)
 {
 	unsigned long size = xres * yres * depth;
 	struct diu_addr addr;
@@ -327,10 +283,10 @@
 	info.var.vsync_len = fsl_diu_mode_db->vsync_len;
 	info.var.sync = fsl_diu_mode_db->sync;
 	info.var.vmode = fsl_diu_mode_db->vmode;
-	info.line_length = info.var.xres * info.var.bits_per_pixel / 8;
+	info.fix.line_length = info.var.xres * info.var.bits_per_pixel / 8;
 
 	/* Memory allocation for framebuffer */
-	info.smem_len =
+	info.screen_size =
 		info.var.xres * info.var.yres * (info.var.bits_per_pixel / 8);
 	ad = allocate_fb(info.var.xres, info.var.yres,
 			 info.var.bits_per_pixel / 8, &info.screen_base);
