Lines Matching refs:ep

56 static int e3d_get_props(struct e3d_info *ep)  in e3d_get_props()  argument
58 ep->width = of_getintprop_default(ep->of_node, "width", 0); in e3d_get_props()
59 ep->height = of_getintprop_default(ep->of_node, "height", 0); in e3d_get_props()
60 ep->depth = of_getintprop_default(ep->of_node, "depth", 8); in e3d_get_props()
62 if (!ep->width || !ep->height) { in e3d_get_props()
64 pci_name(ep->pdev)); in e3d_get_props()
99 static void e3d_clut_write(struct e3d_info *ep, int index, u32 val) in e3d_clut_write() argument
101 void __iomem *ramdac = ep->ramdac; in e3d_clut_write()
104 spin_lock_irqsave(&ep->lock, flags); in e3d_clut_write()
109 spin_unlock_irqrestore(&ep->lock, flags); in e3d_clut_write()
116 struct e3d_info *ep = info->par; in e3d_setcolreg() local
139 e3d_clut_write(ep, regno, value); in e3d_setcolreg()
153 struct e3d_info *ep = info->par; in e3d_imageblit() local
156 spin_lock_irqsave(&ep->lock, flags); in e3d_imageblit()
158 info->screen_base += ep->fb8_buf_diff; in e3d_imageblit()
160 info->screen_base -= ep->fb8_buf_diff; in e3d_imageblit()
161 spin_unlock_irqrestore(&ep->lock, flags); in e3d_imageblit()
166 struct e3d_info *ep = info->par; in e3d_fillrect() local
169 spin_lock_irqsave(&ep->lock, flags); in e3d_fillrect()
171 info->screen_base += ep->fb8_buf_diff; in e3d_fillrect()
173 info->screen_base -= ep->fb8_buf_diff; in e3d_fillrect()
174 spin_unlock_irqrestore(&ep->lock, flags); in e3d_fillrect()
179 struct e3d_info *ep = info->par; in e3d_copyarea() local
182 spin_lock_irqsave(&ep->lock, flags); in e3d_copyarea()
184 info->screen_base += ep->fb8_buf_diff; in e3d_copyarea()
186 info->screen_base -= ep->fb8_buf_diff; in e3d_copyarea()
187 spin_unlock_irqrestore(&ep->lock, flags); in e3d_copyarea()
200 static int e3d_set_fbinfo(struct e3d_info *ep) in e3d_set_fbinfo() argument
202 struct fb_info *info = ep->info; in e3d_set_fbinfo()
206 info->screen_base = ep->fb_base; in e3d_set_fbinfo()
207 info->screen_size = ep->fb_size; in e3d_set_fbinfo()
209 info->pseudo_palette = ep->pseudo_palette; in e3d_set_fbinfo()
213 info->fix.smem_start = ep->fb_base_phys; in e3d_set_fbinfo()
214 info->fix.smem_len = ep->fb_size; in e3d_set_fbinfo()
216 if (ep->depth == 32 || ep->depth == 24) in e3d_set_fbinfo()
221 var->xres = ep->width; in e3d_set_fbinfo()
222 var->yres = ep->height; in e3d_set_fbinfo()
225 var->bits_per_pixel = ep->depth; in e3d_set_fbinfo()
250 struct e3d_info *ep; in e3d_pci_register() local
285 ep = info->par; in e3d_pci_register()
286 ep->info = info; in e3d_pci_register()
287 ep->pdev = pdev; in e3d_pci_register()
288 spin_lock_init(&ep->lock); in e3d_pci_register()
289 ep->of_node = of_node; in e3d_pci_register()
296 &ep->fb_base_reg); in e3d_pci_register()
297 ep->fb_base_reg &= PCI_BASE_ADDRESS_MEM_MASK; in e3d_pci_register()
299 ep->regs_base_phys = pci_resource_start (pdev, 1); in e3d_pci_register()
306 ep->ramdac = ioremap(ep->regs_base_phys + 0x8000, 0x1000); in e3d_pci_register()
307 if (!ep->ramdac) { in e3d_pci_register()
312 ep->fb8_0_off = readl(ep->ramdac + RAMDAC_VID_8FB_0); in e3d_pci_register()
313 ep->fb8_0_off -= ep->fb_base_reg; in e3d_pci_register()
315 ep->fb8_1_off = readl(ep->ramdac + RAMDAC_VID_8FB_1); in e3d_pci_register()
316 ep->fb8_1_off -= ep->fb_base_reg; in e3d_pci_register()
318 ep->fb8_buf_diff = ep->fb8_1_off - ep->fb8_0_off; in e3d_pci_register()
320 ep->fb_base_phys = pci_resource_start (pdev, 0); in e3d_pci_register()
321 ep->fb_base_phys += ep->fb8_0_off; in e3d_pci_register()
330 err = e3d_get_props(ep); in e3d_pci_register()
334 line_length = (readl(ep->ramdac + RAMDAC_VID_CFG) >> 16) & 0xff; in e3d_pci_register()
337 switch (ep->depth) { in e3d_pci_register()
351 ep->fb_size = info->fix.line_length * ep->height; in e3d_pci_register()
353 ep->fb_base = ioremap(ep->fb_base_phys, ep->fb_size); in e3d_pci_register()
354 if (!ep->fb_base) { in e3d_pci_register()
359 err = e3d_set_fbinfo(ep); in e3d_pci_register()
380 iounmap(ep->fb_base); in e3d_pci_register()
386 iounmap(ep->ramdac); in e3d_pci_register()