Lines Matching refs:fbinfo
245 static int layer_ctrldesc_init(struct fb_info fbinfo, in layer_ctrldesc_init() argument
252 DCU_CTRLDESCLN_1_HEIGHT(fbinfo.var.yres) | in layer_ctrldesc_init()
253 DCU_CTRLDESCLN_1_WIDTH(fbinfo.var.xres)); in layer_ctrldesc_init()
260 (unsigned int)fbinfo.screen_base); in layer_ctrldesc_init()
301 int fsl_dcu_init(struct fb_info *fbinfo, unsigned int xres, in fsl_dcu_init() argument
311 fbinfo->screen_size = fbinfo->var.xres * fbinfo->var.yres * in fsl_dcu_init()
312 (fbinfo->var.bits_per_pixel / 8); in fsl_dcu_init()
314 if (fbinfo->screen_size > CONFIG_VIDEO_FSL_DCU_MAX_FB_SIZE_MB) { in fsl_dcu_init()
315 fbinfo->screen_size = 0; in fsl_dcu_init()
320 gd->bd->bi_dram[0].size - fbinfo->screen_size; in fsl_dcu_init()
321 fbinfo->screen_base = (char *)gd->fb_base; in fsl_dcu_init()
323 memset(fbinfo->screen_base, 0, fbinfo->screen_size); in fsl_dcu_init()
329 DCU_DISP_SIZE_DELTA_Y(fbinfo->var.yres) | in fsl_dcu_init()
330 DCU_DISP_SIZE_DELTA_X(fbinfo->var.xres / 16)); in fsl_dcu_init()
333 DCU_HSYN_PARA_BP(fbinfo->var.left_margin) | in fsl_dcu_init()
334 DCU_HSYN_PARA_PW(fbinfo->var.hsync_len) | in fsl_dcu_init()
335 DCU_HSYN_PARA_FP(fbinfo->var.right_margin)); in fsl_dcu_init()
338 DCU_VSYN_PARA_BP(fbinfo->var.upper_margin) | in fsl_dcu_init()
339 DCU_VSYN_PARA_PW(fbinfo->var.vsync_len) | in fsl_dcu_init()
340 DCU_VSYN_PARA_FP(fbinfo->var.lower_margin)); in fsl_dcu_init()
363 layer_ctrldesc_init(*fbinfo, 0, pixel_format); in fsl_dcu_init()
365 div = dcu_set_pixel_clock(fbinfo->var.pixclock); in fsl_dcu_init()
378 int fsl_probe_common(struct fb_info *fbinfo, unsigned int *win_x, in fsl_probe_common() argument
418 fbinfo->var.xres = fsl_dcu_mode_db->xres; in fsl_probe_common()
419 fbinfo->var.yres = fsl_dcu_mode_db->yres; in fsl_probe_common()
420 fbinfo->var.bits_per_pixel = 32; in fsl_probe_common()
421 fbinfo->var.pixclock = fsl_dcu_mode_db->pixclock; in fsl_probe_common()
422 fbinfo->var.left_margin = fsl_dcu_mode_db->left_margin; in fsl_probe_common()
423 fbinfo->var.right_margin = fsl_dcu_mode_db->right_margin; in fsl_probe_common()
424 fbinfo->var.upper_margin = fsl_dcu_mode_db->upper_margin; in fsl_probe_common()
425 fbinfo->var.lower_margin = fsl_dcu_mode_db->lower_margin; in fsl_probe_common()
426 fbinfo->var.hsync_len = fsl_dcu_mode_db->hsync_len; in fsl_probe_common()
427 fbinfo->var.vsync_len = fsl_dcu_mode_db->vsync_len; in fsl_probe_common()
428 fbinfo->var.sync = fsl_dcu_mode_db->sync; in fsl_probe_common()
429 fbinfo->var.vmode = fsl_dcu_mode_db->vmode; in fsl_probe_common()
430 fbinfo->fix.line_length = fbinfo->var.xres * in fsl_probe_common()
431 fbinfo->var.bits_per_pixel / 8; in fsl_probe_common()
433 return platform_dcu_init(fbinfo, *win_x, *win_y, in fsl_probe_common()
488 struct fb_info fbinfo = { 0 }; in fsl_dcu_video_probe() local
498 fbinfo.screen_base = (char *)fb_start; in fsl_dcu_video_probe()
499 fbinfo.screen_size = plat->size; in fsl_dcu_video_probe()
501 ret = fsl_probe_common(&fbinfo, &win_x, &win_y); in fsl_dcu_video_probe()