Lines Matching full:variant

60 #define OSD_BASE(win, variant) ((variant).osd + ((win) * (variant).osd_stride))  argument
61 #define VIDOSD_A(win, variant) (OSD_BASE(win, variant) + 0x00) argument
62 #define VIDOSD_B(win, variant) (OSD_BASE(win, variant) + 0x04) argument
63 #define VIDOSD_C(win, variant) (OSD_BASE(win, variant) + 0x08) argument
64 #define VIDOSD_D(win, variant) (OSD_BASE(win, variant) + 0x0C) argument
67 * struct s3c_fb_variant - fb variant information
132 * @variant: The variant information for this driver.
136 struct s3c_fb_variant variant; member
159 * @variant: The variant information for this window.
170 struct s3c_fb_win_variant variant; member
194 * @variant: Variant information for this hardware.
209 struct s3c_fb_variant variant; member
229 return win->variant.valid_bpp & VALID_BPP(bpp); in s3c_fb_validate_win_bpp()
266 if (sfb->variant.palette[win->index] != 0) { in s3c_fb_check_var()
351 if (sfb->variant.has_clksel) in s3c_fb_calc_pixclk()
398 if (win->variant.osd_size_off) in vidosd_set_size()
399 writel(size, sfb->regs + OSD_BASE(win->index, sfb->variant) in vidosd_set_size()
400 + win->variant.osd_size_off); in vidosd_set_size()
413 if (win->variant.has_osd_alpha) in vidosd_set_alpha()
414 writel(alpha, sfb->regs + VIDOSD_C(win->index, sfb->variant)); in vidosd_set_alpha()
429 if (sfb->variant.has_prtcon) { in shadow_protect_win()
431 } else if (sfb->variant.has_shadowcon) { in shadow_protect_win()
437 if (sfb->variant.has_prtcon) { in shadow_protect_win()
439 } else if (sfb->variant.has_shadowcon) { in shadow_protect_win()
512 if (win->variant.palette_sz >= 256) in s3c_fb_set_par()
541 writel(info->fix.smem_start, buf + sfb->variant.buf_start); in s3c_fb_set_par()
544 writel(data, buf + sfb->variant.buf_end); in s3c_fb_set_par()
551 writel(data, regs + sfb->variant.buf_size + (win_no * 4)); in s3c_fb_set_par()
557 writel(data, regs + VIDOSD_A(win_no, sfb->variant)); in s3c_fb_set_par()
566 writel(data, regs + VIDOSD_B(win_no, sfb->variant)); in s3c_fb_set_par()
578 if (sfb->variant.has_shadowcon) { in s3c_fb_set_par()
648 void __iomem *keycon = regs + sfb->variant.keycon; in s3c_fb_set_par()
662 writel(data, regs + sfb->variant.wincon + (win_no * 4)); in s3c_fb_set_par()
663 writel(0x0, regs + sfb->variant.winmap + (win_no * 4)); in s3c_fb_set_par()
666 if (sfb->variant.has_blendcon) { in s3c_fb_set_par()
705 palreg = sfb->regs + sfb->variant.palette[win->index]; in s3c_fb_update_palette()
715 if (win->variant.palette_16bpp) in s3c_fb_update_palette()
769 if (regno < win->variant.palette_sz) { in s3c_fb_setcolreg()
807 wincon = readl(sfb->regs + sfb->variant.wincon + (index * 4)); in s3c_fb_blank()
819 sfb->regs + sfb->variant.winmap + (index * 4)); in s3c_fb_blank()
825 writel(0x0, sfb->regs + sfb->variant.winmap + (index * 4)); in s3c_fb_blank()
839 writel(wincon, sfb->regs + sfb->variant.wincon + (index * 4)); in s3c_fb_blank()
904 writel(info->fix.smem_start + start_boff, buf + sfb->variant.buf_start); in s3c_fb_pan_display()
905 writel(info->fix.smem_start + end_boff, buf + sfb->variant.buf_end); in s3c_fb_pan_display()
1146 if (sfb->variant.has_shadowcon) { in s3c_fb_release_win()
1164 * @variant: The variant information for this window.
1171 struct s3c_fb_win_variant *variant, in s3c_fb_probe_win() argument
1181 dev_dbg(sfb->dev, "probing window %d, variant %p\n", win_no, variant); in s3c_fb_probe_win()
1185 palette_size = variant->palette_sz * 4; in s3c_fb_probe_win()
1201 win->variant = *variant; in s3c_fb_probe_win()
1215 if (win->variant.palette_16bpp) { in s3c_fb_probe_win()
1257 ret = fb_alloc_cmap(&fbinfo->cmap, win->variant.palette_sz, 1); in s3c_fb_probe_win()
1306 if (sfb->variant.is_2443) in s3c_fb_set_rgb_timing()
1313 writel(data, regs + sfb->variant.vidtcon); in s3c_fb_set_rgb_timing()
1318 writel(data, regs + sfb->variant.vidtcon + 4); in s3c_fb_set_rgb_timing()
1324 writel(data, regs + sfb->variant.vidtcon + 8); in s3c_fb_set_rgb_timing()
1339 writel(0, regs + sfb->variant.wincon + (win * 4)); in s3c_fb_clear_win()
1340 writel(0, regs + VIDOSD_A(win, sfb->variant)); in s3c_fb_clear_win()
1341 writel(0, regs + VIDOSD_B(win, sfb->variant)); in s3c_fb_clear_win()
1342 writel(0, regs + VIDOSD_C(win, sfb->variant)); in s3c_fb_clear_win()
1344 if (sfb->variant.has_shadowcon) { in s3c_fb_clear_win()
1367 if (fbdrv->variant.nr_windows > S3C_FB_MAX_WIN) { in s3c_fb_probe()
1386 sfb->variant = fbdrv->variant; in s3c_fb_probe()
1397 if (!sfb->variant.has_clksel) { in s3c_fb_probe()
1441 if (sfb->variant.has_fixvclk) { in s3c_fb_probe()
1450 for (win = 0; win < fbdrv->variant.nr_windows; win++) in s3c_fb_probe()
1454 for (win = 0; win < (fbdrv->variant.nr_windows - 1); win++) { in s3c_fb_probe()
1455 void __iomem *regs = sfb->regs + sfb->variant.keycon; in s3c_fb_probe()
1466 for (win = 0; win < fbdrv->variant.nr_windows; win++) { in s3c_fb_probe()
1491 if (!sfb->variant.has_clksel) in s3c_fb_probe()
1518 if (!sfb->variant.has_clksel) in s3c_fb_remove()
1545 if (!sfb->variant.has_clksel) in s3c_fb_suspend()
1567 if (!sfb->variant.has_clksel) in s3c_fb_resume()
1575 if (sfb->variant.has_fixvclk) { in s3c_fb_resume()
1583 for (win_no = 0; win_no < sfb->variant.nr_windows; win_no++) in s3c_fb_resume()
1586 for (win_no = 0; win_no < sfb->variant.nr_windows - 1; win_no++) { in s3c_fb_resume()
1587 void __iomem *regs = sfb->regs + sfb->variant.keycon; in s3c_fb_resume()
1622 if (!sfb->variant.has_clksel) in s3c_fb_runtime_suspend()
1637 if (!sfb->variant.has_clksel) in s3c_fb_runtime_resume()
1705 .variant = {
1737 .variant = {