Lines Matching refs:mmio

166 static void i810_screen_off(u8 __iomem *mmio, u8 mode)  in i810_screen_off()  argument
171 i810_writeb(SR_INDEX, mmio, SR01); in i810_screen_off()
172 val = i810_readb(SR_DATA, mmio); in i810_screen_off()
176 while((i810_readw(DISP_SL, mmio) & 0xFFF) && count--); in i810_screen_off()
177 i810_writeb(SR_INDEX, mmio, SR01); in i810_screen_off()
178 i810_writeb(SR_DATA, mmio, val); in i810_screen_off()
190 static void i810_dram_off(u8 __iomem *mmio, u8 mode) in i810_dram_off() argument
194 val = i810_readb(DRAMCH, mmio); in i810_dram_off()
197 i810_writeb(DRAMCH, mmio, val); in i810_dram_off()
209 static void i810_protect_regs(u8 __iomem *mmio, int mode) in i810_protect_regs() argument
213 i810_writeb(CR_INDEX_CGA, mmio, CR11); in i810_protect_regs()
214 reg = i810_readb(CR_DATA_CGA, mmio); in i810_protect_regs()
218 i810_writeb(CR_INDEX_CGA, mmio, CR11); in i810_protect_regs()
219 i810_writeb(CR_DATA_CGA, mmio, reg); in i810_protect_regs()
232 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_pll() local
235 tmp2 = i810_readl(DCLK_2D, mmio); in i810_load_pll()
237 i810_writel(DCLK_2D, mmio, tmp1 | tmp2); in i810_load_pll()
240 tmp2 = i810_readl(DCLK_0DS, mmio); in i810_load_pll()
242 i810_writel(DCLK_0DS, mmio, (tmp1 << 16) | tmp2); in i810_load_pll()
244 i810_writeb(MSR_WRITE, mmio, par->regs.msr | 0xC8 | 1); in i810_load_pll()
257 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_vga() local
260 i810_writeb(CR_INDEX_CGA, mmio, CR70); in i810_load_vga()
261 i810_writeb(CR_DATA_CGA, mmio, par->interlace); in i810_load_vga()
263 i810_writeb(CR_INDEX_CGA, mmio, CR00); in i810_load_vga()
264 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr00); in i810_load_vga()
265 i810_writeb(CR_INDEX_CGA, mmio, CR01); in i810_load_vga()
266 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr01); in i810_load_vga()
267 i810_writeb(CR_INDEX_CGA, mmio, CR02); in i810_load_vga()
268 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr02); in i810_load_vga()
269 i810_writeb(CR_INDEX_CGA, mmio, CR03); in i810_load_vga()
270 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr03); in i810_load_vga()
271 i810_writeb(CR_INDEX_CGA, mmio, CR04); in i810_load_vga()
272 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr04); in i810_load_vga()
273 i810_writeb(CR_INDEX_CGA, mmio, CR05); in i810_load_vga()
274 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr05); in i810_load_vga()
275 i810_writeb(CR_INDEX_CGA, mmio, CR06); in i810_load_vga()
276 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr06); in i810_load_vga()
277 i810_writeb(CR_INDEX_CGA, mmio, CR09); in i810_load_vga()
278 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr09); in i810_load_vga()
279 i810_writeb(CR_INDEX_CGA, mmio, CR10); in i810_load_vga()
280 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr10); in i810_load_vga()
281 i810_writeb(CR_INDEX_CGA, mmio, CR11); in i810_load_vga()
282 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr11); in i810_load_vga()
283 i810_writeb(CR_INDEX_CGA, mmio, CR12); in i810_load_vga()
284 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr12); in i810_load_vga()
285 i810_writeb(CR_INDEX_CGA, mmio, CR15); in i810_load_vga()
286 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr15); in i810_load_vga()
287 i810_writeb(CR_INDEX_CGA, mmio, CR16); in i810_load_vga()
288 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr16); in i810_load_vga()
300 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_vgax() local
302 i810_writeb(CR_INDEX_CGA, mmio, CR30); in i810_load_vgax()
303 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr30); in i810_load_vgax()
304 i810_writeb(CR_INDEX_CGA, mmio, CR31); in i810_load_vgax()
305 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr31); in i810_load_vgax()
306 i810_writeb(CR_INDEX_CGA, mmio, CR32); in i810_load_vgax()
307 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr32); in i810_load_vgax()
308 i810_writeb(CR_INDEX_CGA, mmio, CR33); in i810_load_vgax()
309 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr33); in i810_load_vgax()
310 i810_writeb(CR_INDEX_CGA, mmio, CR35); in i810_load_vgax()
311 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr35); in i810_load_vgax()
312 i810_writeb(CR_INDEX_CGA, mmio, CR39); in i810_load_vgax()
313 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr39); in i810_load_vgax()
327 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_2d() local
329 i810_writel(FW_BLC, mmio, par->watermark); in i810_load_2d()
330 tmp = i810_readl(PIXCONF, mmio); in i810_load_2d()
332 i810_writel(PIXCONF, mmio, tmp); in i810_load_2d()
334 i810_writel(OVRACT, mmio, par->ovract); in i810_load_2d()
336 i810_writeb(GR_INDEX, mmio, GR10); in i810_load_2d()
337 tmp8 = i810_readb(GR_DATA, mmio); in i810_load_2d()
339 i810_writeb(GR_INDEX, mmio, GR10); in i810_load_2d()
340 i810_writeb(GR_DATA, mmio, tmp8); in i810_load_2d()
347 static void i810_hires(u8 __iomem *mmio) in i810_hires() argument
351 i810_writeb(CR_INDEX_CGA, mmio, CR80); in i810_hires()
352 val = i810_readb(CR_DATA_CGA, mmio); in i810_hires()
353 i810_writeb(CR_INDEX_CGA, mmio, CR80); in i810_hires()
354 i810_writeb(CR_DATA_CGA, mmio, val | 1); in i810_hires()
356 i810_writel(MEM_MODE, mmio, i810_readl(MEM_MODE, mmio) | 4); in i810_hires()
370 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_pitch() local
373 i810_writeb(SR_INDEX, mmio, SR01); in i810_load_pitch()
374 val = i810_readb(SR_DATA, mmio); in i810_load_pitch()
377 i810_writeb(SR_INDEX, mmio, SR01); in i810_load_pitch()
378 i810_writeb(SR_DATA, mmio, val); in i810_load_pitch()
381 i810_writeb(CR_INDEX_CGA, mmio, CR13); in i810_load_pitch()
382 i810_writeb(CR_DATA_CGA, mmio, (u8) tmp); in i810_load_pitch()
385 i810_writeb(CR_INDEX_CGA, mmio, CR41); in i810_load_pitch()
386 val = i810_readb(CR_DATA_CGA, mmio) & ~0x0F; in i810_load_pitch()
387 i810_writeb(CR_INDEX_CGA, mmio, CR41); in i810_load_pitch()
388 i810_writeb(CR_DATA_CGA, mmio, (u8) tmp | val); in i810_load_pitch()
400 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_color() local
404 reg1 = i810_readl(PIXCONF, mmio) & ~(0xF0000 | 1 << 27); in i810_load_color()
405 reg2 = i810_readw(BLTCNTL, mmio) & ~0x30; in i810_load_color()
409 i810_writel(PIXCONF, mmio, reg1); in i810_load_color()
410 i810_writew(BLTCNTL, mmio, reg2); in i810_load_color()
422 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_regs() local
424 i810_screen_off(mmio, OFF); in i810_load_regs()
425 i810_protect_regs(mmio, OFF); in i810_load_regs()
426 i810_dram_off(mmio, OFF); in i810_load_regs()
430 i810_dram_off(mmio, ON); in i810_load_regs()
432 i810_hires(mmio); in i810_load_regs()
433 i810_screen_off(mmio, ON); in i810_load_regs()
434 i810_protect_regs(mmio, ON); in i810_load_regs()
440 u8 __iomem *mmio) in i810_write_dac() argument
442 i810_writeb(CLUT_INDEX_WRITE, mmio, regno); in i810_write_dac()
443 i810_writeb(CLUT_DATA, mmio, red); in i810_write_dac()
444 i810_writeb(CLUT_DATA, mmio, green); in i810_write_dac()
445 i810_writeb(CLUT_DATA, mmio, blue); in i810_write_dac()
449 u8 __iomem *mmio) in i810_read_dac() argument
451 i810_writeb(CLUT_INDEX_READ, mmio, regno); in i810_read_dac()
452 *red = i810_readb(CLUT_DATA, mmio); in i810_read_dac()
453 *green = i810_readb(CLUT_DATA, mmio); in i810_read_dac()
454 *blue = i810_readb(CLUT_DATA, mmio); in i810_read_dac()
463 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_pll() local
466 tmp2 = i810_readl(DCLK_2D, mmio); in i810_restore_pll()
469 i810_writel(DCLK_2D, mmio, tmp1 | tmp2); in i810_restore_pll()
472 tmp2 = i810_readl(DCLK_1D, mmio); in i810_restore_pll()
475 i810_writel(DCLK_1D, mmio, tmp1 | tmp2); in i810_restore_pll()
477 i810_writel(DCLK_0DS, mmio, par->hw_state.dclk_0ds); in i810_restore_pll()
483 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_dac() local
486 tmp2 = i810_readl(PIXCONF, mmio); in i810_restore_dac()
489 i810_writel(PIXCONF, mmio, tmp1 | tmp2); in i810_restore_dac()
495 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_vgax() local
498 i810_writeb(CR_INDEX_CGA, mmio, CR30+i); in i810_restore_vgax()
499 i810_writeb(CR_DATA_CGA, mmio, *(&(par->hw_state.cr30) + i)); in i810_restore_vgax()
501 i810_writeb(CR_INDEX_CGA, mmio, CR35); in i810_restore_vgax()
502 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr35); in i810_restore_vgax()
503 i810_writeb(CR_INDEX_CGA, mmio, CR39); in i810_restore_vgax()
504 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr39); in i810_restore_vgax()
505 i810_writeb(CR_INDEX_CGA, mmio, CR41); in i810_restore_vgax()
506 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr39); in i810_restore_vgax()
509 i810_writeb(CR_INDEX_CGA, mmio, CR70); in i810_restore_vgax()
512 j = i810_readb(CR_DATA_CGA, mmio); in i810_restore_vgax()
513 i810_writeb(CR_INDEX_CGA, mmio, CR70); in i810_restore_vgax()
514 i810_writeb(CR_DATA_CGA, mmio, j | i); in i810_restore_vgax()
516 i810_writeb(CR_INDEX_CGA, mmio, CR80); in i810_restore_vgax()
517 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr80); in i810_restore_vgax()
518 i810_writeb(MSR_WRITE, mmio, par->hw_state.msr); in i810_restore_vgax()
519 i810_writeb(SR_INDEX, mmio, SR01); in i810_restore_vgax()
521 j = i810_readb(SR_DATA, mmio) & 0xE0; in i810_restore_vgax()
522 i810_writeb(SR_INDEX, mmio, SR01); in i810_restore_vgax()
523 i810_writeb(SR_DATA, mmio, i | j); in i810_restore_vgax()
529 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_vga() local
532 i810_writeb(CR_INDEX_CGA, mmio, CR00 + i); in i810_restore_vga()
533 i810_writeb(CR_DATA_CGA, mmio, *((&par->hw_state.cr00) + i)); in i810_restore_vga()
536 i810_writeb(CR_INDEX_CGA, mmio, CR10 + i); in i810_restore_vga()
537 i810_writeb(CR_DATA_CGA, mmio, *((&par->hw_state.cr10) + i)); in i810_restore_vga()
544 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_addr_map() local
546 i810_writeb(GR_INDEX, mmio, GR10); in i810_restore_addr_map()
547 tmp = i810_readb(GR_DATA, mmio); in i810_restore_addr_map()
550 i810_writeb(GR_INDEX, mmio, GR10); in i810_restore_addr_map()
551 i810_writeb(GR_DATA, mmio, tmp); in i810_restore_addr_map()
558 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_2d() local
560 tmp_word = i810_readw(BLTCNTL, mmio); in i810_restore_2d()
563 i810_writew(BLTCNTL, mmio, tmp_word); in i810_restore_2d()
565 i810_dram_off(mmio, OFF); in i810_restore_2d()
566 i810_writel(PIXCONF, mmio, par->hw_state.pixconf); in i810_restore_2d()
567 i810_dram_off(mmio, ON); in i810_restore_2d()
569 tmp_word = i810_readw(HWSTAM, mmio); in i810_restore_2d()
572 i810_writew(HWSTAM, mmio, tmp_word); in i810_restore_2d()
574 tmp_long = i810_readl(FW_BLC, mmio); in i810_restore_2d()
577 i810_writel(FW_BLC, mmio, tmp_long); in i810_restore_2d()
579 i810_writel(HWS_PGA, mmio, par->hw_state.hws_pga); in i810_restore_2d()
580 i810_writew(IER, mmio, par->hw_state.ier); in i810_restore_2d()
581 i810_writew(IMR, mmio, par->hw_state.imr); in i810_restore_2d()
582 i810_writel(DPLYSTAS, mmio, par->hw_state.dplystas); in i810_restore_2d()
587 u8 __iomem *mmio = par->mmio_start_virtual; in i810_restore_vga_state() local
589 i810_screen_off(mmio, OFF); in i810_restore_vga_state()
590 i810_protect_regs(mmio, OFF); in i810_restore_vga_state()
591 i810_dram_off(mmio, OFF); in i810_restore_vga_state()
597 i810_dram_off(mmio, ON); in i810_restore_vga_state()
599 i810_screen_off(mmio, ON); in i810_restore_vga_state()
600 i810_protect_regs(mmio, ON); in i810_restore_vga_state()
610 u8 __iomem *mmio = par->mmio_start_virtual; in i810_save_vgax() local
613 i810_writeb(CR_INDEX_CGA, mmio, CR30 + i); in i810_save_vgax()
614 *(&(par->hw_state.cr30) + i) = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
616 i810_writeb(CR_INDEX_CGA, mmio, CR35); in i810_save_vgax()
617 par->hw_state.cr35 = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
618 i810_writeb(CR_INDEX_CGA, mmio, CR39); in i810_save_vgax()
619 par->hw_state.cr39 = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
620 i810_writeb(CR_INDEX_CGA, mmio, CR41); in i810_save_vgax()
621 par->hw_state.cr41 = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
622 i810_writeb(CR_INDEX_CGA, mmio, CR70); in i810_save_vgax()
623 par->hw_state.cr70 = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
624 par->hw_state.msr = i810_readb(MSR_READ, mmio); in i810_save_vgax()
625 i810_writeb(CR_INDEX_CGA, mmio, CR80); in i810_save_vgax()
626 par->hw_state.cr80 = i810_readb(CR_DATA_CGA, mmio); in i810_save_vgax()
627 i810_writeb(SR_INDEX, mmio, SR01); in i810_save_vgax()
628 par->hw_state.sr01 = i810_readb(SR_DATA, mmio); in i810_save_vgax()
634 u8 __iomem *mmio = par->mmio_start_virtual; in i810_save_vga() local
637 i810_writeb(CR_INDEX_CGA, mmio, CR00 + i); in i810_save_vga()
638 *((&par->hw_state.cr00) + i) = i810_readb(CR_DATA_CGA, mmio); in i810_save_vga()
641 i810_writeb(CR_INDEX_CGA, mmio, CR10 + i); in i810_save_vga()
642 *((&par->hw_state.cr10) + i) = i810_readb(CR_DATA_CGA, mmio); in i810_save_vga()
648 u8 __iomem *mmio = par->mmio_start_virtual; in i810_save_2d() local
650 par->hw_state.dclk_2d = i810_readl(DCLK_2D, mmio); in i810_save_2d()
651 par->hw_state.dclk_1d = i810_readl(DCLK_1D, mmio); in i810_save_2d()
652 par->hw_state.dclk_0ds = i810_readl(DCLK_0DS, mmio); in i810_save_2d()
653 par->hw_state.pixconf = i810_readl(PIXCONF, mmio); in i810_save_2d()
654 par->hw_state.fw_blc = i810_readl(FW_BLC, mmio); in i810_save_2d()
655 par->hw_state.bltcntl = i810_readw(BLTCNTL, mmio); in i810_save_2d()
656 par->hw_state.hwstam = i810_readw(HWSTAM, mmio); in i810_save_2d()
657 par->hw_state.hws_pga = i810_readl(HWS_PGA, mmio); in i810_save_2d()
658 par->hw_state.ier = i810_readw(IER, mmio); in i810_save_2d()
659 par->hw_state.imr = i810_readw(IMR, mmio); in i810_save_2d()
660 par->hw_state.dplystas = i810_readl(DPLYSTAS, mmio); in i810_save_2d()
771 static void i810_enable_cursor(u8 __iomem *mmio, int mode) in i810_enable_cursor() argument
775 temp = i810_readl(PIXCONF, mmio); in i810_enable_cursor()
779 i810_writel(PIXCONF, mmio, temp); in i810_enable_cursor()
821 u8 __iomem *mmio = par->mmio_start_virtual; in i810_load_cursor_colors() local
826 temp = i810_readb(PIXCONF1, mmio); in i810_load_cursor_colors()
827 i810_writeb(PIXCONF1, mmio, temp | EXTENDED_PALETTE); in i810_load_cursor_colors()
829 i810_write_dac(4, red, green, blue, mmio); in i810_load_cursor_colors()
831 i810_writeb(PIXCONF1, mmio, temp); in i810_load_cursor_colors()
834 temp = i810_readb(PIXCONF1, mmio); in i810_load_cursor_colors()
835 i810_writeb(PIXCONF1, mmio, temp | EXTENDED_PALETTE); in i810_load_cursor_colors()
837 i810_write_dac(5, red, green, blue, mmio); in i810_load_cursor_colors()
839 i810_writeb(PIXCONF1, mmio, temp); in i810_load_cursor_colors()
851 u8 __iomem *mmio = par->mmio_start_virtual; in i810_init_cursor() local
853 i810_enable_cursor(mmio, OFF); in i810_init_cursor()
854 i810_writel(CURBASE, mmio, par->cursor_heap.physical); in i810_init_cursor()
855 i810_writew(CURCNTR, mmio, COORD_ACTIVE | CURSOR_MODE_64_XOR); in i810_init_cursor()
1202 u8 __iomem *mmio = par->mmio_start_virtual; in i810fb_getcolreg() local
1211 temp = i810_readb(PIXCONF1, mmio); in i810fb_getcolreg()
1212 i810_writeb(PIXCONF1, mmio, temp & ~EXTENDED_PALETTE); in i810fb_getcolreg()
1216 i810_read_dac(regno * 8, red, green, blue, mmio); in i810fb_getcolreg()
1222 i810_read_dac(regno * 8, red, &tmp, blue, mmio); in i810fb_getcolreg()
1223 i810_read_dac(regno * 4, &tmp, green, &tmp, mmio); in i810fb_getcolreg()
1226 i810_read_dac(regno, red, green, blue, mmio); in i810fb_getcolreg()
1229 i810_writeb(PIXCONF1, mmio, temp); in i810fb_getcolreg()
1285 u8 __iomem *mmio = par->mmio_start_virtual; in i810fb_setcolreg() local
1301 temp = i810_readb(PIXCONF1, mmio); in i810fb_setcolreg()
1302 i810_writeb(PIXCONF1, mmio, temp & ~EXTENDED_PALETTE); in i810fb_setcolreg()
1308 (u8) green, (u8) blue, mmio); in i810fb_setcolreg()
1317 (u8) blue, mmio); in i810fb_setcolreg()
1319 i810_read_dac((u8) (regno*4), &r, &g, &b, mmio); in i810fb_setcolreg()
1322 b, mmio); in i810fb_setcolreg()
1325 (u8) blue, mmio); in i810fb_setcolreg()
1328 i810_writeb(PIXCONF1, mmio, temp); in i810fb_setcolreg()
1391 u8 __iomem *mmio = par->mmio_start_virtual; in i810fb_blank() local
1394 pwr = i810_readl(PWR_CLKC, mmio); in i810fb_blank()
1426 i810_screen_off(mmio, scr_off); in i810fb_blank()
1427 i810_writel(HVSYNC, mmio, mode); in i810fb_blank()
1428 i810_writel(PWR_CLKC, mmio, pwr); in i810fb_blank()
1480 u8 __iomem *mmio = par->mmio_start_virtual; in i810fb_cursor() local
1488 if ((i810_readl(CURBASE, mmio) & 0xf) != par->cursor_heap.physical) { in i810fb_cursor()
1493 i810_enable_cursor(mmio, OFF); in i810fb_cursor()
1500 i810_writel(CURPOS, mmio, tmp); in i810fb_cursor()
1539 i810_enable_cursor(mmio, ON); in i810fb_cursor()
1817 u8 __iomem *mmio = par->mmio_start_virtual; in i810_init_device() local
1825 i810_writel(HVSYNC, mmio, 0); in i810_init_device()
1826 i810_writel(PWR_CLKC, mmio, 3); in i810_init_device()