Lines Matching refs:fb_regs
31 static unsigned long fb_regs; variable
96 while (in_be16(fb_regs + 0x6002) & 0x4) udelay(1); in hpfb_setcolreg()
98 out_be16(fb_regs + 0x60ba, 0xff); in hpfb_setcolreg()
100 out_be16(fb_regs + 0x60b2, _red); in hpfb_setcolreg()
101 out_be16(fb_regs + 0x60b4, _green); in hpfb_setcolreg()
102 out_be16(fb_regs + 0x60b6, _blue); in hpfb_setcolreg()
103 out_be16(fb_regs + 0x60b8, ~_regno); in hpfb_setcolreg()
104 out_be16(fb_regs + 0x60f0, 0xff); in hpfb_setcolreg()
108 while (in_be16(fb_regs + 0x6002) & 0x4) udelay(1); in hpfb_setcolreg()
109 out_be16(fb_regs + 0x60b2, 0); in hpfb_setcolreg()
110 out_be16(fb_regs + 0x60b4, 0); in hpfb_setcolreg()
111 out_be16(fb_regs + 0x60b6, 0); in hpfb_setcolreg()
112 out_be16(fb_regs + 0x60b8, 0); in hpfb_setcolreg()
121 out_8(fb_regs + TC_NBLANK, (blank ? 0x00 : fb_bitmask)); in hpfb_blank()
129 while (in_8(fb_regs + BUSY) & fb_bitmask) in topcat_blit()
132 out_8(fb_regs + TC_FBEN, fb_bitmask); in topcat_blit()
134 out_8(fb_regs + TC_WEN, fb_bitmask); in topcat_blit()
135 out_8(fb_regs + WMRR, rr); in topcat_blit()
137 out_be16(fb_regs + SOURCE_X, x0); in topcat_blit()
138 out_be16(fb_regs + SOURCE_Y, y0); in topcat_blit()
139 out_be16(fb_regs + DEST_X, x1); in topcat_blit()
140 out_be16(fb_regs + DEST_Y, y1); in topcat_blit()
141 out_be16(fb_regs + WWIDTH, w); in topcat_blit()
142 out_be16(fb_regs + WHEIGHT, h); in topcat_blit()
143 out_8(fb_regs + WMOVE, fb_bitmask); in topcat_blit()
157 while (in_8(fb_regs + BUSY) & fb_bitmask) in hpfb_fillrect()
161 out_8(fb_regs + TC_WEN, fb_bitmask & clr); in hpfb_fillrect()
162 out_8(fb_regs + WMRR, (region->rop == ROP_COPY ? RR_SET : RR_INVERT)); in hpfb_fillrect()
165 out_8(fb_regs + TC_WEN, fb_bitmask & ~clr); in hpfb_fillrect()
166 out_8(fb_regs + WMRR, (region->rop == ROP_COPY ? RR_CLEAR : RR_NOOP)); in hpfb_fillrect()
177 while (in_8(fb_regs + BUSY) & fb_bitmask) in hpfb_sync()
180 out_8(fb_regs + TC_WEN, fb_bitmask); in hpfb_sync()
181 out_8(fb_regs + TC_PRR, RR_COPY); in hpfb_sync()
182 out_8(fb_regs + TC_FBEN, fb_bitmask); in hpfb_sync()
215 fb_regs = virt_base; in hpfb_init_one()
216 fboff = (in_8(fb_regs + HPFB_FBOMSB) << 8) | in_8(fb_regs + HPFB_FBOLSB); in hpfb_init_one()
218 fb_info.fix.smem_start = (in_8(fb_regs + fboff) << 16); in hpfb_init_one()
224 if (DIO_SECID(fb_regs) != DIO_ID2_TOPCAT) { in hpfb_init_one()
226 while (in_be16(fb_regs+0x4800) & 1) in hpfb_init_one()
228 out_be16(fb_regs+0x4800, 0); /* Catseye status */ in hpfb_init_one()
229 out_be16(fb_regs+0x4510, 0); /* VB */ in hpfb_init_one()
230 out_be16(fb_regs+0x4512, 0); /* TCNTRL */ in hpfb_init_one()
231 out_be16(fb_regs+0x4514, 0); /* ACNTRL */ in hpfb_init_one()
232 out_be16(fb_regs+0x4516, 0); /* PNCNTRL */ in hpfb_init_one()
233 out_be16(fb_regs+0x4206, 0x90); /* RUG Command/Status */ in hpfb_init_one()
234 out_be16(fb_regs+0x60a2, 0); /* Overlay Mask */ in hpfb_init_one()
235 out_be16(fb_regs+0x60bc, 0); /* Ram Select */ in hpfb_init_one()
241 fb_width = (in_8(fb_regs + HPFB_FBWMSB) << 8) | in_8(fb_regs + HPFB_FBWLSB); in hpfb_init_one()
243 fb_height = (in_8(fb_regs + HPFB_FBHMSB) << 8) | in_8(fb_regs + HPFB_FBHLSB); in hpfb_init_one()
247 hpfb_defined.xres = (in_8(fb_regs + HPFB_DWMSB) << 8) | in_8(fb_regs + HPFB_DWLSB); in hpfb_init_one()
248 hpfb_defined.yres = (in_8(fb_regs + HPFB_DHMSB) << 8) | in_8(fb_regs + HPFB_DHLSB); in hpfb_init_one()
251 hpfb_defined.bits_per_pixel = in_8(fb_regs + HPFB_NUMPLANES); in hpfb_init_one()
262 out_8(fb_regs + TC_WEN, 0xff); in hpfb_init_one()
263 out_8(fb_regs + TC_PRR, RR_COPY); in hpfb_init_one()
264 out_8(fb_regs + TC_FBEN, 0xff); in hpfb_init_one()
272 out_8(fb_regs + TC_WEN, fb_bitmask); in hpfb_init_one()
273 out_8(fb_regs + TC_PRR, RR_COPY); in hpfb_init_one()
274 out_8(fb_regs + TC_REN, fb_bitmask); in hpfb_init_one()
275 out_8(fb_regs + TC_FBEN, fb_bitmask); in hpfb_init_one()
285 if (DIO_SECID(fb_regs) == DIO_ID2_TOPCAT) in hpfb_init_one()
356 iounmap((void *)fb_regs); in hpfb_remove_one()