diff options
author | Alan Cox <alan@linux.intel.com> | 2011-07-15 17:34:41 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-07-15 19:05:08 +0200 |
commit | 1e585b52fd8ea59792634bc31d227eb3456af22e (patch) | |
tree | b291fd77abd0622ec9a671158b8ef979ca233f2d /drivers/staging/gma500/mrst.h | |
parent | 80e2f055e05b62d1132eadc934f83c6d81c7cfa4 (diff) | |
download | op-kernel-dev-1e585b52fd8ea59792634bc31d227eb3456af22e.zip op-kernel-dev-1e585b52fd8ea59792634bc31d227eb3456af22e.tar.gz |
gma500: Add the Oaktrail HDMI support
This differs enough from the Cedarview HDMI sufficiently to want to keep
them separated.
We need to sort out the power management for Oaktrail/Moorestown in order
to plumb this lot into the register handling logic.
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/gma500/mrst.h')
-rw-r--r-- | drivers/staging/gma500/mrst.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/drivers/staging/gma500/mrst.h b/drivers/staging/gma500/mrst.h index 7bacb9a..b563dbc 100644 --- a/drivers/staging/gma500/mrst.h +++ b/drivers/staging/gma500/mrst.h @@ -215,3 +215,38 @@ struct mrst_gct_data { #define GCT_R10_HEADER_SIZE 16 #define GCT_R10_DISPLAY_DESC_SIZE 28 + +/* + * Moorestown HDMI interfaces + */ + +struct mrst_hdmi_dev { + struct pci_dev *dev; + void __iomem *regs; + unsigned int mmio, mmio_len; + int dpms_mode; + struct hdmi_i2c_dev *i2c_dev; + + /* register state */ + u32 saveDPLL_CTRL; + u32 saveDPLL_DIV_CTRL; + u32 saveDPLL_ADJUST; + u32 saveDPLL_UPDATE; + u32 saveDPLL_CLK_ENABLE; + u32 savePCH_HTOTAL_B; + u32 savePCH_HBLANK_B; + u32 savePCH_HSYNC_B; + u32 savePCH_VTOTAL_B; + u32 savePCH_VBLANK_B; + u32 savePCH_VSYNC_B; + u32 savePCH_PIPEBCONF; + u32 savePCH_PIPEBSRC; +}; + +extern void mrst_hdmi_setup(struct drm_device *dev); +extern void mrst_hdmi_teardown(struct drm_device *dev); +extern int mrst_hdmi_i2c_init(struct pci_dev *dev); +extern void mrst_hdmi_i2c_exit(struct pci_dev *dev); +extern void mrst_hdmi_save(struct drm_device *dev); +extern void mrst_hdmi_restore(struct drm_device *dev); +extern void mrst_hdmi_init(struct drm_device *dev, struct psb_intel_mode_device *mode_dev); |