From patchwork Thu Mar 7 02:41:08 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Vasut X-Patchwork-Id: 1052630 X-Patchwork-Delegate: hs@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ZRxBZ5k3"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44FFJ90LYXz9s70 for ; Thu, 7 Mar 2019 13:41:26 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id D6F2BC21DFD; Thu, 7 Mar 2019 02:41:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id BAFA2C21C29; Thu, 7 Mar 2019 02:41:17 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id B7CE2C21C29; Thu, 7 Mar 2019 02:41:16 +0000 (UTC) Received: from mail-wm1-f66.google.com (mail-wm1-f66.google.com [209.85.128.66]) by lists.denx.de (Postfix) with ESMTPS id 7B62CC21C27 for ; Thu, 7 Mar 2019 02:41:15 +0000 (UTC) Received: by mail-wm1-f66.google.com with SMTP id f65so7769544wma.2 for ; Wed, 06 Mar 2019 18:41:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=XgrNR8zlUGLYeEe9t2jdSGrC1zSUSaMMp9ejHyXZsdw=; b=ZRxBZ5k3RsIJ+lhEOXOhSPGVeHIEtY/69IHP4A0Dt61vg0PiKLGE7/kHs5GQIfAHS6 K464MMNYMTPT8nedpk2oBKj5y5fso10bV9wgfaJfGmaJ02ch4kxHIPUeZm5s+EXbbuqv NWvTX3OWYN7NrF472gB1liFknTGec9ZM94yFR5bMxC2ffWLir1Kg9FRqr9C54QnRxfxp /HJtmdx6CNoGHsOiNhJuejI8x9EUf8imSw+DM8cefpdp2izR6ieXimImik8oGNI2k9sK wFcSfJJtCY29NoW7ZX+U5+pFNnWuiwg2Ph+kHrImnvmp1G+YYz2ZOp7mfcFcOxqFLztQ 2IiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=XgrNR8zlUGLYeEe9t2jdSGrC1zSUSaMMp9ejHyXZsdw=; b=Nw/zjy69NOGZj5WhY2zA6P2mCxIYYH1A1kTBktY+xexjwGy6Gy4CLSXVZ3B2yHGZX4 avhYTRyZjLPAuBLr+WQekng6U0dhJdJ+QZ8vrDQUpEt1OKLJBDC2bcYcPS6yNghYRpdO MKwfTjSfKFO6napPOMDuY4vtLsy2NZeE8afCfCfafUaF3x6ysAL3TdMM3AWE3gqvCtav ZSNgqQg0n8JrsSA9RYAd4PecFcmjHH5Jf64cxjcQJOcOkhoLZ9m1OGPuJj+8b2yNTWHw tQ+w799QcmRfdpUf3lAY2i1xfPzpRMFQkL0hK0fWOSJakUIV+a3Ntm0D2w0mmVCYbvVT U+fQ== X-Gm-Message-State: APjAAAWbCrwJ93Fn+ZjWxq0HsscYPmhJl5HZOXwJewSJQJc7xiTpHSng ilEI2tkFVM/x2bGwmeIcrtPspu1Y X-Google-Smtp-Source: APXvYqxM+vVMXfnj+XrGuRssRBxy5pmtJPMsRrglCQK/RCgu39+Cz4+FwhKkuazpKrHwhC1fojVy+A== X-Received: by 2002:a1c:8088:: with SMTP id b130mr4015326wmd.96.1551926474690; Wed, 06 Mar 2019 18:41:14 -0800 (PST) Received: from kurokawa.lan (ip-86-49-110-70.net.upcbroadband.cz. [86.49.110.70]) by smtp.gmail.com with ESMTPSA id z198sm3898789wmc.10.2019.03.06.18.41.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Mar 2019 18:41:13 -0800 (PST) From: Marek Vasut X-Google-Original-From: Marek Vasut To: u-boot@lists.denx.de Date: Thu, 7 Mar 2019 03:41:08 +0100 Message-Id: <20190307024108.31817-1-marek.vasut+renesas@gmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Cc: Nobuhiro Iwamatsu , Marek Vasut Subject: [U-Boot] [PATCH] i2c: rcar_iic: Read ICSR only once X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Read ICSR only once to avoid missing interrupts. This happens on R8A7791 Porter during reset, when reading the PMIC register 0x13, which may fail sometimes because of the missed DTE interrupt. Signed-off-by: Marek Vasut Cc: Heiko Schocher Cc: Nobuhiro Iwamatsu Reviewed-by: Heiko Schocher --- drivers/i2c/rcar_iic.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/i2c/rcar_iic.c b/drivers/i2c/rcar_iic.c index e91fc86c1a..9d45f547d1 100644 --- a/drivers/i2c/rcar_iic.c +++ b/drivers/i2c/rcar_iic.c @@ -58,12 +58,14 @@ static void sh_irq_dte(struct udevice *dev) static int sh_irq_dte_with_tack(struct udevice *dev) { struct rcar_iic_priv *priv = dev_get_priv(dev); + u8 icsr; int i; for (i = 0; i < IRQ_WAIT; i++) { - if (RCAR_IC_DTE & readb(priv->base + RCAR_IIC_ICSR)) + icsr = readb(priv->base + RCAR_IIC_ICSR); + if (RCAR_IC_DTE & icsr) break; - if (RCAR_IC_TACK & readb(priv->base + RCAR_IIC_ICSR)) + if (RCAR_IC_TACK & icsr) return -ETIMEDOUT; udelay(10); }