History

Merge tag 'drm/tegra/for-3.18-rc5' of git://people.freedesktop.org/~tagr/linux into drm-fixes

drm/tegra: Fixes for v3.18-rc5 This is a single patch that fixes the VBLANK machinery after: 7ffd7a68511c drm: Always reject drm_vblank_get() after drm_vblank_off() * tag 'drm/tegra/for-3.18-rc5' of git://people.freedesktop.org/~tagr/linux: drm/tegra: dc: Add missing call to drm_vblank_on()

Dave Airlie committed 12 years ago

Commit bcfef972 parents 3d0f853 8ff64c11 file · +4 −5Browse files

Unified · Split

drivers/gpu/drm/tegra/dc.c+4−5
@@ -736,7 +736,6 @@ static const struct drm_crtc_funcs tegra_crtc_funcs = { · 735 unmodified lines
736 736
737static void tegra_crtc_disable(struct drm_crtc *crtc)737static void tegra_crtc_disable(struct drm_crtc *crtc)
738{738{
739 struct tegra_dc *dc = to_tegra_dc(crtc);
740 struct drm_device *drm = crtc->dev;739 struct drm_device *drm = crtc->dev;
741 struct drm_plane *plane;740 struct drm_plane *plane;
742 741
@@ -752,7 +751,7 @@ static void tegra_crtc_disable(struct drm_crtc *crtc) · 9 unmodified lines
752 }751 }
753 }752 }
754 753
755 drm_vblank_off(drm, dc->pipe);754 drm_crtc_vblank_off(crtc);
756}755}
757 756
758static bool tegra_crtc_mode_fixup(struct drm_crtc *crtc,757static bool tegra_crtc_mode_fixup(struct drm_crtc *crtc,
@@ -841,8 +840,6 @@ static int tegra_crtc_mode_set(struct drm_crtc *crtc, · 82 unmodified lines
841 u32 value;840 u32 value;
842 int err;841 int err;
843 842
844 drm_vblank_pre_modeset(crtc->dev, dc->pipe);
845
846 err = tegra_crtc_setup_clk(crtc, mode);843 err = tegra_crtc_setup_clk(crtc, mode);
847 if (err) {844 if (err) {
848 dev_err(dc->dev, "failed to setup clock for CRTC: %d\n", err);845 dev_err(dc->dev, "failed to setup clock for CRTC: %d\n", err);
@@ -896,6 +893,8 @@ static void tegra_crtc_prepare(struct drm_crtc *crtc) · 47 unmodified lines
896 unsigned int syncpt;893 unsigned int syncpt;
897 unsigned long value;894 unsigned long value;
898 895
896 drm_crtc_vblank_off(crtc);
897
899 /* hardware initialization */898 /* hardware initialization */
900 reset_control_deassert(dc->rst);899 reset_control_deassert(dc->rst);
901 usleep_range(10000, 20000);900 usleep_range(10000, 20000);
@@ -943,7 +942,7 @@ static void tegra_crtc_commit(struct drm_crtc *crtc) · 41 unmodified lines
943 value = GENERAL_ACT_REQ | WIN_A_ACT_REQ;942 value = GENERAL_ACT_REQ | WIN_A_ACT_REQ;
944 tegra_dc_writel(dc, value, DC_CMD_STATE_CONTROL);943 tegra_dc_writel(dc, value, DC_CMD_STATE_CONTROL);
945 944
946 drm_vblank_post_modeset(crtc->dev, dc->pipe);945 drm_crtc_vblank_on(crtc);
947}946}
948 947
949static void tegra_crtc_load_lut(struct drm_crtc *crtc)948static void tegra_crtc_load_lut(struct drm_crtc *crtc)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t