diff options
-rwxr-xr-x | drivers/video/samsung/s3cfb.c | 3 | ||||
-rw-r--r-- | drivers/video/samsung/s3cfb.h | 1 | ||||
-rw-r--r-- | drivers/video/samsung/s3cfb_fimd6x.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/drivers/video/samsung/s3cfb.c b/drivers/video/samsung/s3cfb.c index 9d814f2..d5f6695 100755 --- a/drivers/video/samsung/s3cfb.c +++ b/drivers/video/samsung/s3cfb.c @@ -763,10 +763,11 @@ static void s3cfb_init_fbinfo(struct s3cfb_global *ctrl, int id) var->upper_margin = timing->v_fp; var->lower_margin = timing->v_bp; - var->pixclock = lcd->freq * (var->left_margin + var->right_margin + + ctrl->pixclock_hz = lcd->freq * (var->left_margin + var->right_margin + var->hsync_len + var->xres) * (var->upper_margin + var->lower_margin + var->vsync_len + var->yres); + var->pixclock = KHZ2PICOS(ctrl->pixclock_hz / 1000); dev_dbg(ctrl->dev, "pixclock: %d\n", var->pixclock); diff --git a/drivers/video/samsung/s3cfb.h b/drivers/video/samsung/s3cfb.h index 2d09b71..190d90a 100644 --- a/drivers/video/samsung/s3cfb.h +++ b/drivers/video/samsung/s3cfb.h @@ -240,6 +240,7 @@ struct s3cfb_global { enum s3cfb_output_t output; enum s3cfb_rgb_mode_t rgb_mode; struct s3cfb_lcd *lcd; + u32 pixclock_hz; #ifdef CONFIG_HAS_WAKELOCK struct early_suspend early_suspend; diff --git a/drivers/video/samsung/s3cfb_fimd6x.c b/drivers/video/samsung/s3cfb_fimd6x.c index f6b94ce..360f1f6 100644 --- a/drivers/video/samsung/s3cfb_fimd6x.c +++ b/drivers/video/samsung/s3cfb_fimd6x.c @@ -177,7 +177,7 @@ int s3cfb_set_clock(struct s3cfb_global *ctrl) printk(KERN_INFO "FIMD src hclk = %d\n", src_clk); } - vclk = ctrl->fb[pdata->default_win]->var.pixclock; + vclk = ctrl->pixclock_hz; if (vclk > maxclk) { dev_info(ctrl->dev, "vclk(%d) should be smaller than %d\n", |