diff options
author | Keith Packard <keithp@dulcimer.keithp.com> | 2007-05-16 14:02:00 -0700 |
---|---|---|
committer | Keith Packard <keithp@dulcimer.keithp.com> | 2007-05-16 14:02:00 -0700 |
commit | c0daa0a982e7074af4b50653b4a45b0a6352b43d (patch) | |
tree | 784a6d552d5ff6e957d5a5fefac99f206f654c46 /src/ivch/ivch_reg.h | |
parent | b28817a87a1608e849e4a9a736dda43533a84b0c (diff) |
Change DVO module interface to pass more state across. Fix IVCH display.
The DVO module interface reflected most of the xf86Output API to the
underlying functions; finish that work given the changes that have since
occurred in the xf86Output API.
Move the LVDS-specific code into the IVCH module and make that work on the
Thinkpad X30 (an i830-based laptop). Panel scaling does not work yet.
Diffstat (limited to 'src/ivch/ivch_reg.h')
-rw-r--r-- | src/ivch/ivch_reg.h | 194 |
1 files changed, 189 insertions, 5 deletions
diff --git a/src/ivch/ivch_reg.h b/src/ivch/ivch_reg.h index 112c97d6..fe5507a8 100644 --- a/src/ivch/ivch_reg.h +++ b/src/ivch/ivch_reg.h @@ -35,14 +35,14 @@ #ifndef I82807AA_REG_H #define I82807AA_REG_H -/** @defgroup VR00 +/** @defgroup VR00 VCH Revision & GMBus Base Addr * @{ */ #define VR00 0x00 # define VR00_BASE_ADDRESS_MASK 0x007f /** @} */ -/** @defgroup VR01 +/** @defgroup VR01 VCH Functionality Enable * @{ */ #define VR01 0x01 @@ -59,7 +59,7 @@ # define VR01_DVO_ENABLE (1 << 0) /** @} */ -/** @defgroup VR10 +/** @defgroup VR10 LCD Interface Format * @{ */ #define VR10 0x10 @@ -75,7 +75,79 @@ # define VR10_INTERFACE_2X24 (3 << 2) /** @} */ -/** @defgroup VR30 +/** @defgroup VR11 CMOS Output Control + * @{ + */ +/** @} */ + +/** @defgroup VR12 LVDS Output Control + * @{ + */ +/** @} */ + +/** @defgroup VR18 PLL clock select + * @{ + */ +/** @} */ + +/** @defgroup VR19 PLL clock divisor M + * @{ + */ +/** @} */ + +/** @defgroup VR1A PLL clock divisor N + * @{ + */ +/** @} */ + +/** @defgroup VR1F FIFO Pre-load + * @{ + */ +/** @} */ + +/** @defgroup VR20 LCD Horizontal Display Size + * @{ + */ +#define VR20 0x20 +/** @} */ + +/** @defgroup VR21 LCD Vertical Display Size + * @{ + */ +#define VR21 0x20 +/** @} */ + +/** @defgroup VR22 Horizontal TRP to DE Start Delay + * @{ + */ +/** @} */ + +/** @defgroup VR23 Horizontal TRP to DE End Delay + * @{ + */ +/** @} */ + +/** @defgroup VR24 Horizontal TRP To LP Start Delay + * @{ + */ +/** @} */ + +/** @defgroup VR25 Horizontal TRP To LP End Delay + * @{ + */ +/** @} */ + +/** @defgroup VR26 Vertical TRP To FLM Start Delay + * @{ + */ +/** @} */ + +/** @defgroup VR27 Vertical TRP To FLM End Delay + * @{ + */ +/** @} */ + +/** @defgroup VR30 Panel power down status * @{ */ #define VR30 0x30 @@ -83,6 +155,31 @@ # define VR30_PANEL_ON (1 << 15) /** @} */ +/** @defgroup VR31 Tpon Panel power on sequencing delay + * @{ + */ +/** @} */ + +/** @defgroup VR32 Tpon Panel power off sequencing delay + * @{ + */ +/** @} */ + +/** @defgroup VR33 Tstay Panel power off stay down delay + * @{ + */ +/** @} */ + +/** @defgroup VR34 Maximal FLM Pulse Interval + * @{ + */ +/** @} */ + +/** @defgroup VR35 Maximal LP Pulse Interval + * @{ + */ +/** @} */ + /** @defgroup VR40 * @{ */ @@ -90,8 +187,95 @@ # define VR40_STALL_ENABLE (1 << 13) # define VR40_VERTICAL_INTERP_ENABLE (1 << 11) # define VR40_HORIZONTAL_INTERP_ENABLE (1 << 10) -# define VR40_RATIO_ENABLE (1 << 9) +# define VR40_AUTO_RATIO_ENABLE (1 << 9) # define VR40_PANEL_FIT_ENABLE (1 << 8) /** @} */ +/** @defgroup VR41 Panel Fitting Vertical Ratio + * @{ + */ +/** @} */ + +/** @defgroup VR42 Panel Fitting Horizontal Ratio + * @{ + */ +/** @} */ + +/** @defgroup VR43 Horizontal Image Size + * @{ + */ +/** @} */ + +/** @defgroup VR44 Panel Fitting Coefficient 0 + * @{ + */ +/** @} */ + +/** @defgroup VR45 Panel Fitting Coefficient 1 + * @{ + */ +/** @} */ + +/** @defgroup VR46 Panel Fitting Coefficient 2 + * @{ + */ +/** @} */ + +/** @defgroup VR47 Panel Fitting Coefficient 3 + * @{ + */ +/** @} */ + +/** @defgroup VR48 Panel Fitting Coefficient 4 + * @{ + */ +/** @} */ + +/** @defgroup VR49 Panel Fitting Coefficient 5 + * @{ + */ +/** @} */ + +/** @defgroup VR80 GPIO 0 + * @{ + */ +/** @} */ + +#define VR80 0x80 +#define VR81 0x81 +#define VR82 0x82 +#define VR83 0x83 +#define VR84 0x84 +#define VR85 0x85 +#define VR86 0x86 +#define VR87 0x87 + +/** @defgroup VR88 GPIO 8 + * @{ + */ +/** @} */ + +#define VR88 0x88 + +/** @defgroup VR8E Graphics BIOS scratch 0 + * @{ + */ +#define VR8E 0x8E +# define VR8E_PANEL_TYPE_MASK (0xf << 0) +# define VR8E_PANEL_INTERFACE_CMOS (0 << 4) +# define VR8E_PANEL_INTERFACE_LVDS (1 << 4) +# define VR8E_FORCE_DEFAULT_PANEL (1 << 5) +/** @} */ + +/** @defgroup VR8F Graphics BIOS scratch 1 + * @{ + */ +#define VR8F 0x8F +# define VR8F_VCH_PRESENT (1 << 0) +# define VR8F_DISPLAY_CONN (1 << 1) +# define VR8F_POWER_MASK (0x3c) +# define VR8F_POWER_POS (2) +/** @} */ + + #endif /* I82807AA_REG_H */ |