Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp920879rwd; Thu, 8 Jun 2023 09:25:50 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4URpqldU/khNjVkYryWbUYrq3J0wIHEbsbmCJmA69p7jz3XUE3gf7xgyJWoMRQmY2Z8fx/ X-Received: by 2002:a17:903:11cf:b0:1af:e302:123 with SMTP id q15-20020a17090311cf00b001afe3020123mr3411220plh.3.1686241549835; Thu, 08 Jun 2023 09:25:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1686241549; cv=none; d=google.com; s=arc-20160816; b=f7OIkGpOe3ASsi8rj/L6fxLCTDq9FRXRahgxDwtqlGGUuK6LnIQyzPHG68sRZxiUhi RbCaiox9U6iUziPN05zxdZRdnALQp9VNJoZvfugN+9f9z3fUKZ6tsewCsr/qgNdSaK7p MURJ0QLdVDfdELBuoyDQ+EVqYsY7s4MW8HYtZEwL+iOOkuB85dIQ7DeZ2Fsd/7Ivj8BS s3tsl6V8kqzF8ldZhRcjodJc0itEzAqYxSI9374/7NvADPEjQxkgRBmfwTHLPyXjvX38 //L17FXXYgv0Z/665JZi2HYuQORkZwxzUvDMuXR8+ZO8FffYx41PTApej/3jUE1+bcvl Ez3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=LtDK807cWu25+ZWD4p2mPiRke5/KbH6pzz8Izn+8M88=; b=fyKey4qGoGuuadYdYW7C8J01YoZ3casvX+NmJVlRxlvD9QladDMR4dBG7TtMKJcbz8 y1Yhxlx9ZxIwceEuc8QBEKzinUm+ZF4uIqVvhlGiq63rt86pkDQBYyWhYC3ufJpmyFt7 7jFGEgOQ2eeUCGWhKIcoaFQexv1ZC0xn7eDwYsKv0d28dunSCNymg43CoB0TPFdSrPsm 7LJwOh/XwcvyOTu8fCaBLMS58rhUL02O1PSnpjjlrxntXgam3XqRvXNOz5gIFwNvlSZ3 7j7DlZtmh0YvEkanOqnAFoI2bIFJxYiQc0jJUVd4ZnwAkyhHxIRRaSudwkJN6YPCP5wO oVPg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=bKFfe1Uz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c17-20020a170902d49100b001a97a54c3a2si1275683plg.197.2023.06.08.09.25.37; Thu, 08 Jun 2023 09:25:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=bKFfe1Uz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236304AbjFHPyP (ORCPT + 99 others); Thu, 8 Jun 2023 11:54:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42702 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237511AbjFHPyL (ORCPT ); Thu, 8 Jun 2023 11:54:11 -0400 Received: from mail-yw1-x1130.google.com (mail-yw1-x1130.google.com [IPv6:2607:f8b0:4864:20::1130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12EEC11A for ; Thu, 8 Jun 2023 08:53:48 -0700 (PDT) Received: by mail-yw1-x1130.google.com with SMTP id 00721157ae682-565de553de1so11561797b3.0 for ; Thu, 08 Jun 2023 08:53:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686239623; x=1688831623; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=LtDK807cWu25+ZWD4p2mPiRke5/KbH6pzz8Izn+8M88=; b=bKFfe1UzeXsuj7UXSDZ74VbTqvJep4IALpVfyydksV2DoZxST1mj386nEwE89m2GZs sllw/G69t6OwY8I2fizivGEKRCq++DKH3XKeKmxqPH5InyTToE+WnqLeURWAoShgOh17 zWTDzZS/ZbcFwUEDAsY62cUd7HIxZi3dTn2PxrRdr2XFkdHjTaUzSK+/GSOia9ROSdHz woze1xRdNscHVeWlxavLYqv2RR6r443oUiiMDD0EQRj2ovIu1o1957gUPYetV4P4Ao8J 572SvlgwQpx0GyYhxeegetTygUXlbr70hn3PbXWNPcBCm0aBcCWTh7s2SRUY2/yJ00oL b1QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686239623; x=1688831623; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LtDK807cWu25+ZWD4p2mPiRke5/KbH6pzz8Izn+8M88=; b=jatA5BODTs5U4AXqZ1giPLfvvK3w+Zb7/XpJugJuhGAABkKeyz7TWWZyamQr1OVsZn 3gHEUKr8YaNR948X5lPMI5oZslbtZces/ettl2DQxedUEIDeBgY23v5mvOFY30bWz0P6 SSCAMuKcCKRlQkMbgr4eTdyRwdjXMQ19zuq2KG9fZLl8fl/F59hHBHd0DVJLswjflcHd lhP/Z/vSVyzTyfmBFe0zzjg2cfZcejsIKn6KwyvZ3VSCw/jClNlIhbIjhPoGxsPiAs2t KE4VWzRhAV8u8l0T2MtNSUfIcuJ/bF+MK0CJ7uo490MD2Xw9XJE4aPIXDyHKKa+7q2al EEFA== X-Gm-Message-State: AC+VfDy5DKipCppZDvhhOjTrV9PdJf8KebIY2BEwQUnOUy7MpdYmov1N iQtZWel3m8ZV1/+emTFEJ0xj/Ae9osm/oo28PD4Ugg== X-Received: by 2002:a0d:d7c9:0:b0:561:fc3a:30f3 with SMTP id z192-20020a0dd7c9000000b00561fc3a30f3mr191024ywd.8.1686239623279; Thu, 08 Jun 2023 08:53:43 -0700 (PDT) MIME-Version: 1.0 References: <55920f880c9742f486f64aa44e25508e@hyperstone.com> In-Reply-To: <55920f880c9742f486f64aa44e25508e@hyperstone.com> From: Ulf Hansson Date: Thu, 8 Jun 2023 17:53:07 +0200 Message-ID: Subject: Re: [PATCHv2 1/2] mmc: block: ioctl: do write error check for spi To: Christian Loehle Cc: "linux-mmc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Adrian Hunter , Avri Altman Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 25 May 2023 at 11:56, Christian Loehle wrote: > > SPI doesn't have the usual PROG path we can check for error bits > after moving back to TRAN. Instead it holds the line LOW until > completion. We can then check if the card shows any errors or > is in IDLE state, indicating the line is no longer LOW because > the card was reset. > > Signed-off-by: Christian Loehle Applied for next and by adding stable tag, thanks! Kind regards Uffe > --- > drivers/mmc/core/block.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c > index d920c4178389..e46330815484 100644 > --- a/drivers/mmc/core/block.c > +++ b/drivers/mmc/core/block.c > @@ -178,6 +178,7 @@ static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq, > int recovery_mode, > struct mmc_queue *mq); > static void mmc_blk_hsq_req_done(struct mmc_request *mrq); > +static int mmc_spi_err_check(struct mmc_card *card); > > static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk) > { > @@ -608,6 +609,11 @@ static int __mmc_blk_ioctl_cmd(struct mmc_card *card, struct mmc_blk_data *md, > if ((card->host->caps & MMC_CAP_WAIT_WHILE_BUSY) && use_r1b_resp) > return 0; > > + if (mmc_host_is_spi(card->host)) { > + if (idata->ic.write_flag || r1b_resp || cmd.flags & MMC_RSP_SPI_BUSY) > + return mmc_spi_err_check(card); > + return err; > + } > /* Ensure RPMB/R1B command has completed by polling with CMD13. */ > if (idata->rpmb || r1b_resp) > err = mmc_poll_for_busy(card, busy_timeout_ms, false, > -- > 2.37.3 > > > Hyperstone GmbH | Reichenaustr. 39a | 78467 Konstanz > Managing Director: Dr. Jan Peter Berns. > Commercial register of local courts: Freiburg HRB381782 >