Lines Matching +full:0 +full:x100008
125 int err, offset = 0x20; in platinumfb_set_par()
127 if((err = platinum_var_to_par(&info->var, pinfo, 0))) { in platinumfb_set_par()
138 offset = 0x10; in platinumfb_set_par()
149 return 0; in platinumfb_set_par()
155 * Blank the screen if blank_mode != 0, else unblank. If blank == NULL in platinumfb_blank()
157 * black. Return 0 if blanking succeeded, != 0 if un-/blanking failed due in platinumfb_blank()
169 ctrl = le32_to_cpup(&info->platinum_regs->ctrl.r) | 0x33; in platinumfb_blank()
175 ctrl &= ~0x30; in platinumfb_blank()
179 return 0; in platinumfb_blank()
218 return 0; in platinumfb_setcolreg()
226 baseval += 0x10; in platinum_vram_reqd()
228 baseval += 0x20; in platinum_vram_reqd()
230 return vmode_attrs[video_mode-1].vres * baseval + 0x1000; in platinum_vram_reqd()
245 STORE_D2(6, 0xc6); in set_platinum_clock()
249 STORE_D2(7, init->clock_params[pinfo->clktype][0]); in set_platinum_clock()
253 STORE_D2(4, init->clock_params[pinfo->clktype][0]); in set_platinum_clock()
259 STORE_D2(9, 0xa6); in set_platinum_clock()
281 for (i = 0; i < 26; ++i) in platinum_set_hardware()
284 out_be32(&platinum_regs->reg[26+32].r, (pinfo->total_vram == 0x100000 ? in platinum_set_hardware()
287 out_be32(&platinum_regs->reg[16].r, (unsigned) pinfo->frame_buffer_phys+init->fb_offset+0x10); in platinum_set_hardware()
289 out_be32(&platinum_regs->reg[19].r, (pinfo->total_vram == 0x100000 ? in platinum_set_hardware()
292 out_be32(&platinum_regs->reg[20].r, (pinfo->total_vram == 0x100000 ? 0x11 : 0x1011)); in platinum_set_hardware()
293 out_be32(&platinum_regs->reg[21].r, 0x100); in platinum_set_hardware()
296 out_be32(&platinum_regs->reg[26].r, 0xc00); in platinum_set_hardware()
297 out_be32(&platinum_regs->reg[27].r, 0x235); in platinum_set_hardware()
298 /* out_be32(&platinum_regs->reg[27].r, 0x2aa); */ in platinum_set_hardware()
300 STORE_D2(0, (pinfo->total_vram == 0x100000 ? in platinum_set_hardware()
301 init->dacula_ctrl[cmode] & 0xf : in platinum_set_hardware()
304 STORE_D2(2, 0); in platinum_set_hardware()
308 out_be32(&platinum_regs->reg[24].r, 0); /* turn display on */ in platinum_set_hardware()
321 info->screen_base = pinfo->frame_buffer + 0x20; in platinum_init_info()
323 fb_alloc_cmap(&info->cmap, 256, 0); in platinum_init_info()
328 info->fix.mmio_len = 0x1000; in platinum_init_info()
330 info->fix.smem_start = pinfo->frame_buffer_phys + 0x20; /* will be updated later */ in platinum_init_info()
331 info->fix.smem_len = pinfo->total_vram - 0x20; in platinum_init_info()
332 info->fix.ywrapstep = 0; in platinum_init_info()
333 info->fix.xpanstep = 0; in platinum_init_info()
334 info->fix.ypanstep = 0; in platinum_init_info()
335 info->fix.type_aux = 0; in platinum_init_info()
347 printk(KERN_INFO "platinumfb: Monitor sense value = 0x%x, ", sense); in platinum_init_fb()
351 if (default_vmode <= 0 || default_vmode > VMODE_MAX || in platinum_init_fb()
372 if (mac_vmode_to_var(default_vmode, default_cmode, &var) < 0) { in platinum_init_fb()
378 if (mac_vmode_to_var(default_vmode, default_cmode, &var) < 0) { in platinum_init_fb()
396 if (rc < 0) in platinum_init_fb()
401 return 0; in platinum_init_fb()
445 if (mac_var_to_vmode(var, &vmode, &cmode) != 0) { in platinum_var_to_par()
471 return 0; in platinum_var_to_par()
477 pinfo->xoffset = 0; in platinum_var_to_par()
478 pinfo->yoffset = 0; in platinum_var_to_par()
482 return 0; in platinum_var_to_par()
494 return 0; in platinumfb_setup()
498 int vmode = simple_strtoul(this_opt+6, NULL, 0); in platinumfb_setup()
499 if (vmode > 0 && vmode <= VMODE_MAX) in platinumfb_setup()
502 int depth = simple_strtoul(this_opt+6, NULL, 0); in platinumfb_setup()
504 case 0: in platinumfb_setup()
519 return 0; in platinumfb_setup()
524 asm volatile("eieio; dcbf 0,%1" \
546 if (of_address_to_resource(dp, 0, &pinfo->rsrc_reg) || in platinumfb_probe()
552 dev_dbg(&odev->dev, " registers : 0x%llx...0x%llx\n", in platinumfb_probe()
555 dev_dbg(&odev->dev, " framebuffer: 0x%llx...0x%llx\n", in platinumfb_probe()
572 pinfo->frame_buffer = ioremap_wt(pinfo->rsrc_fb.start, 0x400000); in platinumfb_probe()
577 pinfo->platinum_regs = ioremap(pinfo->rsrc_reg.start, 0x1000); in platinumfb_probe()
579 pinfo->cmap_regs_phys = 0xf301b000; /* XXX not in prom? */ in platinumfb_probe()
580 request_mem_region(pinfo->cmap_regs_phys, 0x1000, "platinumfb cmap"); in platinumfb_probe()
581 pinfo->cmap_regs = ioremap(pinfo->cmap_regs_phys, 0x1000); in platinumfb_probe()
585 out_be32(&pinfo->platinum_regs->reg[20].r, 0x1011); /* select max vram */ in platinumfb_probe()
586 out_be32(&pinfo->platinum_regs->reg[24].r, 0); /* switch in vram */ in platinumfb_probe()
589 fbuffer[0x100000] = 0x34; in platinumfb_probe()
590 fbuffer[0x100008] = 0x0; in platinumfb_probe()
591 invalidate_cache(&fbuffer[0x100000]); in platinumfb_probe()
592 fbuffer[0x200000] = 0x56; in platinumfb_probe()
593 fbuffer[0x200008] = 0x0; in platinumfb_probe()
594 invalidate_cache(&fbuffer[0x200000]); in platinumfb_probe()
595 fbuffer[0x300000] = 0x78; in platinumfb_probe()
596 fbuffer[0x300008] = 0x0; in platinumfb_probe()
597 invalidate_cache(&fbuffer[0x300000]); in platinumfb_probe()
599 bank1 = fbuffer[0x100000] == 0x34; in platinumfb_probe()
600 bank2 = fbuffer[0x200000] == 0x56; in platinumfb_probe()
601 bank3 = fbuffer[0x300000] == 0x78; in platinumfb_probe()
602 pinfo->total_vram = (bank0 + bank1 + bank2 + bank3) * 0x100000; in platinumfb_probe()
610 out_8(&pinfo->cmap_regs->addr, 0x40); in platinumfb_probe()
613 case 0x3c: in platinumfb_probe()
615 printk(KERN_INFO "platinumfb: DACula type 0x3c\n"); in platinumfb_probe()
617 case 0x84: in platinumfb_probe()
618 pinfo->clktype = 0; in platinumfb_probe()
619 printk(KERN_INFO "platinumfb: DACula type 0x84\n"); in platinumfb_probe()
622 pinfo->clktype = 0; in platinumfb_probe()
629 if (rc != 0) { in platinumfb_probe()
654 release_mem_region(pinfo->cmap_regs_phys, 0x1000); in platinumfb_remove()
658 return 0; in platinumfb_remove()
690 return 0; in platinumfb_init()