#ifndef _GXFB_H_
#define _GXFB_H_
#include <linux/io.h>
#define GP_REG_COUNT …
#define DC_REG_COUNT …
#define VP_REG_COUNT …
#define FP_REG_COUNT …
#define DC_PAL_COUNT …
struct gxfb_par { … };
unsigned int gx_frame_buffer_size(void);
int gx_line_delta(int xres, int bpp);
void gx_set_mode(struct fb_info *info);
void gx_set_hw_palette_reg(struct fb_info *info, unsigned regno,
unsigned red, unsigned green, unsigned blue);
void gx_set_dclk_frequency(struct fb_info *info);
void gx_configure_display(struct fb_info *info);
int gx_blank_display(struct fb_info *info, int blank_mode);
int gx_powerdown(struct fb_info *info);
int gx_powerup(struct fb_info *info);
enum gp_registers { … };
#define GP_BLT_STATUS_BLT_PENDING …
#define GP_BLT_STATUS_BLT_BUSY …
enum dc_registers { … };
#define DC_UNLOCK_LOCK …
#define DC_UNLOCK_UNLOCK …
#define DC_GENERAL_CFG_YUVM …
#define DC_GENERAL_CFG_VDSE …
#define DC_GENERAL_CFG_DFHPEL_SHIFT …
#define DC_GENERAL_CFG_DFHPSL_SHIFT …
#define DC_GENERAL_CFG_DECE …
#define DC_GENERAL_CFG_CMPE …
#define DC_GENERAL_CFG_VIDE …
#define DC_GENERAL_CFG_ICNE …
#define DC_GENERAL_CFG_CURE …
#define DC_GENERAL_CFG_DFLE …
#define DC_DISPLAY_CFG_A20M …
#define DC_DISPLAY_CFG_A18M …
#define DC_DISPLAY_CFG_PALB …
#define DC_DISPLAY_CFG_DISP_MODE_24BPP …
#define DC_DISPLAY_CFG_DISP_MODE_16BPP …
#define DC_DISPLAY_CFG_DISP_MODE_8BPP …
#define DC_DISPLAY_CFG_VDEN …
#define DC_DISPLAY_CFG_GDEN …
#define DC_DISPLAY_CFG_TGEN …
enum vp_registers { … };
#define VP_VCFG_VID_EN …
#define VP_DCFG_DAC_VREF …
#define VP_DCFG_GV_GAM …
#define VP_DCFG_VG_CK …
#define VP_DCFG_CRT_SYNC_SKW_DEFAULT …
#define VP_DCFG_CRT_SYNC_SKW …
#define VP_DCFG_CRT_VSYNC_POL …
#define VP_DCFG_CRT_HSYNC_POL …
#define VP_DCFG_FP_DATA_EN …
#define VP_DCFG_FP_PWR_EN …
#define VP_DCFG_DAC_BL_EN …
#define VP_DCFG_VSYNC_EN …
#define VP_DCFG_HSYNC_EN …
#define VP_DCFG_CRT_EN …
#define VP_MISC_GAM_EN …
#define VP_MISC_DACPWRDN …
#define VP_MISC_APWRDN …
#define VP_FP_START …
enum fp_registers { … };
#define FP_PT1_VSIZE_SHIFT …
#define FP_PT1_VSIZE_MASK …
#define FP_PT2_HSP …
#define FP_PT2_VSP …
#define FP_PM_P …
#define FP_PM_PANEL_PWR_UP …
#define FP_PM_PANEL_PWR_DOWN …
#define FP_PM_PANEL_OFF …
#define FP_PM_PANEL_ON …
#define FP_DFC_NFI …
static inline uint32_t read_gp(struct gxfb_par *par, int reg)
{ … }
static inline void write_gp(struct gxfb_par *par, int reg, uint32_t val)
{ … }
static inline uint32_t read_dc(struct gxfb_par *par, int reg)
{ … }
static inline void write_dc(struct gxfb_par *par, int reg, uint32_t val)
{ … }
static inline uint32_t read_vp(struct gxfb_par *par, int reg)
{ … }
static inline void write_vp(struct gxfb_par *par, int reg, uint32_t val)
{ … }
static inline uint32_t read_fp(struct gxfb_par *par, int reg)
{ … }
static inline void write_fp(struct gxfb_par *par, int reg, uint32_t val)
{ … }
#define MSR_GLCP_SYS_RSTPLL_DOTPOSTDIV3 …
#define MSR_GLCP_SYS_RSTPLL_DOTPREMULT2 …
#define MSR_GLCP_SYS_RSTPLL_DOTPREDIV2 …
#define MSR_GLCP_DOTPLL_LOCK …
#define MSR_GLCP_DOTPLL_BYPASS …
#define MSR_GLCP_DOTPLL_DOTRESET …
#define MSR_GX_MSR_PADSEL_MASK …
#define MSR_GX_MSR_PADSEL_TFT …
#define MSR_GX_GLD_MSR_CONFIG_FP …
#endif