Received: by 2002:a17:90a:88:0:0:0:0 with SMTP id a8csp37840pja; Fri, 22 Nov 2019 03:09:03 -0800 (PST) X-Google-Smtp-Source: APXvYqwjIv/LmOZ7fMmEDATPNEqoqhdj5wFdm9eIuH469R/7rDnr7RSurpbLs5TmXPINQjaTRfZg X-Received: by 2002:aa7:cdc6:: with SMTP id h6mr334756edw.15.1574420943564; Fri, 22 Nov 2019 03:09:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574420943; cv=none; d=google.com; s=arc-20160816; b=icJj9A+8m6E5fEVC4h8spHrLNxdDo9uCzulUaZm4sA0zzTbWajdG0Q9b7XWFOZypkV 5NXAvpC4RDxeSPHksBRV6DUv+9kuj/pIv8/+pfnsVrXJf80F3zNI/KYNfuG6zs9SNIxJ eLH1aC9bLh/wKeJCN8dgPraVDgJRYm08h+6oEpm8KdBPycMm984CtL35atGKJYipiVoJ ITmE7axhOEO8C0cSF/wm/CV0LUWx1VnxaqGRnzFdr68ZgyDRnY5qH384FDn7q3Zi2TUg MpV8gZXKdSHZLYDnKWufzwuacaKO0DGFm0U9iaAwPZP8+inkXWdZw6ViU3n+vvgwCho6 bvFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=m9Kclga+T70M5NXjAzYOQb+s+nsLgsuzSHAo98PFJdE=; b=JJutvAxRSu3AGsKhGZaDzUUC3z0J9VyXHSu5SUcDU3oEpEhZlOvaha/RCZt7fmY1jO EKiwaKGNccG0d3zIMQobBQjb7iUztDbHWmP0Wpy/Q9mYOc9MGdAY7gu9SekWFOO1it0p hQRB01LoiMpjvu3tQLEhJZsCH82fVCU4m9uG8LxGuB2q0g/mCBEUa49Kt0IN0MquhjUg 9BCUHpnNBX6cvjjHg3vBVY8MRk5kXWrs8u0UxsJoBlRL7sC0eHFASC+rrtDY/rnEEoCO mcu/UEwqJItLsMLTKZ0DuRvHC7M1CL2kEcCBDjdM9ie8k/dtfnWE3eu73Ktkm/XnLuac ut+w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=c0xnZ6Nd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id bi3si4280384edb.331.2019.11.22.03.08.39; Fri, 22 Nov 2019 03:09:03 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=c0xnZ6Nd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731618AbfKVLEu (ORCPT + 99 others); Fri, 22 Nov 2019 06:04:50 -0500 Received: from mail.kernel.org ([198.145.29.99]:60022 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731592AbfKVLEs (ORCPT ); Fri, 22 Nov 2019 06:04:48 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 91E7A207FC; Fri, 22 Nov 2019 11:04:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574420688; bh=B9AoKmD1xmcv4P7KtG1+SP2sJt/qlkpf6OAJSMxaA8E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=c0xnZ6Nd1JBitPGNQwRr1EWtD2d59mw+1i/trRhj3VjX3QWltGKXPSsQbhYYfZo1N 7tZxrZv1GwZYWLnbnGzzK59P+8PAj3/4fFYpBB8isvvUC/I3oXPUQwsnSay8DwGNQh QugeZlkGkzp2qsZeM3lzn738CHJCOtJFyOdkjBns= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Linus Walleij , Sasha Levin Subject: [PATCH 4.19 192/220] pinctrl: gemini: Mask and set properly Date: Fri, 22 Nov 2019 11:29:17 +0100 Message-Id: <20191122100927.895075849@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191122100912.732983531@linuxfoundation.org> References: <20191122100912.732983531@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Linus Walleij [ Upstream commit d17f477c5bc6b4a5dd9f51ae263870da132a8e89 ] The code was written under the assumption that the regmap_update_bits() would mask the bits in the mask and set the bits in the value. It missed the points that it will not set bits in the value unless these are also masked in the mask. Set value bits that are not in the mask will simply be ignored. Fixes: 06351d133dea ("pinctrl: add a Gemini SoC pin controller") Signed-off-by: Linus Walleij Signed-off-by: Sasha Levin --- drivers/pinctrl/pinctrl-gemini.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/pinctrl-gemini.c b/drivers/pinctrl/pinctrl-gemini.c index fa7d998e1d5a8..1e484a36ff07e 100644 --- a/drivers/pinctrl/pinctrl-gemini.c +++ b/drivers/pinctrl/pinctrl-gemini.c @@ -2184,7 +2184,8 @@ static int gemini_pmx_set_mux(struct pinctrl_dev *pctldev, func->name, grp->name); regmap_read(pmx->map, GLOBAL_MISC_CTRL, &before); - regmap_update_bits(pmx->map, GLOBAL_MISC_CTRL, grp->mask, + regmap_update_bits(pmx->map, GLOBAL_MISC_CTRL, + grp->mask | grp->value, grp->value); regmap_read(pmx->map, GLOBAL_MISC_CTRL, &after); -- 2.20.1