From patchwork Mon Jun 21 11:10:21 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: archit taneja X-Patchwork-Id: 107174 X-Patchwork-Delegate: tomi.valkeinen@nokia.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.3) with ESMTP id o5LBAqi8013955 for ; Mon, 21 Jun 2010 11:10:52 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932293Ab0FULKi (ORCPT ); Mon, 21 Jun 2010 07:10:38 -0400 Received: from comal.ext.ti.com ([198.47.26.152]:35710 "EHLO comal.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932255Ab0FULKc (ORCPT ); Mon, 21 Jun 2010 07:10:32 -0400 Received: from dlep35.itg.ti.com ([157.170.170.118]) by comal.ext.ti.com (8.13.7/8.13.7) with ESMTP id o5LBARl6006153 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 21 Jun 2010 06:10:27 -0500 Received: from legion.dal.design.ti.com (localhost [127.0.0.1]) by dlep35.itg.ti.com (8.13.7/8.13.7) with ESMTP id o5LBAP4P020820; Mon, 21 Jun 2010 06:10:25 -0500 (CDT) Received: from localhost (omaplbp.india.ti.com [172.24.190.217]) by legion.dal.design.ti.com (8.11.7p1+Sun/8.11.7) with ESMTP id o5LBANP10388; Mon, 21 Jun 2010 06:10:23 -0500 (CDT) From: Archit Taneja To: tomi.valkeinen@nokia.com Cc: linux-omap@vger.kernel.org, Archit Taneja Subject: [PATCH v2] OMAP: DSS2: DSI: disable manager on framedone timeout Date: Mon, 21 Jun 2010 16:40:21 +0530 Message-Id: <1277118621-2086-1-git-send-email-archit@ti.com> X-Mailer: git-send-email 1.5.4.7 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter.kernel.org [140.211.167.41]); Mon, 21 Jun 2010 11:10:52 +0000 (UTC) diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index a6e0f64..1c4925c --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -2764,6 +2764,7 @@ static void dsi_te_timeout(unsigned long arg) static void dsi_handle_framedone(int error) { const int channel = dsi.update_channel; + struct omap_dss_device *device = dsi.vc[channel].dssdev; cancel_delayed_work(&dsi.framedone_timeout_work); @@ -2774,6 +2775,9 @@ static void dsi_handle_framedone(int error) dsi.bta_callback = NULL; + if (error == -ETIMEDOUT) + device->manager->disable(device->manager); + if (dsi.te_enabled) { /* enable LP_RX_TO again after the TE */ REG_FLD_MOD(DSI_TIMING2, 1, 15, 15); /* LP_RX_TO */