drm/gma500: Add chip specific sdvo masks
authorPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
Mon, 16 Sep 2013 15:54:54 +0000 (17:54 +0200)
committerPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
Fri, 8 Nov 2013 15:22:06 +0000 (16:22 +0100)
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
drivers/gpu/drm/gma500/cdv_device.c
drivers/gpu/drm/gma500/framebuffer.c
drivers/gpu/drm/gma500/oaktrail_device.c
drivers/gpu/drm/gma500/psb_device.c
drivers/gpu/drm/gma500/psb_drv.h

index 162f686c532db9cfc8dd565b24b6af1d59fa33b6..5a9a6a3063a8a603a73422f8f08b5ceaf30d8e82 100644 (file)
@@ -634,6 +634,7 @@ const struct psb_ops cdv_chip_ops = {
        .crtcs = 2,
        .hdmi_mask = (1 << 0) | (1 << 1),
        .lvds_mask = (1 << 1),
+       .sdvo_mask = (1 << 0),
        .cursor_needs_phys = 0,
        .sgx_offset = MRST_SGX_OFFSET,
        .chip_setup = cdv_chip_setup,
index 01dd7d225762d2b4bea5be61a46a8359f48e7081..94b3fec22c280475dfe1f08d43cf00ed1ca571d2 100644 (file)
@@ -714,7 +714,7 @@ static void psb_setup_outputs(struct drm_device *dev)
                        clone_mask = (1 << INTEL_OUTPUT_ANALOG);
                        break;
                case INTEL_OUTPUT_SDVO:
-                       crtc_mask = ((1 << 0) | (1 << 1));
+                       crtc_mask = dev_priv->ops->sdvo_mask;
                        clone_mask = (1 << INTEL_OUTPUT_SDVO);
                        break;
                case INTEL_OUTPUT_LVDS:
index 08747fd7105cdba2c489709afd097e4ce29f95c4..80798517d93ecf2e2cc5f8f9bfa14c74ec2a9c4e 100644 (file)
@@ -546,6 +546,7 @@ const struct psb_ops oaktrail_chip_ops = {
        .crtcs = 2,
        .hdmi_mask = (1 << 1),
        .lvds_mask = (1 << 0),
+       .sdvo_mask = (1 << 1),
        .cursor_needs_phys = 0,
        .sgx_offset = MRST_SGX_OFFSET,
 
index 697678619bd127f1acde5d62eff3ade1bd970491..23fb33f1471baf0a77f8de33f4200d7961546e8f 100644 (file)
@@ -373,6 +373,7 @@ const struct psb_ops psb_chip_ops = {
        .crtcs = 2,
        .hdmi_mask = (1 << 0),
        .lvds_mask = (1 << 1),
+       .sdvo_mask = (1 << 0),
        .cursor_needs_phys = 1,
        .sgx_offset = PSB_SGX_OFFSET,
        .chip_setup = psb_chip_setup,
index b26d029a2e814d2277253b18bd119e0f9f3d9cdd..fd93756f41d1ab8243db1b768780da819c0ebe89 100644 (file)
@@ -672,6 +672,7 @@ struct psb_ops {
        int sgx_offset;         /* Base offset of SGX device */
        int hdmi_mask;          /* Mask of HDMI CRTCs */
        int lvds_mask;          /* Mask of LVDS CRTCs */
+       int sdvo_mask;          /* Mask of SDVO CRTCs */
        int cursor_needs_phys;  /* If cursor base reg need physical address */
 
        /* Sub functions */