From patchwork Fri Jan 20 21:50:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kamal Dasu X-Patchwork-Id: 717929 X-Patchwork-Delegate: boris.brezillon@free-electrons.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3v4vZZ0ycJz9syB for ; Sat, 21 Jan 2017 08:52:37 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="COsVNQ++"; dkim-atps=neutral Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1cUh6n-0006KX-OQ; Fri, 20 Jan 2017 21:52:33 +0000 Received: from mail-qk0-f194.google.com ([209.85.220.194]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1cUh6P-0006Et-1x for linux-mtd@lists.infradead.org; Fri, 20 Jan 2017 21:52:10 +0000 Received: by mail-qk0-f194.google.com with SMTP id i34so181434qkh.3 for ; Fri, 20 Jan 2017 13:51:46 -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; bh=SRP/YheHF/hX65c2CtAScedVX7ISZ5X2f3He1iFojrc=; b=COsVNQ++53j7uVk9qdBo7+zzUVnP3AaKnGAmB0MEJmuiuSD8jTUfD0skV66FBNumup 7lQzWYTuWZNXqx6IEoWzqJY28D3hlh/t9hYFoLqnaFgLt7/tu4/F+6hZ7ng1EBnKpWEa 8hzguxwYWbUDkdsZw6lSqoiuVs531bdxQ9wGsH+PkOGwXQmW3r9+Yu4LwXmmUFWa0Yof zAha0GbWCLLWEoTWvb9OZMPuBy8KnJSVuj+P3qYITm+5LfslFB9OZgQp7KH5av4Gh9LM ELYjddF1FuFiwYFcARkq++kcUSNuvG3CnBXzNNS33DR+B4R/Q5TkVpRPOVw6qr8e/oc4 02Lw== 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=SRP/YheHF/hX65c2CtAScedVX7ISZ5X2f3He1iFojrc=; b=LiBO6Hv39XrzP3zngsBJyZxQ8MZoVUNNseblDxr12P/ppUtpfGg3qKGewQhGZ3SvDv IRVwVgxKdz4onnnbKPUbzb73QmaYyWjln/wNVJvFrZk9tWtdgGUjt+SrMgFDe3CFTEAp U2vsf6YjUgAb0krPP9Jmcfl+cek++/Qj+Brfa6pcr3CCb4Hmw3EKvJWJjQ+PV/aqSN+X 0zSaZknGrHXDLTiGeBGuSXSyPWMUnftioH5dUE7/9Sg4ZguKwrsAw/NeWI7pJH6Xje3P CSoDhIkH8BMOUMWRmo7fEQbZgimG2OM6dEgFXPLtx711WC9zQ3sUFOOM3FgULezV2jCv fUyA== X-Gm-Message-State: AIkVDXIMWRrGGRaRTYlLe9SjPJGzTqAa2CG8Pdwv2/REWLvWgdCkwaVPZBWke5n234RYzQ== X-Received: by 10.55.18.76 with SMTP id c73mr14211971qkh.119.1484949045602; Fri, 20 Jan 2017 13:50:45 -0800 (PST) Received: from mail.broadcom.com ([192.19.218.250]) by smtp.gmail.com with ESMTPSA id m85sm6907577qkl.28.2017.01.20.13.50.43 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 20 Jan 2017 13:50:45 -0800 (PST) From: Kamal Dasu To: cyrille.pitchen@atmel.com, marex@denx.de, broonie@kernel.org Subject: [PATCH, 1/2] mtd: m25p80: Let m25p80_read() fallback to spi transfer Date: Fri, 20 Jan 2017 16:50:22 -0500 Message-Id: <1484949023-2085-1-git-send-email-kdasu.kdev@gmail.com> X-Mailer: git-send-email 1.9.1 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170120_135209_444559_B41C9DC9 X-CRM114-Status: UNSURE ( 9.98 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -1.5 (-) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-1.5 points) pts rule name description ---- ---------------------- -------------------------------------------------- 0.5 RCVD_IN_SORBS_SPAM RBL: SORBS: sender is a spam source [209.85.220.194 listed in dnsbl.sorbs.net] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [209.85.220.194 listed in list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (kdasu.kdev[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.220.194 listed in wl.mailspike.net] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: bcm-kernel-feedback-list@broadcom.com, f.fainelli@gmail.com, linux-mtd@lists.infradead.org, Kamal Dasu MIME-Version: 1.0 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org In m25p80_read() even though spi_flash_read() is supported by some drivers, under certain circumstances like unaligned buffer, address or address range limitations on certain SoCs let it fallback to core spi reads. Such drivers are expected to return -EINVAL so that the m25p80_read() uses standard spi transfer. Signed-off-by: Kamal Dasu --- drivers/mtd/devices/m25p80.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c index 9cf7fcd..7b7f2cc 100644 --- a/drivers/mtd/devices/m25p80.c +++ b/drivers/mtd/devices/m25p80.c @@ -155,9 +155,16 @@ static ssize_t m25p80_read(struct spi_nor *nor, loff_t from, size_t len, msg.data_nbits = m25p80_rx_nbits(nor); ret = spi_flash_read(spi, &msg); - if (ret < 0) + + if (ret >= 0) + return msg.retlen; + + /* + * some spi master drivers might need to fallback to + * normal spi transfer + */ + if (ret != -EINVAL) return ret; - return msg.retlen; } spi_message_init(&m);