gma500: kill bogus code
authorAlan Cox <alan@linux.intel.com>
Fri, 26 Aug 2011 10:19:17 +0000 (11:19 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 26 Aug 2011 17:46:43 +0000 (10:46 -0700)
During the power split ups and work a chunk of code escaped into the
Poulsbo code path which it isn't for. On some devices such as the Dell
mini-10 this causes problems.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/gma500/psb_device.c

index 46591323595a8e0c2303a666407b20c14b06dc30..b97aa78519f27d30ffb1086a12f2a22484348a7d 100644 (file)
@@ -213,7 +213,6 @@ static int psb_restore_display_registers(struct drm_device *dev)
        struct drm_psb_private *dev_priv = dev->dev_private;
        struct drm_crtc *crtc;
        struct drm_connector *connector;
-       int pp_stat;
 
        /* Display arbitration + watermarks */
        PSB_WVDC32(dev_priv->saveDSPARB, DSPARB);
@@ -237,37 +236,6 @@ static int psb_restore_display_registers(struct drm_device *dev)
                connector->funcs->restore(connector);
 
        mutex_unlock(&dev->mode_config.mutex);
-
-       if (dev_priv->iLVDS_enable) {
-               /*shutdown the panel*/
-               PSB_WVDC32(0, PP_CONTROL);
-               do {
-                       pp_stat = PSB_RVDC32(PP_STATUS);
-               } while (pp_stat & 0x80000000);
-
-               /* Turn off the plane */
-               PSB_WVDC32(0x58000000, DSPACNTR);
-               PSB_WVDC32(0, DSPASURF);/*trigger the plane disable*/
-               /* Wait ~4 ticks */
-               msleep(4);
-               /* Turn off pipe */
-               PSB_WVDC32(0x0, PIPEACONF);
-               /* Wait ~8 ticks */
-               msleep(8);
-
-               /* Turn off PLLs */
-               PSB_WVDC32(0, MRST_DPLL_A);
-       } else {
-               PSB_WVDC32(DPI_SHUT_DOWN, DPI_CONTROL_REG);
-               PSB_WVDC32(0x0, PIPEACONF);
-               PSB_WVDC32(0x2faf0000, BLC_PWM_CTL);
-               while (REG_READ(0x70008) & 0x40000000)
-                       cpu_relax();
-               while ((PSB_RVDC32(GEN_FIFO_STAT_REG) & DPI_FIFO_EMPTY)
-                       != DPI_FIFO_EMPTY)
-                       cpu_relax();
-               PSB_WVDC32(0, DEVICE_READY_REG);
-       }
        return 0;
 }