aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@virtuousgeek.org>2012-03-28 16:39:23 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-03-28 17:52:07 -0400
commit25eb05fc5ac7a432e1a3a723f9af206142cd07fa (patch)
treed902834f329fdf2039a247aa5e803be1d187b72b
parentceb042468763db2d88c0c3f329204a3a71fd0479 (diff)
drm/i915: PLL defines for VLV
Add register definitions for the new VLV PLL bits. v2: remove unused bits & regs (Ben) Acked-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/i915_reg.h4
-rw-r--r--drivers/gpu/drm/i915/intel_display.c10
2 files changed, 13 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 7ce595fdbd8a..7abdc15b1ad7 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -796,7 +796,9 @@
796#define DPLL(pipe) _PIPE(pipe, _DPLL_A, _DPLL_B) 796#define DPLL(pipe) _PIPE(pipe, _DPLL_A, _DPLL_B)
797#define DPLL_VCO_ENABLE (1 << 31) 797#define DPLL_VCO_ENABLE (1 << 31)
798#define DPLL_DVO_HIGH_SPEED (1 << 30) 798#define DPLL_DVO_HIGH_SPEED (1 << 30)
799#define DPLL_EXT_BUFFER_ENABLE_VLV (1 << 30)
799#define DPLL_SYNCLOCK_ENABLE (1 << 29) 800#define DPLL_SYNCLOCK_ENABLE (1 << 29)
801#define DPLL_REFA_CLK_ENABLE_VLV (1 << 29)
800#define DPLL_VGA_MODE_DIS (1 << 28) 802#define DPLL_VGA_MODE_DIS (1 << 28)
801#define DPLLB_MODE_DAC_SERIAL (1 << 26) /* i915 */ 803#define DPLLB_MODE_DAC_SERIAL (1 << 26) /* i915 */
802#define DPLLB_MODE_LVDS (2 << 26) /* i915 */ 804#define DPLLB_MODE_LVDS (2 << 26) /* i915 */
@@ -808,6 +810,7 @@
808#define DPLL_P2_CLOCK_DIV_MASK 0x03000000 /* i915 */ 810#define DPLL_P2_CLOCK_DIV_MASK 0x03000000 /* i915 */
809#define DPLL_FPA01_P1_POST_DIV_MASK 0x00ff0000 /* i915 */ 811#define DPLL_FPA01_P1_POST_DIV_MASK 0x00ff0000 /* i915 */
810#define DPLL_FPA01_P1_POST_DIV_MASK_PINEVIEW 0x00ff8000 /* Pineview */ 812#define DPLL_FPA01_P1_POST_DIV_MASK_PINEVIEW 0x00ff8000 /* Pineview */
813#define DPLL_INTEGRATED_CLOCK_VLV (1<<13)
811 814
812#define SRX_INDEX 0x3c4 815#define SRX_INDEX 0x3c4
813#define SRX_DATA 0x3c5 816#define SRX_DATA 0x3c5
@@ -903,6 +906,7 @@
903#define DPLL_MD_VGA_UDI_MULTIPLIER_SHIFT 0 906#define DPLL_MD_VGA_UDI_MULTIPLIER_SHIFT 0
904#define _DPLL_B_MD 0x06020 /* 965+ only */ 907#define _DPLL_B_MD 0x06020 /* 965+ only */
905#define DPLL_MD(pipe) _PIPE(pipe, _DPLL_A_MD, _DPLL_B_MD) 908#define DPLL_MD(pipe) _PIPE(pipe, _DPLL_A_MD, _DPLL_B_MD)
909
906#define _FPA0 0x06040 910#define _FPA0 0x06040
907#define _FPA1 0x06044 911#define _FPA1 0x06044
908#define _FPB0 0x06048 912#define _FPB0 0x06048
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 453d444fdfbd..04e1e9ab203c 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -3487,6 +3487,11 @@ static bool intel_crtc_mode_fixup(struct drm_crtc *crtc,
3487 return true; 3487 return true;
3488} 3488}
3489 3489
3490static int valleyview_get_display_clock_speed(struct drm_device *dev)
3491{
3492 return 400000; /* FIXME */
3493}
3494
3490static int i945_get_display_clock_speed(struct drm_device *dev) 3495static int i945_get_display_clock_speed(struct drm_device *dev)
3491{ 3496{
3492 return 400000; 3497 return 400000;
@@ -8987,7 +8992,10 @@ static void intel_init_display(struct drm_device *dev)
8987 } 8992 }
8988 8993
8989 /* Returns the core display clock speed */ 8994 /* Returns the core display clock speed */
8990 if (IS_I945G(dev) || (IS_G33(dev) && !IS_PINEVIEW_M(dev))) 8995 if (IS_VALLEYVIEW(dev))
8996 dev_priv->display.get_display_clock_speed =
8997 valleyview_get_display_clock_speed;
8998 else if (IS_I945G(dev) || (IS_G33(dev) && !IS_PINEVIEW_M(dev)))
8991 dev_priv->display.get_display_clock_speed = 8999 dev_priv->display.get_display_clock_speed =
8992 i945_get_display_clock_speed; 9000 i945_get_display_clock_speed;
8993 else if (IS_I915G(dev)) 9001 else if (IS_I915G(dev))