Lines Matching refs:mmio

161  * @mmio: address of register space
167 static void i810_screen_off(u8 __iomem *mmio, u8 mode)
172 i810_writeb(SR_INDEX, mmio, SR01);
173 val = i810_readb(SR_DATA, mmio);
177 while((i810_readw(DISP_SL, mmio) & 0xFFF) && count--);
178 i810_writeb(SR_INDEX, mmio, SR01);
179 i810_writeb(SR_DATA, mmio, val);
184 * @mmio: address of register space
191 static void i810_dram_off(u8 __iomem *mmio, u8 mode)
195 val = i810_readb(DRAMCH, mmio);
198 i810_writeb(DRAMCH, mmio, val);
203 * @mmio: address of register space
210 static void i810_protect_regs(u8 __iomem *mmio, int mode)
214 i810_writeb(CR_INDEX_CGA, mmio, CR11);
215 reg = i810_readb(CR_DATA_CGA, mmio);
219 i810_writeb(CR_INDEX_CGA, mmio, CR11);
220 i810_writeb(CR_DATA_CGA, mmio, reg);
233 u8 __iomem *mmio = par->mmio_start_virtual;
236 tmp2 = i810_readl(DCLK_2D, mmio);
238 i810_writel(DCLK_2D, mmio, tmp1 | tmp2);
241 tmp2 = i810_readl(DCLK_0DS, mmio);
243 i810_writel(DCLK_0DS, mmio, (tmp1 << 16) | tmp2);
245 i810_writeb(MSR_WRITE, mmio, par->regs.msr | 0xC8 | 1);
258 u8 __iomem *mmio = par->mmio_start_virtual;
261 i810_writeb(CR_INDEX_CGA, mmio, CR70);
262 i810_writeb(CR_DATA_CGA, mmio, par->interlace);
264 i810_writeb(CR_INDEX_CGA, mmio, CR00);
265 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr00);
266 i810_writeb(CR_INDEX_CGA, mmio, CR01);
267 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr01);
268 i810_writeb(CR_INDEX_CGA, mmio, CR02);
269 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr02);
270 i810_writeb(CR_INDEX_CGA, mmio, CR03);
271 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr03);
272 i810_writeb(CR_INDEX_CGA, mmio, CR04);
273 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr04);
274 i810_writeb(CR_INDEX_CGA, mmio, CR05);
275 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr05);
276 i810_writeb(CR_INDEX_CGA, mmio, CR06);
277 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr06);
278 i810_writeb(CR_INDEX_CGA, mmio, CR09);
279 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr09);
280 i810_writeb(CR_INDEX_CGA, mmio, CR10);
281 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr10);
282 i810_writeb(CR_INDEX_CGA, mmio, CR11);
283 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr11);
284 i810_writeb(CR_INDEX_CGA, mmio, CR12);
285 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr12);
286 i810_writeb(CR_INDEX_CGA, mmio, CR15);
287 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr15);
288 i810_writeb(CR_INDEX_CGA, mmio, CR16);
289 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr16);
301 u8 __iomem *mmio = par->mmio_start_virtual;
303 i810_writeb(CR_INDEX_CGA, mmio, CR30);
304 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr30);
305 i810_writeb(CR_INDEX_CGA, mmio, CR31);
306 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr31);
307 i810_writeb(CR_INDEX_CGA, mmio, CR32);
308 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr32);
309 i810_writeb(CR_INDEX_CGA, mmio, CR33);
310 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr33);
311 i810_writeb(CR_INDEX_CGA, mmio, CR35);
312 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr35);
313 i810_writeb(CR_INDEX_CGA, mmio, CR39);
314 i810_writeb(CR_DATA_CGA, mmio, par->regs.cr39);
328 u8 __iomem *mmio = par->mmio_start_virtual;
330 i810_writel(FW_BLC, mmio, par->watermark);
331 tmp = i810_readl(PIXCONF, mmio);
333 i810_writel(PIXCONF, mmio, tmp);
335 i810_writel(OVRACT, mmio, par->ovract);
337 i810_writeb(GR_INDEX, mmio, GR10);
338 tmp8 = i810_readb(GR_DATA, mmio);
340 i810_writeb(GR_INDEX, mmio, GR10);
341 i810_writeb(GR_DATA, mmio, tmp8);
346 * @mmio: address of register space
348 static void i810_hires(u8 __iomem *mmio)
352 i810_writeb(CR_INDEX_CGA, mmio, CR80);
353 val = i810_readb(CR_DATA_CGA, mmio);
354 i810_writeb(CR_INDEX_CGA, mmio, CR80);
355 i810_writeb(CR_DATA_CGA, mmio, val | 1);
357 i810_writel(MEM_MODE, mmio, i810_readl(MEM_MODE, mmio) | 4);
371 u8 __iomem *mmio = par->mmio_start_virtual;
374 i810_writeb(SR_INDEX, mmio, SR01);
375 val = i810_readb(SR_DATA, mmio);
378 i810_writeb(SR_INDEX, mmio, SR01);
379 i810_writeb(SR_DATA, mmio, val);
382 i810_writeb(CR_INDEX_CGA, mmio, CR13);
383 i810_writeb(CR_DATA_CGA, mmio, (u8) tmp);
386 i810_writeb(CR_INDEX_CGA, mmio, CR41);
387 val = i810_readb(CR_DATA_CGA, mmio) & ~0x0F;
388 i810_writeb(CR_INDEX_CGA, mmio, CR41);
389 i810_writeb(CR_DATA_CGA, mmio, (u8) tmp | val);
401 u8 __iomem *mmio = par->mmio_start_virtual;
405 reg1 = i810_readl(PIXCONF, mmio) & ~(0xF0000 | 1 << 27);
406 reg2 = i810_readw(BLTCNTL, mmio) & ~0x30;
410 i810_writel(PIXCONF, mmio, reg1);
411 i810_writew(BLTCNTL, mmio, reg2);
423 u8 __iomem *mmio = par->mmio_start_virtual;
425 i810_screen_off(mmio, OFF);
426 i810_protect_regs(mmio, OFF);
427 i810_dram_off(mmio, OFF);
431 i810_dram_off(mmio, ON);
433 i810_hires(mmio);
434 i810_screen_off(mmio, ON);
435 i810_protect_regs(mmio, ON);
441 u8 __iomem *mmio)
443 i810_writeb(CLUT_INDEX_WRITE, mmio, regno);
444 i810_writeb(CLUT_DATA, mmio, red);
445 i810_writeb(CLUT_DATA, mmio, green);
446 i810_writeb(CLUT_DATA, mmio, blue);
450 u8 __iomem *mmio)
452 i810_writeb(CLUT_INDEX_READ, mmio, regno);
453 *red = i810_readb(CLUT_DATA, mmio);
454 *green = i810_readb(CLUT_DATA, mmio);
455 *blue = i810_readb(CLUT_DATA, mmio);
464 u8 __iomem *mmio = par->mmio_start_virtual;
467 tmp2 = i810_readl(DCLK_2D, mmio);
470 i810_writel(DCLK_2D, mmio, tmp1 | tmp2);
473 tmp2 = i810_readl(DCLK_1D, mmio);
476 i810_writel(DCLK_1D, mmio, tmp1 | tmp2);
478 i810_writel(DCLK_0DS, mmio, par->hw_state.dclk_0ds);
484 u8 __iomem *mmio = par->mmio_start_virtual;
487 tmp2 = i810_readl(PIXCONF, mmio);
490 i810_writel(PIXCONF, mmio, tmp1 | tmp2);
496 u8 __iomem *mmio = par->mmio_start_virtual;
499 i810_writeb(CR_INDEX_CGA, mmio, CR30+i);
500 i810_writeb(CR_DATA_CGA, mmio, *(&(par->hw_state.cr30) + i));
502 i810_writeb(CR_INDEX_CGA, mmio, CR35);
503 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr35);
504 i810_writeb(CR_INDEX_CGA, mmio, CR39);
505 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr39);
506 i810_writeb(CR_INDEX_CGA, mmio, CR41);
507 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr39);
510 i810_writeb(CR_INDEX_CGA, mmio, CR70);
513 j = i810_readb(CR_DATA_CGA, mmio);
514 i810_writeb(CR_INDEX_CGA, mmio, CR70);
515 i810_writeb(CR_DATA_CGA, mmio, j | i);
517 i810_writeb(CR_INDEX_CGA, mmio, CR80);
518 i810_writeb(CR_DATA_CGA, mmio, par->hw_state.cr80);
519 i810_writeb(MSR_WRITE, mmio, par->hw_state.msr);
520 i810_writeb(SR_INDEX, mmio, SR01);
522 j = i810_readb(SR_DATA, mmio) & 0xE0;
523 i810_writeb(SR_INDEX, mmio, SR01);
524 i810_writeb(SR_DATA, mmio, i | j);
530 u8 __iomem *mmio = par->mmio_start_virtual;
533 i810_writeb(CR_INDEX_CGA, mmio, CR00 + i);
534 i810_writeb(CR_DATA_CGA, mmio, *((&par->hw_state.cr00) + i));
537 i810_writeb(CR_INDEX_CGA, mmio, CR10 + i);
538 i810_writeb(CR_DATA_CGA, mmio, *((&par->hw_state.cr10) + i));
545 u8 __iomem *mmio = par->mmio_start_virtual;
547 i810_writeb(GR_INDEX, mmio, GR10);
548 tmp = i810_readb(GR_DATA, mmio);
551 i810_writeb(GR_INDEX, mmio, GR10);
552 i810_writeb(GR_DATA, mmio, tmp);
559 u8 __iomem *mmio = par->mmio_start_virtual;
561 tmp_word = i810_readw(BLTCNTL, mmio);
564 i810_writew(BLTCNTL, mmio, tmp_word);
566 i810_dram_off(mmio, OFF);
567 i810_writel(PIXCONF, mmio, par->hw_state.pixconf);
568 i810_dram_off(mmio, ON);
570 tmp_word = i810_readw(HWSTAM, mmio);
573 i810_writew(HWSTAM, mmio, tmp_word);
575 tmp_long = i810_readl(FW_BLC, mmio);
578 i810_writel(FW_BLC, mmio, tmp_long);
580 i810_writel(HWS_PGA, mmio, par->hw_state.hws_pga);
581 i810_writew(IER, mmio, par->hw_state.ier);
582 i810_writew(IMR, mmio, par->hw_state.imr);
583 i810_writel(DPLYSTAS, mmio, par->hw_state.dplystas);
588 u8 __iomem *mmio = par->mmio_start_virtual;
590 i810_screen_off(mmio, OFF);
591 i810_protect_regs(mmio, OFF);
592 i810_dram_off(mmio, OFF);
598 i810_dram_off(mmio, ON);
600 i810_screen_off(mmio, ON);
601 i810_protect_regs(mmio, ON);
611 u8 __iomem *mmio = par->mmio_start_virtual;
614 i810_writeb(CR_INDEX_CGA, mmio, CR30 + i);
615 *(&(par->hw_state.cr30) + i) = i810_readb(CR_DATA_CGA, mmio);
617 i810_writeb(CR_INDEX_CGA, mmio, CR35);
618 par->hw_state.cr35 = i810_readb(CR_DATA_CGA, mmio);
619 i810_writeb(CR_INDEX_CGA, mmio, CR39);
620 par->hw_state.cr39 = i810_readb(CR_DATA_CGA, mmio);
621 i810_writeb(CR_INDEX_CGA, mmio, CR41);
622 par->hw_state.cr41 = i810_readb(CR_DATA_CGA, mmio);
623 i810_writeb(CR_INDEX_CGA, mmio, CR70);
624 par->hw_state.cr70 = i810_readb(CR_DATA_CGA, mmio);
625 par->hw_state.msr = i810_readb(MSR_READ, mmio);
626 i810_writeb(CR_INDEX_CGA, mmio, CR80);
627 par->hw_state.cr80 = i810_readb(CR_DATA_CGA, mmio);
628 i810_writeb(SR_INDEX, mmio, SR01);
629 par->hw_state.sr01 = i810_readb(SR_DATA, mmio);
635 u8 __iomem *mmio = par->mmio_start_virtual;
638 i810_writeb(CR_INDEX_CGA, mmio, CR00 + i);
639 *((&par->hw_state.cr00) + i) = i810_readb(CR_DATA_CGA, mmio);
642 i810_writeb(CR_INDEX_CGA, mmio, CR10 + i);
643 *((&par->hw_state.cr10) + i) = i810_readb(CR_DATA_CGA, mmio);
649 u8 __iomem *mmio = par->mmio_start_virtual;
651 par->hw_state.dclk_2d = i810_readl(DCLK_2D, mmio);
652 par->hw_state.dclk_1d = i810_readl(DCLK_1D, mmio);
653 par->hw_state.dclk_0ds = i810_readl(DCLK_0DS, mmio);
654 par->hw_state.pixconf = i810_readl(PIXCONF, mmio);
655 par->hw_state.fw_blc = i810_readl(FW_BLC, mmio);
656 par->hw_state.bltcntl = i810_readw(BLTCNTL, mmio);
657 par->hw_state.hwstam = i810_readw(HWSTAM, mmio);
658 par->hw_state.hws_pga = i810_readl(HWS_PGA, mmio);
659 par->hw_state.ier = i810_readw(IER, mmio);
660 par->hw_state.imr = i810_readw(IMR, mmio);
661 par->hw_state.dplystas = i810_readl(DPLYSTAS, mmio);
766 * @mmio: address of register space
772 static void i810_enable_cursor(u8 __iomem *mmio, int mode)
776 temp = i810_readl(PIXCONF, mmio);
780 i810_writel(PIXCONF, mmio, temp);
822 u8 __iomem *mmio = par->mmio_start_virtual;
827 temp = i810_readb(PIXCONF1, mmio);
828 i810_writeb(PIXCONF1, mmio, temp | EXTENDED_PALETTE);
830 i810_write_dac(4, red, green, blue, mmio);
832 i810_writeb(PIXCONF1, mmio, temp);
835 temp = i810_readb(PIXCONF1, mmio);
836 i810_writeb(PIXCONF1, mmio, temp | EXTENDED_PALETTE);
838 i810_write_dac(5, red, green, blue, mmio);
840 i810_writeb(PIXCONF1, mmio, temp);
852 u8 __iomem *mmio = par->mmio_start_virtual;
854 i810_enable_cursor(mmio, OFF);
855 i810_writel(CURBASE, mmio, par->cursor_heap.physical);
856 i810_writew(CURCNTR, mmio, COORD_ACTIVE | CURSOR_MODE_64_XOR);
1203 u8 __iomem *mmio = par->mmio_start_virtual;
1212 temp = i810_readb(PIXCONF1, mmio);
1213 i810_writeb(PIXCONF1, mmio, temp & ~EXTENDED_PALETTE);
1217 i810_read_dac(regno * 8, red, green, blue, mmio);
1223 i810_read_dac(regno * 8, red, &tmp, blue, mmio);
1224 i810_read_dac(regno * 4, &tmp, green, &tmp, mmio);
1227 i810_read_dac(regno, red, green, blue, mmio);
1230 i810_writeb(PIXCONF1, mmio, temp);
1286 u8 __iomem *mmio = par->mmio_start_virtual;
1302 temp = i810_readb(PIXCONF1, mmio);
1303 i810_writeb(PIXCONF1, mmio, temp & ~EXTENDED_PALETTE);
1309 (u8) green, (u8) blue, mmio);
1318 (u8) blue, mmio);
1320 i810_read_dac((u8) (regno*4), &r, &g, &b, mmio);
1323 b, mmio);
1326 (u8) blue, mmio);
1329 i810_writeb(PIXCONF1, mmio, temp);
1392 u8 __iomem *mmio = par->mmio_start_virtual;
1395 pwr = i810_readl(PWR_CLKC, mmio);
1427 i810_screen_off(mmio, scr_off);
1428 i810_writel(HVSYNC, mmio, mode);
1429 i810_writel(PWR_CLKC, mmio, pwr);
1481 u8 __iomem *mmio = par->mmio_start_virtual;
1489 if ((i810_readl(CURBASE, mmio) & 0xf) != par->cursor_heap.physical) {
1494 i810_enable_cursor(mmio, OFF);
1501 i810_writel(CURPOS, mmio, tmp);
1540 i810_enable_cursor(mmio, ON);
1818 u8 __iomem *mmio = par->mmio_start_virtual;
1828 i810_writel(HVSYNC, mmio, 0);
1829 i810_writel(PWR_CLKC, mmio, 3);
1881 printk("i810fb_init: cannot request mmio region\n");
1889 printk("i810fb_init: cannot remap mmio region\n");