Lines Matching +full:0 +full:x03400000
55 #define DEBUG 0
64 #define print_dbg(f, arg...) do {} while (0)
68 #define AU1200_LCD_FB_IOCTL 0x46FF
96 #define WIN_POSITION (1<< 0)
186 static int nohwcursor = 0;
213 { /* Index 0 */
214 "0-FS gfx, 1-video, 2-ovly gfx, 3-ovly gfx",
215 /* mode_backcolor */ 0x006600ff,
216 /* mode_colorkey,msk*/ 0, 0,
219 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
232 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
235 /* mode_winenable*/ 0,
238 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
242 /* mode_winenable*/ 0,
248 "0-FS gfx, 1-video, 2-ovly gfx, 3-ovly gfx",
249 /* mode_backcolor */ 0x006600ff,
250 /* mode_colorkey,msk*/ 0, 0,
259 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
262 /* mode_winenable*/ 0,
265 /* xres, yres, xpos, ypos */ 100, 100, 0, 0,
269 /* mode_winenable*/ 0/*LCD_WINENABLE_WEN2*/,
272 /* xres, yres, xpos, ypos */ 200, 25, 0, 0,
276 /* mode_winenable*/ 0,
281 "0-FS gfx, 1-video, 2-ovly gfx, 3-ovly gfx",
282 /* mode_backcolor */ 0x006600ff,
283 /* mode_colorkey,msk*/ 0, 0,
286 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
292 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
295 /* mode_winenable*/ 0,
298 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
301 /* mode_winenable*/ 0/*LCD_WINENABLE_WEN2*/,
304 /* xres, yres, xpos, ypos */ 0, 0, 0, 0,
308 /* mode_winenable*/ 0,
362 [0] = { /* QVGA 320x240 H:33.3kHz V:110Hz */
366 .modedb_len = 0,
377 .mode_horztiming = 0x00c4623b,
378 .mode_verttiming = 0x00502814,
379 .mode_clkcontrol = 0x00020002, /* /4=24Mhz */
380 .mode_pwmdiv = 0x00000000,
381 .mode_pwmhi = 0x00000000,
382 .mode_outmask = 0x00FFFFFF,
383 .mode_fifoctrl = 0x2f2f2f2f,
384 .mode_backlight = 0x00000000,
394 .modedb_len = 0,
403 .mode_screen = 0x13f9df80,
404 .mode_horztiming = 0x003c5859,
405 .mode_verttiming = 0x00741201,
406 .mode_clkcontrol = 0x00020001, /* /4=24Mhz */
407 .mode_pwmdiv = 0x00000000,
408 .mode_pwmhi = 0x00000000,
409 .mode_outmask = 0x00FFFFFF,
410 .mode_fifoctrl = 0x2f2f2f2f,
411 .mode_backlight = 0x00000000,
421 .modedb_len = 0,
430 .mode_screen = 0x18fa5780,
431 .mode_horztiming = 0x00dc7e77,
432 .mode_verttiming = 0x00584805,
433 .mode_clkcontrol = 0x00020000, /* /2=48Mhz */
434 .mode_pwmdiv = 0x00000000,
435 .mode_pwmhi = 0x00000000,
436 .mode_outmask = 0x00FFFFFF,
437 .mode_fifoctrl = 0x2f2f2f2f,
438 .mode_backlight = 0x00000000,
448 .modedb_len = 0,
457 .mode_screen = 0x1ffaff80,
458 .mode_horztiming = 0x007d0e57,
459 .mode_verttiming = 0x00740a01,
460 .mode_clkcontrol = 0x000A0000, /* /1 */
461 .mode_pwmdiv = 0x00000000,
462 .mode_pwmhi = 0x00000000,
463 .mode_outmask = 0x00FFFFFF,
464 .mode_fifoctrl = 0x2f2f2f2f,
465 .mode_backlight = 0x00000000,
475 .modedb_len = 0,
484 .mode_screen = 0x27fbff80,
485 .mode_horztiming = 0x00cdb2c7,
486 .mode_verttiming = 0x00600002,
487 .mode_clkcontrol = 0x000A0000, /* /1 */
488 .mode_pwmdiv = 0x00000000,
489 .mode_pwmhi = 0x00000000,
490 .mode_outmask = 0x00FFFFFF,
491 .mode_fifoctrl = 0x2f2f2f2f,
492 .mode_backlight = 0x00000000,
502 .modedb_len = 0,
511 .mode_screen = 0x1ffaff80,
512 .mode_horztiming = 0x018cc677,
513 .mode_verttiming = 0x00241217,
514 .mode_clkcontrol = 0x00000000, /* SCB 0x1 /4=24Mhz */
515 .mode_pwmdiv = 0x8000063f, /* SCB 0x0 */
516 .mode_pwmhi = 0x03400000, /* SCB 0x0 */
517 .mode_outmask = 0x00FFFFFF,
518 .mode_fifoctrl = 0x2f2f2f2f,
519 .mode_backlight = 0x00000000,
529 .modedb_len = 0,
544 .mode_clkcontrol = 0x00000000, /* /4=24Mhz */
545 .mode_pwmdiv = 0x8000063f,
546 .mode_pwmhi = 0x03400000,
547 .mode_outmask = 0x00fcfcfc,
548 .mode_fifoctrl = 0x2f2f2f2f,
549 .mode_backlight = 0x00000000,
559 .modedb_len = 0,
575 .mode_pwmdiv = 0x8000063f,
576 .mode_pwmhi = 0x03400000,
577 .mode_outmask = 0x00fcfcfc,
578 .mode_fifoctrl = 0x2f2f2f2f,
579 .mode_backlight = 0x00000000,
589 .modedb_len = 0,
604 .mode_clkcontrol = 0x00020001, /* /4=24Mhz */
605 .mode_pwmdiv = 0x8000063f,
606 .mode_pwmhi = 0x03400000,
607 .mode_outmask = 0x00fcfcfc,
608 .mode_fifoctrl = 0x2f2f2f2f,
609 .mode_backlight = 0x00000000,
618 .modedb_len = 0,
638 .mode_pwmdiv = 0x00000000,
639 .mode_pwmhi = 0x00000000,
640 .mode_outmask = 0x00FFFFFF,
641 .mode_fifoctrl = 0x2f2f2f2f,
642 .mode_backlight = 0x00000000,
655 int bits = 0; in winbpp()
694 for (i = 0; i < device_count; ++i) { in fbinfo2index()
705 uint32 winctrl0, winctrl1, winenable, fb_offset = 0; in au1200_setlocation()
730 if (xpos < 0) { in au1200_setlocation()
733 fb_offset += (((0 - xpos) * winbpp(lcd->window[plane].winctrl1))/8); in au1200_setlocation()
734 xpos = 0; in au1200_setlocation()
738 if (ypos < 0) { in au1200_setlocation()
741 /* fixme: fb_offset += ((0-ypos)*fb_pars[plane].line_length); */ in au1200_setlocation()
742 ypos = 0; in au1200_setlocation()
755 winctrl1 |= (ysz << 0); in au1200_setlocation()
765 lcd->window[plane].winbufctrl = 0; /* select winbuf0 */ in au1200_setlocation()
769 return 0; in au1200_setlocation()
782 lcd->winenable = 0; in au1200_setpanel()
790 while ((lcd->intstatus & LCD_INT_SS) == 0) in au1200_setpanel()
799 } while ((lcd->intstatus & LCD_INT_SD) == 0); in au1200_setpanel()
851 #if 0 in au1200_setpanel()
852 au1200_setlocation(fbdev, 0, win->w[0].xpos, win->w[0].ypos); in au1200_setpanel()
870 lcd->intenable = 0; in au1200_setpanel()
871 lcd->intstatus = ~0; in au1200_setpanel()
879 lcd->hwc.cursorctrl = 0; in au1200_setpanel()
880 lcd->hwc.cursorpos = 0; in au1200_setpanel()
881 lcd->hwc.cursorcolor0 = 0; in au1200_setpanel()
882 lcd->hwc.cursorcolor1 = 0; in au1200_setpanel()
883 lcd->hwc.cursorcolor2 = 0; in au1200_setpanel()
884 lcd->hwc.cursorcolor3 = 0; in au1200_setpanel()
887 #if 0 in au1200_setpanel()
897 D(lcd->window[0].winctrl0); in au1200_setpanel()
898 D(lcd->window[0].winctrl1); in au1200_setpanel()
899 D(lcd->window[0].winctrl2); in au1200_setpanel()
900 D(lcd->window[0].winbuf0); in au1200_setpanel()
901 D(lcd->window[0].winbuf1); in au1200_setpanel()
902 D(lcd->window[0].winbufctrl); in au1200_setpanel()
941 lcd->window[plane].winctrl1 = ( 0 in au1200_setmode()
948 lcd->window[plane].winctrl2 = ( 0 in au1200_setmode()
971 { { 10, 6, 0 }, { 5, 5, 0 }, { 0, 5, 0 }, { 0, 0, 0 } },
974 { { 11, 5, 0 }, { 5, 6, 0 }, { 0, 5, 0 }, { 0, 0, 0 } },
977 { { 11, 5, 0 }, { 6, 5, 0 }, { 0, 6, 0 }, { 0, 0, 0 } },
980 { { 10, 5, 0 }, { 5, 5, 0 }, { 0, 5, 0 }, { 0, 0, 0 } },
983 { { 11, 5, 0 }, { 6, 5, 0 }, { 1, 5, 0 }, { 0, 0, 0 } },
986 { { 10, 5, 0 }, { 5, 5, 0 }, { 0, 5, 0 }, { 15, 1, 0 } },
989 { { 11, 5, 0 }, { 6, 5, 0 }, { 1, 5, 0 }, { 0, 1, 0 } },
992 { { 16, 8, 0 }, { 8, 8, 0 }, { 0, 8, 0 }, { 0, 0, 0 } },
995 { { 16, 8, 0 }, { 8, 8, 0 }, { 0, 8, 0 }, { 24, 0, 0 } },
1079 #if 0 in au1200fb_fb_check_var()
1100 idx = (win->w[0].mode_winctrl1 & LCD_WINCTRL1_FRM) >> 25; in au1200fb_fb_check_var()
1101 var->red = rgb_bitfields[idx][0]; in au1200fb_fb_check_var()
1113 idx = (win->w[0].mode_winctrl1 & LCD_WINCTRL1_FRM) >> 25; in au1200fb_fb_check_var()
1114 var->red = rgb_bitfields[idx][0]; in au1200fb_fb_check_var()
1125 return 0; in au1200fb_fb_check_var()
1139 return 0; in au1200fb_fb_set_par()
1174 value &= 0xFFFF; in au1200fb_fb_setcolreg()
1178 value = (red & 0xF800)|((green >> 5) & in au1200fb_fb_setcolreg()
1179 0x07E0)|((blue >> 11) & 0x001F); in au1200fb_fb_setcolreg()
1180 value &= 0xFFFF; in au1200fb_fb_setcolreg()
1182 } else if (0 /*panel_is_color(fbdev->panel)*/) { in au1200fb_fb_setcolreg()
1184 value = 0x1234; in au1200fb_fb_setcolreg()
1185 value &= 0xFFF; in au1200fb_fb_setcolreg()
1188 value = (green >> 12) & 0x000F; in au1200fb_fb_setcolreg()
1189 value &= 0xF; in au1200fb_fb_setcolreg()
1194 return 0; in au1200fb_fb_setcolreg()
1207 return 0; in au1200fb_fb_blank()
1228 return (blank_mode == FB_BLANK_NORMAL) ? -EINVAL : 0; in au1200fb_fb_blank()
1261 divider = (lcd->pwmdiv & 0x3FFFF) + 1; in set_global()
1262 hi1 = (((pdata->brightness & 0xFF)+1) * divider >> 8); in set_global()
1263 lcd->pwmhi &= 0xFFFF; in set_global()
1288 divider = (lcd->pwmdiv & 0x3FFFF) + 1; in get_global()
1298 /* Window control register 0 */ in set_window()
1395 /* Window control register 0 */ in get_window()
1460 if ((iodata.global.panel_choice >= 0) && in au1200fb_ioctl()
1487 return 0; in au1200fb_ioctl()
1553 ret = fb_alloc_cmap(&fbi->cmap, AU1200_LCD_NBR_PALETTE_ENTRIES, 0); in au1200fb_init_fbinfo()
1554 if (ret < 0) { in au1200fb_init_fbinfo()
1564 fbi->fix.xpanstep = 0; in au1200fb_init_fbinfo()
1565 fbi->fix.ypanstep = 0; in au1200fb_init_fbinfo()
1566 fbi->fix.mmio_start = 0; in au1200fb_init_fbinfo()
1567 fbi->fix.mmio_len = 0; in au1200fb_init_fbinfo()
1576 return 0; in au1200fb_init_fbinfo()
1604 li = simple_strtol(this_opt, &endptr, 0); in au1200fb_setup()
1605 if (*endptr == '\0') in au1200fb_setup()
1607 else if (strcmp(this_opt, "bs") == 0) in au1200fb_setup()
1610 for (i = 0; i < num_panels; i++) { in au1200fb_setup()
1618 if ((panel_idx < 0) || (panel_idx >= num_panels)) in au1200fb_setup()
1623 } else if (strncmp(this_opt, "nohwcursor", 10) == 0) in au1200fb_setup()
1625 else if (strncmp(this_opt, "devices:", 8) == 0) { in au1200fb_setup()
1627 device_count = simple_strtol(this_opt, &endptr, 0); in au1200fb_setup()
1628 if ((device_count < 0) || in au1200fb_setup()
1631 } else if (strncmp(this_opt, "wincfg:", 7) == 0) { in au1200fb_setup()
1633 window_index = simple_strtol(this_opt, &endptr, 0); in au1200fb_setup()
1634 if ((window_index < 0) || in au1200fb_setup()
1637 } else if (strncmp(this_opt, "off", 3) == 0) in au1200fb_setup()
1644 return 0; in au1200fb_setup()
1672 for (plane = 0; plane < device_count; ++plane) { in au1200fb_drv_probe()
1674 if (win->w[plane].xres == 0) in au1200fb_drv_probe()
1676 if (win->w[plane].yres == 0) in au1200fb_drv_probe()
1699 &fbdev->fb_phys, GFP_KERNEL, 0); in au1200fb_drv_probe()
1708 print_dbg("phys=0x%08x, size=%dK", fbdev->fb_phys, fbdev->fb_len / 1024); in au1200fb_drv_probe()
1712 if (ret < 0) in au1200fb_drv_probe()
1717 if (ret < 0) { in au1200fb_drv_probe()
1726 irq = platform_get_irq(dev, 0); in au1200fb_drv_probe()
1727 if (irq < 0) in au1200fb_drv_probe()
1743 return 0; in au1200fb_drv_probe()
1746 for (plane = 0; plane < device_count; ++plane) { in au1200fb_drv_probe()
1753 if (fbi->cmap.len != 0) in au1200fb_drv_probe()
1772 for (plane = 0; plane < device_count; ++plane) { in au1200fb_drv_remove()
1777 if (fbi->cmap.len != 0) in au1200fb_drv_remove()
1785 free_irq(platform_get_irq(dev, 0), (void *)dev); in au1200fb_drv_remove()
1794 lcd->outmask = 0; in au1200fb_drv_suspend()
1797 return 0; in au1200fb_drv_suspend()
1809 for (i = 0; i < device_count; i++) { in au1200fb_drv_resume()
1814 return 0; in au1200fb_drv_resume()