~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/drivers/video/p9100.h

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * Register information for the Weitek P9100 as found
  3  * on the Tadpole Sparcbook 3 laptops.
  4  * 
  5  * From the technical specification document provided by Tadpole.
  6  *
  7  * Derrick J Brashear (shadow@dementia.org)
  8  */
  9 
 10 #ifndef _P9100_H_
 11 #define _P9100_H_
 12 
 13 /* P9100 control registers */
 14 #define P9100_SYSCTL_OFF        0x0UL
 15 #define P9100_VIDEOCTL_OFF      0x100UL
 16 #define P9100_VRAMCTL_OFF       0x180UL
 17 #define P9100_RAMDAC_OFF        0x200UL
 18 #define P9100_VIDEOCOPROC_OFF   0x400UL
 19 
 20 /* P9100 command registers */
 21 #define P9100_CMD_OFF 0x0UL
 22 
 23 /* P9100 framebuffer memory */
 24 #define P9100_FB_OFF 0x0UL
 25 
 26 
 27 /* 3 bits: 2=8bpp 3=16bpp 5=32bpp 7=24bpp */
 28 #define SYS_CONFIG_PIXELSIZE_SHIFT 26 
 29 
 30 #define SCREENPAINT_TIMECTL1_ENABLE_VIDEO 0x20 /* 0 = off, 1 = on */
 31 
 32 struct p9100_ctrl {
 33   /* Registers for the system control */
 34   __volatile__ __u32 sys_base;
 35   __volatile__ __u32 sys_config;
 36   __volatile__ __u32 sys_intr;
 37   __volatile__ __u32 sys_int_ena;
 38   __volatile__ __u32 sys_alt_rd;
 39   __volatile__ __u32 sys_alt_wr;
 40   __volatile__ __u32 sys_xxx[58];
 41   /* Registers for the video control */
 42   __volatile__ __u32 vid_base;
 43   __volatile__ __u32 vid_hcnt;
 44   __volatile__ __u32 vid_htotal;
 45   __volatile__ __u32 vid_hsync_rise;
 46   __volatile__ __u32 vid_hblank_rise;
 47   __volatile__ __u32 vid_hblank_fall;
 48   __volatile__ __u32 vid_hcnt_preload;
 49   __volatile__ __u32 vid_vcnt;
 50   __volatile__ __u32 vid_vlen;
 51   __volatile__ __u32 vid_vsync_rise;
 52   __volatile__ __u32 vid_vblank_rise;
 53   __volatile__ __u32 vid_vblank_fall;
 54   __volatile__ __u32 vid_vcnt_preload;
 55   __volatile__ __u32 vid_screenpaint_addr;
 56   __volatile__ __u32 vid_screenpaint_timectl1;
 57   __volatile__ __u32 vid_screenpaint_qsfcnt;
 58   __volatile__ __u32 vid_screenpaint_timectl2;
 59   __volatile__ __u32 vid_xxx[15];
 60   /* Registers for the video control */
 61   __volatile__ __u32 vram_base;
 62   __volatile__ __u32 vram_memcfg;
 63   __volatile__ __u32 vram_refresh_pd;
 64   __volatile__ __u32 vram_refresh_cnt;
 65   __volatile__ __u32 vram_raslo_max;
 66   __volatile__ __u32 vram_raslo_cur;
 67   __volatile__ __u32 pwrup_cfg;
 68   __volatile__ __u32 vram_xxx[25];
 69   /* Registers for IBM RGB528 Palette */
 70   __volatile__ __u32 ramdac_cmap_wridx; 
 71   __volatile__ __u32 ramdac_palette_data;
 72   __volatile__ __u32 ramdac_pixel_mask;
 73   __volatile__ __u32 ramdac_palette_rdaddr;
 74   __volatile__ __u32 ramdac_idx_lo;
 75   __volatile__ __u32 ramdac_idx_hi;
 76   __volatile__ __u32 ramdac_idx_data;
 77   __volatile__ __u32 ramdac_idx_ctl;
 78   __volatile__ __u32 ramdac_xxx[1784];
 79 };
 80 
 81 struct p9100_cmd_parameng {
 82   __volatile__ __u32 parameng_status;
 83   __volatile__ __u32 parameng_bltcmd;
 84   __volatile__ __u32 parameng_quadcmd;
 85 };
 86 
 87 #endif /* _P9100_H_ */
 88 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.