From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 716C5C433EF for ; Tue, 8 Mar 2022 15:27:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347832AbiCHP2W (ORCPT ); Tue, 8 Mar 2022 10:28:22 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58584 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347815AbiCHP2R (ORCPT ); Tue, 8 Mar 2022 10:28:17 -0500 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 466E34DF65; Tue, 8 Mar 2022 07:27:20 -0800 (PST) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: kholk11) with ESMTPSA id 151A41F42FA1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1646753237; bh=YrSAmlhNuPnA20I9mMIbUEsD2fCEnGkr+ilv13TXmk0=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=aZym5RVsJPVDcroiovKdN5qUHaiQw37QTqDdx6ByCKcjne7NAEcAa855Qxs2Qy+2J 4Erm1YYwLasG3hnrcp8f521OYbDSlkLMryuCh8uHkckeFMY6NyhlLoN2F7oIfV3hF1 F0Uy5gnihs4lYPJcdqAKH+8CARbpTD5P9QOlevuoPwC9yeJdeYAkeCOKc7pvOvumzK 5ikJdOToe7gKT1qIplS7M21F4FyLLpViSLYOpz0otypIGMJx72aGO3r4kMAmt/I//K BXY7nM2LmyWl5W2v+kl1JWgPHo+Cx0ClCTosYQ3RArpsb2+ugZ0q/WNzX/GUiHTK7G eh6swMwlBtAOg== Message-ID: <1dacb30a-ee81-d6a9-d2a0-500385c57de4@collabora.com> Date: Tue, 8 Mar 2022 16:27:14 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.1 Subject: Re: [PATCH v2 02/11] pinctrl: mediatek: paris: Fix PIN_CONFIG_BIAS_* readback Content-Language: en-US To: Chen-Yu Tsai , Sean Wang , Linus Walleij , Matthias Brugger Cc: linux-mediatek@lists.infradead.org, linux-gpio@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org References: <20220308100956.2750295-1-wenst@chromium.org> <20220308100956.2750295-3-wenst@chromium.org> From: AngeloGioacchino Del Regno In-Reply-To: <20220308100956.2750295-3-wenst@chromium.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Il 08/03/22 11:09, Chen-Yu Tsai ha scritto: > When reading back pin bias settings, if the pin is not in the > corresponding bias state, the function should return -EINVAL. > > Fix this in the mediatek-paris pinctrl library so that the read back > state is not littered with bogus a "input bias disabled" combined with > "pull up" or "pull down" states. > > Fixes: 805250982bb5 ("pinctrl: mediatek: add pinctrl-paris that implements the vendor dt-bindings") > Signed-off-by: Chen-Yu Tsai Reviewed-by: AngeloGioacchino Del Regno > --- > drivers/pinctrl/mediatek/pinctrl-paris.c | 16 ++++++---------- > 1 file changed, 6 insertions(+), 10 deletions(-) > > diff --git a/drivers/pinctrl/mediatek/pinctrl-paris.c b/drivers/pinctrl/mediatek/pinctrl-paris.c > index f9f9110f2107..7037560ecda9 100644 > --- a/drivers/pinctrl/mediatek/pinctrl-paris.c > +++ b/drivers/pinctrl/mediatek/pinctrl-paris.c > @@ -96,20 +96,16 @@ static int mtk_pinconf_get(struct pinctrl_dev *pctldev, > err = hw->soc->bias_get_combo(hw, desc, &pullup, &ret); > if (err) > goto out; > + if (ret == MTK_PUPD_SET_R1R0_00) > + ret = MTK_DISABLE; > if (param == PIN_CONFIG_BIAS_DISABLE) { > - if (ret == MTK_PUPD_SET_R1R0_00) > - ret = MTK_DISABLE; > + if (ret != MTK_DISABLE) > + err = -EINVAL; > } else if (param == PIN_CONFIG_BIAS_PULL_UP) { > - /* When desire to get pull-up value, return > - * error if current setting is pull-down > - */ > - if (!pullup) > + if (!pullup || ret == MTK_DISABLE) > err = -EINVAL; > } else if (param == PIN_CONFIG_BIAS_PULL_DOWN) { > - /* When desire to get pull-down value, return > - * error if current setting is pull-up > - */ > - if (pullup) > + if (pullup || ret == MTK_DISABLE) > err = -EINVAL; > } > } else {