Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / drivers / video / aty / atyfb.h
index 30e225f..e9b7a64 100644 (file)
@@ -50,6 +50,7 @@ struct pll_info {
        int sclk, mclk, mclk_pm, xclk;
        int ref_div;
        int ref_clk;
+       int ecp_max;
 };
 
 typedef struct {
@@ -83,13 +84,13 @@ struct pll_ct {
        u8 pll_gen_cntl;
        u8 mclk_fb_div;
        u8 mclk_fb_mult; /* 2 ro 4 */
-/*     u8 sclk_fb_div;*/
+       u8 sclk_fb_div;
        u8 pll_vclk_cntl;
        u8 vclk_post_div;
        u8 vclk_fb_div;
        u8 pll_ext_cntl;
-/*     u8 ext_vpll_cntl;
-       u8 spll_cntl2;*/
+       u8 ext_vpll_cntl;
+       u8 spll_cntl2;
        u32 dsp_config; /* Mach64 GTB DSP */
        u32 dsp_on_off; /* Mach64 GTB DSP */
        u32 dsp_loop_latency;
@@ -215,7 +216,6 @@ struct atyfb_par {
 #define M64F_XL_DLL            0x00080000
 #define M64F_MFB_FORCE_4       0x00100000
 #define M64F_HW_TRIPLE         0x00200000
-
     /*
      *  Register access
      */
@@ -246,6 +246,19 @@ static inline void aty_st_le32(int regindex, u32 val, const struct atyfb_par *pa
 #endif
 }
 
+static inline void aty_st_le16(int regindex, u16 val,
+                              const struct atyfb_par *par)
+{
+       /* Hack for bloc 1, should be cleanly optimized by compiler */
+       if (regindex >= 0x400)
+               regindex -= 0x800;
+#ifdef CONFIG_ATARI
+       out_le16((volatile u16 *)(par->ati_regbase + regindex), val);
+#else
+       writel(val, par->ati_regbase + regindex);
+#endif
+}
+
 static inline u8 aty_ld_8(int regindex, const struct atyfb_par *par)
 {
        /* Hack for bloc 1, should be cleanly optimized by compiler */
@@ -322,7 +335,6 @@ extern u8 aty_ld_pll_ct(int offset, const struct atyfb_par *par);
      */
 
 extern int aty_init_cursor(struct fb_info *info);
-extern int atyfb_cursor(struct fb_info *info, struct fb_cursor *cursor);
 
     /*
      *  Hardware acceleration
@@ -343,4 +355,5 @@ static inline void wait_for_idle(struct atyfb_par *par)
 
 extern void aty_reset_engine(const struct atyfb_par *par);
 extern void aty_init_engine(struct atyfb_par *par, struct fb_info *info);
-
+extern void aty_st_pll_ct(int offset, u8 val, const struct atyfb_par *par);
+extern u8   aty_ld_pll_ct(int offset, const struct atyfb_par *par);