Lines Matching refs:info
47 static int vt8500lcd_set_par(struct fb_info *info) in vt8500lcd_set_par() argument
49 struct vt8500lcd_info *fbi = to_vt8500lcd_info(info); in vt8500lcd_set_par()
57 if (info->var.bits_per_pixel <= 8) { in vt8500lcd_set_par()
59 info->var.red.offset = 0; in vt8500lcd_set_par()
60 info->var.red.length = info->var.bits_per_pixel; in vt8500lcd_set_par()
61 info->var.red.msb_right = 0; in vt8500lcd_set_par()
63 info->var.green.offset = 0; in vt8500lcd_set_par()
64 info->var.green.length = info->var.bits_per_pixel; in vt8500lcd_set_par()
65 info->var.green.msb_right = 0; in vt8500lcd_set_par()
67 info->var.blue.offset = 0; in vt8500lcd_set_par()
68 info->var.blue.length = info->var.bits_per_pixel; in vt8500lcd_set_par()
69 info->var.blue.msb_right = 0; in vt8500lcd_set_par()
71 info->var.transp.offset = 0; in vt8500lcd_set_par()
72 info->var.transp.length = 0; in vt8500lcd_set_par()
73 info->var.transp.msb_right = 0; in vt8500lcd_set_par()
75 info->fix.visual = FB_VISUAL_PSEUDOCOLOR; in vt8500lcd_set_par()
76 info->fix.line_length = info->var.xres_virtual / in vt8500lcd_set_par()
77 (8/info->var.bits_per_pixel); in vt8500lcd_set_par()
80 info->var.transp.offset = 0; in vt8500lcd_set_par()
81 info->var.transp.length = 0; in vt8500lcd_set_par()
82 info->var.transp.msb_right = 0; in vt8500lcd_set_par()
84 if (info->var.bits_per_pixel == 16) { in vt8500lcd_set_par()
86 info->var.red.offset = 11; in vt8500lcd_set_par()
87 info->var.red.length = 5; in vt8500lcd_set_par()
88 info->var.red.msb_right = 0; in vt8500lcd_set_par()
89 info->var.green.offset = 5; in vt8500lcd_set_par()
90 info->var.green.length = 6; in vt8500lcd_set_par()
91 info->var.green.msb_right = 0; in vt8500lcd_set_par()
92 info->var.blue.offset = 0; in vt8500lcd_set_par()
93 info->var.blue.length = 5; in vt8500lcd_set_par()
94 info->var.blue.msb_right = 0; in vt8500lcd_set_par()
97 info->var.red.offset = info->var.bits_per_pixel in vt8500lcd_set_par()
99 info->var.red.length = info->var.bits_per_pixel / 3; in vt8500lcd_set_par()
100 info->var.red.msb_right = 0; in vt8500lcd_set_par()
101 info->var.green.offset = info->var.bits_per_pixel / 3; in vt8500lcd_set_par()
102 info->var.green.length = info->var.bits_per_pixel / 3; in vt8500lcd_set_par()
103 info->var.green.msb_right = 0; in vt8500lcd_set_par()
104 info->var.blue.offset = 0; in vt8500lcd_set_par()
105 info->var.blue.length = info->var.bits_per_pixel / 3; in vt8500lcd_set_par()
106 info->var.blue.msb_right = 0; in vt8500lcd_set_par()
109 info->fix.visual = FB_VISUAL_TRUECOLOR; in vt8500lcd_set_par()
110 info->fix.line_length = info->var.bits_per_pixel > 16 ? in vt8500lcd_set_par()
111 info->var.xres_virtual << 2 : in vt8500lcd_set_par()
112 info->var.xres_virtual << 1; in vt8500lcd_set_par()
116 if (bpp_values[i] == info->var.bits_per_pixel) in vt8500lcd_set_par()
124 writel((((info->var.hsync_len - 1) & 0x3f) << 26) in vt8500lcd_set_par()
125 | ((info->var.left_margin & 0xff) << 18) in vt8500lcd_set_par()
126 | (((info->var.xres - 1) & 0x3ff) << 8) in vt8500lcd_set_par()
127 | (info->var.right_margin & 0xff), fbi->regbase + 0x4); in vt8500lcd_set_par()
128 writel((((info->var.vsync_len - 1) & 0x3f) << 26) in vt8500lcd_set_par()
129 | ((info->var.upper_margin & 0xff) << 18) in vt8500lcd_set_par()
130 | (((info->var.yres - 1) & 0x3ff) << 8) in vt8500lcd_set_par()
131 | (info->var.lower_margin & 0xff), fbi->regbase + 0x8); in vt8500lcd_set_par()
132 writel((((info->var.yres - 1) & 0x400) << 2) in vt8500lcd_set_par()
133 | ((info->var.xres - 1) & 0x400), fbi->regbase + 0x10); in vt8500lcd_set_par()
149 struct fb_info *info) { in vt8500lcd_setcolreg() argument
150 struct vt8500lcd_info *fbi = to_vt8500lcd_info(info); in vt8500lcd_setcolreg()
156 if (info->var.grayscale) in vt8500lcd_setcolreg()
186 static int vt8500lcd_ioctl(struct fb_info *info, unsigned int cmd, in vt8500lcd_ioctl() argument
190 struct vt8500lcd_info *fbi = to_vt8500lcd_info(info); in vt8500lcd_ioctl()
209 struct fb_info *info) in vt8500lcd_pan_display() argument
211 unsigned pixlen = info->fix.line_length / info->var.xres_virtual; in vt8500lcd_pan_display()
213 + info->fix.line_length * var->yoffset; in vt8500lcd_pan_display()
214 struct vt8500lcd_info *fbi = to_vt8500lcd_info(info); in vt8500lcd_pan_display()
217 | (((info->var.xres_virtual - info->var.xres) * pixlen / 4) << 20) in vt8500lcd_pan_display()
228 static int vt8500lcd_blank(int blank, struct fb_info *info) in vt8500lcd_blank() argument
237 if (info->fix.visual == FB_VISUAL_PSEUDOCOLOR || in vt8500lcd_blank()
238 info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR) in vt8500lcd_blank()
240 vt8500lcd_setcolreg(i, 0, 0, 0, 0, info); in vt8500lcd_blank()
242 if (info->fix.visual == FB_VISUAL_PSEUDOCOLOR || in vt8500lcd_blank()
243 info->fix.visual == FB_VISUAL_STATIC_PSEUDOCOLOR) in vt8500lcd_blank()
244 fb_set_cmap(&info->cmap, info); in vt8500lcd_blank()