Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754893AbcJEMAT (ORCPT ); Wed, 5 Oct 2016 08:00:19 -0400 Received: from smtpout.microchip.com ([198.175.253.82]:41262 "EHLO email.microchip.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752927AbcJEMAR (ORCPT ); Wed, 5 Oct 2016 08:00:17 -0400 From: Cyrille Pitchen To: , CC: , , , , Cyrille Pitchen Subject: [PATCH v2 1/9] mtd: spi-nor: improve macronix_quad_enable() Date: Wed, 5 Oct 2016 14:00:32 +0200 Message-ID: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain X-Brightmail-Tracker: H4sIAAAAAAAAC+NgFprKqsTGxcLF5cOiG/D6S7jBzLNrb7BYdExZxWRx79M2Rotp098xW9y/dprF4vq8fcwOrAEMUayZeUn5FQmsGc+XXWUuWMte8ejWDfYGxm62LkYuDiGBdYwS945eZu1i5ORgEzCUePvgKJDNwSEi4CBxbYI+SJhZYCGjxPUTSiC2sICLxMRpU9lBbBYBFYlFM9eD2bwC8RKtvw+zgdgSAnISN891MoPYnAK2EtM2fGEBsYUEbCTmzVwNVS8ocXLmExaI+RISB1+8YIaoUZNY2LKCGWJOoMSb1buZIGwnia6TE6Hm20kcnn6RHcJ2kNi+C2I+SM2uz5eherUltr/axwph60hsO9gPVWMrsWfGRKiZ7hIPHi2Hsn0lZj1sgKqJkmh89pBpAqPELCSnzkJy6gJGplWM0s4efrrBYbquEc4eBiZ6uckZBbq5iZl5esn5uZsYIdGUuYPxWIP/IUZJDiYlUd6tk86HC/El5adUZiQWZ8QXleakFh9ilODgURLhtVwOlOMtLkjMLc5Mh0nJcHAoSfBGgKQEi1LTUyvSMnNKUosg0qcYVTkW/Li9lkmIJS8/L1VKnDcapFAAZEZGaR5c3SVGUSlh3qilQDmegtSi3MwSiPgtRmGOhzDNQOcyAIEG4ytGcQ5GJWFed5BZPJl5JXDnvAK6lAno0nW7T4NcWpKIkJJqYDRUuthRcWh90F+ZbYcd3lYcO+Al/9N/Ts2dpTZ/GP5UdAfar7kRr+/kmOOcyhF/aItz4JTJfCdbD212/9pq2Nh3rzaX6/Fn2U0qRpcOfeL/4rg2Xfv67CKhyLbdEeuPLaoJYpiaGO3XWSX0LrGZefrKf8FrOLIebvFktM6bUlHBcSzIOiHOQImlOCPRUIu5qDgRAJLJV7koAwAA Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 911 Lines: 28 The patch checks whether the Quad Enable bit is already set in the Status Register. If so, the function exits immediately with a successful return code. Otherwise, a message is now printed telling we're setting the non-volatile bit. Signed-off-by: Cyrille Pitchen --- drivers/mtd/spi-nor/spi-nor.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c index d0fc165d7d66..5c87b2d99507 100644 --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c @@ -1211,6 +1211,11 @@ static int macronix_quad_enable(struct spi_nor *nor) val = read_sr(nor); if (val < 0) return val; + if (val & SR_QUAD_EN_MX) + return 0; + + /* Update the Quad Enable bit. */ + dev_info(nor->dev, "setting Macronix Quad Enable (non-volatile) bit\n"); write_enable(nor); write_sr(nor, val | SR_QUAD_EN_MX); -- 2.7.4