From patchwork Fri Jul 21 21:11:59 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Vasut X-Patchwork-Id: 792325 X-Patchwork-Delegate: jh80.chung@samsung.com 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; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="k7irnsvC"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3xDk445321z9s82 for ; Sat, 22 Jul 2017 07:12:19 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 314DCC21D5D; Fri, 21 Jul 2017 21:12:15 +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, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, 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 C9899C21C40; Fri, 21 Jul 2017 21:12:12 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 0DBA4C21C40; Fri, 21 Jul 2017 21:12:11 +0000 (UTC) Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by lists.denx.de (Postfix) with ESMTPS id 3406DC21C3F for ; Fri, 21 Jul 2017 21:12:11 +0000 (UTC) Received: by mail-wr0-f193.google.com with SMTP id y43so13034332wrd.0 for ; Fri, 21 Jul 2017 14:12:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=pM5qwkeLokYnIomYbp595xzFOhAauJU9JamJy/yVsZ8=; b=k7irnsvCMFpJj+0o1Ygc9nivdRnGOEaxi3v7cHQwzj+iTr5GbpA54aa7zwX6oFcsw/ LlTLrKVK3/3kJc0BgWDwboG0iv0y2Fq0dTF8GnmVqKUYQi32gThc07v8cQWn+58HyKfM ZIXvjvGKeuqd2Yd6jwFCiLMRqbGe6xUj2v7uTEaLTL2L2HOar5qH8p60cDOJ6E2PMak4 RJcDXwrs34JqrkgTxr8ztjB2Oa+oJWHloRbNTKtNJRPbpbIplckglWtNm8k9/JUjHENz 5+Pnk60EiPI0swEjbgP7h3O3RYpcX0NcLDiLlbVEIWS/Q04+1A585ZMuKE+icEGRk2wr oQoQ== 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; bh=pM5qwkeLokYnIomYbp595xzFOhAauJU9JamJy/yVsZ8=; b=kU1o9NcDDK6No1OSyJSmGAViNaeA8xLjHBprX5WuOZ44QZV4TWOjuueFS0Xwyse9vR KimW4s6C5K8mjHtXQ9TmY05JfjzjS3bOspTNY/TfT7bvagLOGCQv+qqBGXudVE45j+2V 5gj7RzAlb3PFl4Xx+BFS7yE4WDcjll+7xTAosVYjR44vXSoKp+NjTdM7QhQp3dya0C0b WuYJNp3T73vlnau74RHSFjEJKDxt3YcUfFNHhtMu22Sbyzbj00WFYWPWnzepzLG534eS DP0qlbphslbDe3r8rrG8Nf0DrZatenpoXX4j1ZYSoktdYp+f6PV0kYrdiF1+GelYopQw jC0w== X-Gm-Message-State: AIVw110gugqpzymlymeaY7fKJdgE/FfdvUw3wwUo0roL/nWcA9vc9V+Q CD+uBqCdPqdlwv5toyM= X-Received: by 10.223.128.209 with SMTP id 75mr9840830wrl.99.1500671530570; Fri, 21 Jul 2017 14:12:10 -0700 (PDT) Received: from kurokawa.lan (ip-86-49-107-50.net.upcbroadband.cz. [86.49.107.50]) by smtp.gmail.com with ESMTPSA id n19sm2604877wmd.40.2017.07.21.14.12.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 21 Jul 2017 14:12:09 -0700 (PDT) From: Marek Vasut X-Google-Original-From: Marek Vasut To: u-boot@lists.denx.de Date: Fri, 21 Jul 2017 23:11:59 +0200 Message-Id: <20170721211159.23317-1-marek.vasut+renesas@gmail.com> X-Mailer: git-send-email 2.11.0 Cc: Marek Vasut Subject: [U-Boot] [PATCH] mmc: uniphier-sd: Fix long response processing 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: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" The long response entry 0..3 LSByte comes from the next response register MSByte, not from the next response register LSByte. Fix this to make the driver report correct values in response 136 . Signed-off-by: Marek Vasut Cc: Masahiro Yamada Cc: Jaehoon Chung Acked-by: Masahiro Yamada --- drivers/mmc/uniphier-sd.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c index 3c462bd583..e272b14153 100644 --- a/drivers/mmc/uniphier-sd.c +++ b/drivers/mmc/uniphier-sd.c @@ -470,13 +470,13 @@ static int uniphier_sd_send_cmd(struct udevice *dev, struct mmc_cmd *cmd, u32 rsp_71_40 = readl(priv->regbase + UNIPHIER_SD_RSP32); u32 rsp_39_8 = readl(priv->regbase + UNIPHIER_SD_RSP10); - cmd->response[0] = (rsp_127_104 & 0xffffff) << 8 | - (rsp_103_72 & 0xff); - cmd->response[1] = (rsp_103_72 & 0xffffff) << 8 | - (rsp_71_40 & 0xff); - cmd->response[2] = (rsp_71_40 & 0xffffff) << 8 | - (rsp_39_8 & 0xff); - cmd->response[3] = (rsp_39_8 & 0xffffff) << 8; + cmd->response[0] = ((rsp_127_104 & 0x00ffffff) << 8) | + ((rsp_103_72 & 0xff000000) >> 24); + cmd->response[1] = ((rsp_103_72 & 0x00ffffff) << 8) | + ((rsp_71_40 & 0xff000000) >> 24); + cmd->response[2] = ((rsp_71_40 & 0x00ffffff) << 8) | + ((rsp_39_8 & 0xff000000) >> 24); + cmd->response[3] = (rsp_39_8 & 0xffffff) << 8; } else { /* bit 39-8 */ cmd->response[0] = readl(priv->regbase + UNIPHIER_SD_RSP10);