From patchwork Tue May 11 18:35:23 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tony Lindgren X-Patchwork-Id: 98802 X-Patchwork-Delegate: tony@atomide.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 o4BIZg5H010470 for ; Tue, 11 May 2010 18:35:43 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756263Ab0EKSf1 (ORCPT ); Tue, 11 May 2010 14:35:27 -0400 Received: from mho-02-ewr.mailhop.org ([204.13.248.72]:49997 "EHLO mho-02-ewr.mailhop.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752252Ab0EKSfV (ORCPT ); Tue, 11 May 2010 14:35:21 -0400 Received: from c-69-181-193-102.hsd1.ca.comcast.net ([69.181.193.102] helo=baageli.muru.com) by mho-02-ewr.mailhop.org with esmtpa (Exim 4.68) (envelope-from ) id 1OBuIZ-000D3J-IG; Tue, 11 May 2010 18:35:19 +0000 X-Mail-Handler: MailHop Outbound by DynDNS X-Originating-IP: 69.181.193.102 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/mailhop/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1/I31uRj1jw4d0jJ+7HDVUn Subject: [PATCH 6/6] OMAP3: I2C: Clean up Errata 1p153 handling To: linux-i2c@vger.kernel.org, ben-linux@fluff.org From: Tony Lindgren Cc: Nishanth Menon , Manjunatha GK , linux-omap@vger.kernel.org, Alexander Shishkin Date: Tue, 11 May 2010 11:35:23 -0700 Message-ID: <20100511183523.15596.19585.stgit@baageli.muru.com> In-Reply-To: <20100511182854.15596.56293.stgit@baageli.muru.com> References: <20100511182854.15596.56293.stgit@baageli.muru.com> User-Agent: StGit/0.15 MIME-Version: 1.0 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]); Tue, 11 May 2010 18:35:43 +0000 (UTC) diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index fdba131..7674efb 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c @@ -168,6 +168,7 @@ enum { /* Errata definitions */ #define I2C_OMAP_ERRATA_I207 (1 << 0) +#define I2C_OMAP3_1P153 (1 << 1) struct omap_i2c_dev { struct device *dev; @@ -954,7 +955,7 @@ complete: break; } - if ((dev->rev <= OMAP_I2C_REV_ON_3430) && + if ((dev->errata & I2C_OMAP3_1P153) && errata_omap3_1p153(dev, &stat, &err)) goto complete; @@ -1057,6 +1058,9 @@ omap_i2c_probe(struct platform_device *pdev) dev->rev = omap_i2c_read_reg(dev, OMAP_I2C_REV_REG) & 0xff; + if (dev->rev <= OMAP_I2C_REV_ON_3430) + dev->errata |= I2C_OMAP3_1P153; + if (!(cpu_class_is_omap1() || cpu_is_omap2420())) { u16 s;