]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-clps7500/include/mach/acornfb.h
[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
[linux-2.6-omap-h63xx.git] / arch / arm / mach-clps7500 / include / mach / acornfb.h
diff --git a/arch/arm/mach-clps7500/include/mach/acornfb.h b/arch/arm/mach-clps7500/include/mach/acornfb.h
new file mode 100644 (file)
index 0000000..aea6330
--- /dev/null
@@ -0,0 +1,33 @@
+#define acornfb_valid_pixrate(var) (var->pixclock >= 39325 && var->pixclock <= 40119)
+
+static inline void
+acornfb_vidc20_find_rates(struct vidc_timing *vidc,
+                         struct fb_var_screeninfo *var)
+{
+       u_int bandwidth;
+  
+       vidc->control |= VIDC20_CTRL_PIX_CK;
+
+       /* Calculate bandwidth */
+       bandwidth = var->pixclock * 8 / var->bits_per_pixel;
+
+       /* Encode bandwidth as VIDC20 setting */
+       if (bandwidth > 16667*2)
+               vidc->control |= VIDC20_CTRL_FIFO_16;
+       else if (bandwidth > 13333*2)
+               vidc->control |= VIDC20_CTRL_FIFO_20;
+       else if (bandwidth > 11111*2)
+               vidc->control |= VIDC20_CTRL_FIFO_24;
+       else
+               vidc->control |= VIDC20_CTRL_FIFO_28;
+
+       vidc->pll_ctl  = 0x2020;
+}
+
+#ifdef CONFIG_CHRONTEL_7003
+#define acornfb_default_control()      VIDC20_CTRL_PIX_HCLK
+#else
+#define acornfb_default_control()      VIDC20_CTRL_PIX_VCLK
+#endif
+
+#define acornfb_default_econtrol()     VIDC20_ECTL_DAC | VIDC20_ECTL_REG(3) | VIDC20_ECTL_ECK