From f78095e40b5d9f0c03985e296289be5a84a40f8a Mon Sep 17 00:00:00 2001
From: Donghwa Lee <dh09.lee@samsung.com>
Date: Mon, 23 Apr 2012 15:37:05 +0000
Subject: [PATCH] EXYNOS: Change bits per pixel value proper for u-boot.

vl_bpix of vidinfo_t was changed proper value for u-boot.
It is used to multiple of 2 by using NBITS() macro.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
---
 board/samsung/trats/trats.c | 2 +-
 drivers/video/exynos_fb.c   | 2 +-
 drivers/video/exynos_fimd.c | 6 +++---
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/board/samsung/trats/trats.c b/board/samsung/trats/trats.c
index f0775fd038..3085de1a14 100644
--- a/board/samsung/trats/trats.c
+++ b/board/samsung/trats/trats.c
@@ -467,7 +467,7 @@ void init_panel_info(vidinfo_t *vid)
 	vid->vl_vsp	= CONFIG_SYS_LOW;
 	vid->vl_dp	= CONFIG_SYS_LOW;
 
-	vid->vl_bpix	= 32;
+	vid->vl_bpix	= 5;
 	vid->dual_lcd_enabled = 0;
 
 	/* s6e8ax0 Panel */
diff --git a/drivers/video/exynos_fb.c b/drivers/video/exynos_fb.c
index 0eb7f58688..a1cf44964b 100644
--- a/drivers/video/exynos_fb.c
+++ b/drivers/video/exynos_fb.c
@@ -52,7 +52,7 @@ static void exynos_lcd_init_mem(void *lcdbase, vidinfo_t *vid)
 	unsigned long palette_size;
 	unsigned int fb_size;
 
-	fb_size = vid->vl_row * vid->vl_col * (vid->vl_bpix >> 3);
+	fb_size = vid->vl_row * vid->vl_col * (NBITS(vid->vl_bpix) >> 3);
 
 	lcd_base = lcdbase;
 
diff --git a/drivers/video/exynos_fimd.c b/drivers/video/exynos_fimd.c
index 2a60fcfbac..6416b90fcc 100644
--- a/drivers/video/exynos_fimd.c
+++ b/drivers/video/exynos_fimd.c
@@ -110,7 +110,7 @@ static void exynos_fimd_set_buffer_address(unsigned int win_id)
 		(struct exynos4_fb *)samsung_get_base_fimd();
 
 	start_addr = (unsigned long)lcd_base_addr;
-	end_addr = start_addr + ((pvid->vl_col * (pvid->vl_bpix / 8)) *
+	end_addr = start_addr + ((pvid->vl_col * (NBITS(pvid->vl_bpix) / 8)) *
 				pvid->vl_row);
 
 	writel(start_addr, (unsigned int)&fimd_ctrl->vidw00add0b0 +
@@ -331,7 +331,7 @@ void exynos_fimd_lcd_init(vidinfo_t *vid)
 	exynos_fimd_set_buffer_address(pvid->win_id);
 
 	/* set buffer size */
-	cfg = EXYNOS_VIDADDR_PAGEWIDTH(pvid->vl_col * pvid->vl_bpix / 8);
+	cfg = EXYNOS_VIDADDR_PAGEWIDTH(pvid->vl_col * NBITS(pvid->vl_bpix) / 8);
 	writel(cfg, (unsigned int)&fimd_ctrl->vidw00add2 +
 					EXYNOS_BUFFER_SIZE(pvid->win_id));
 
@@ -350,5 +350,5 @@ void exynos_fimd_lcd_init(vidinfo_t *vid)
 
 unsigned long exynos_fimd_calc_fbsize(void)
 {
-	return pvid->vl_col * pvid->vl_row * (pvid->vl_bpix / 8);
+	return pvid->vl_col * pvid->vl_row * (NBITS(pvid->vl_bpix) / 8);
 }
-- 
2.39.5