drm/tegra: Fix possible CRTC mask for RGB outputs
authorThierry Reding <treding@nvidia.com>
Fri, 10 Jan 2014 15:56:06 +0000 (16:56 +0100)
committerThierry Reding <treding@nvidia.com>
Tue, 14 Jan 2014 13:35:56 +0000 (14:35 +0100)
The mask of possible CRTCs that an output (DRM encoder) can be attached
to is relative to the position within the DRM device's list of CRTCs.
Deferred probing can cause this to not match the pipe number associated
with a CRTC. Use the newly introduced drm_crtc_mask() to compute the
mask by looking up the proper index of the given CRTC in the list.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/rgb.c

index 03885bb8dcc049bed4f25c16fceef22968a72d51..338f7f6561d701d601a92b2f6362782536d03e2e 100644 (file)
@@ -258,7 +258,7 @@ int tegra_dc_rgb_init(struct drm_device *drm, struct tegra_dc *dc)
         * RGB outputs are an exception, so we make sure they can be attached
         * to only their parent display controller.
         */
-       rgb->output.encoder.possible_crtcs = 1 << dc->pipe;
+       rgb->output.encoder.possible_crtcs = drm_crtc_mask(&dc->base);
 
        return 0;
 }