diff options
author | Paul Mundt <lethal@linux-sh.org> | 2011-01-12 00:37:42 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-01-12 00:37:42 -0500 |
commit | 83eb95b852902f952ba594447a796ad8146b9462 (patch) | |
tree | 33c199aeeae58b69ad8d6d2a33c2d96ba2b98ddf /drivers/gpu/drm/nouveau/nv04_crtc.c | |
parent | efb3e34b6176d30c4fe8635fa8e1beb6280cc2cd (diff) | |
parent | 9bbe7b984096ac45586da2adf26c14069ecb79b2 (diff) |
Merge branch 'sh/sdio' into sh-latest
Diffstat (limited to 'drivers/gpu/drm/nouveau/nv04_crtc.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nv04_crtc.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nv04_crtc.c b/drivers/gpu/drm/nouveau/nv04_crtc.c index 40e180741629..297505eb98d5 100644 --- a/drivers/gpu/drm/nouveau/nv04_crtc.c +++ b/drivers/gpu/drm/nouveau/nv04_crtc.c | |||
@@ -551,7 +551,10 @@ nv_crtc_mode_set_regs(struct drm_crtc *crtc, struct drm_display_mode * mode) | |||
551 | if (dev_priv->card_type >= NV_30) | 551 | if (dev_priv->card_type >= NV_30) |
552 | regp->gpio_ext = NVReadCRTC(dev, 0, NV_PCRTC_GPIO_EXT); | 552 | regp->gpio_ext = NVReadCRTC(dev, 0, NV_PCRTC_GPIO_EXT); |
553 | 553 | ||
554 | regp->crtc_cfg = NV_PCRTC_CONFIG_START_ADDRESS_HSYNC; | 554 | if (dev_priv->card_type >= NV_10) |
555 | regp->crtc_cfg = NV10_PCRTC_CONFIG_START_ADDRESS_HSYNC; | ||
556 | else | ||
557 | regp->crtc_cfg = NV04_PCRTC_CONFIG_START_ADDRESS_HSYNC; | ||
555 | 558 | ||
556 | /* Some misc regs */ | 559 | /* Some misc regs */ |
557 | if (dev_priv->card_type == NV_40) { | 560 | if (dev_priv->card_type == NV_40) { |
@@ -669,6 +672,7 @@ static void nv_crtc_prepare(struct drm_crtc *crtc) | |||
669 | if (nv_two_heads(dev)) | 672 | if (nv_two_heads(dev)) |
670 | NVSetOwner(dev, nv_crtc->index); | 673 | NVSetOwner(dev, nv_crtc->index); |
671 | 674 | ||
675 | drm_vblank_pre_modeset(dev, nv_crtc->index); | ||
672 | funcs->dpms(crtc, DRM_MODE_DPMS_OFF); | 676 | funcs->dpms(crtc, DRM_MODE_DPMS_OFF); |
673 | 677 | ||
674 | NVBlankScreen(dev, nv_crtc->index, true); | 678 | NVBlankScreen(dev, nv_crtc->index, true); |
@@ -701,6 +705,7 @@ static void nv_crtc_commit(struct drm_crtc *crtc) | |||
701 | #endif | 705 | #endif |
702 | 706 | ||
703 | funcs->dpms(crtc, DRM_MODE_DPMS_ON); | 707 | funcs->dpms(crtc, DRM_MODE_DPMS_ON); |
708 | drm_vblank_post_modeset(dev, nv_crtc->index); | ||
704 | } | 709 | } |
705 | 710 | ||
706 | static void nv_crtc_destroy(struct drm_crtc *crtc) | 711 | static void nv_crtc_destroy(struct drm_crtc *crtc) |
@@ -986,6 +991,7 @@ static const struct drm_crtc_funcs nv04_crtc_funcs = { | |||
986 | .cursor_move = nv04_crtc_cursor_move, | 991 | .cursor_move = nv04_crtc_cursor_move, |
987 | .gamma_set = nv_crtc_gamma_set, | 992 | .gamma_set = nv_crtc_gamma_set, |
988 | .set_config = drm_crtc_helper_set_config, | 993 | .set_config = drm_crtc_helper_set_config, |
994 | .page_flip = nouveau_crtc_page_flip, | ||
989 | .destroy = nv_crtc_destroy, | 995 | .destroy = nv_crtc_destroy, |
990 | }; | 996 | }; |
991 | 997 | ||