All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee@kernel.org>
To: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
Cc: mani@kernel.org, cristian.ciocaltea@gmail.com, wens@csie.org,
	tharvey@gateworks.com, cw00.choi@samsung.com,
	krzysztof.kozlowski@linaro.org, brgl@bgdev.pl,
	mazziesaccount@gmail.com, orsonzhai@gmail.com,
	baolin.wang@linux.alibaba.com, zhang.lyra@gmail.com,
	jernej.skrabec@gmail.com, samuel@sholland.org,
	linux-kernel@vger.kernel.org, linux-actions@lists.infradead.org,
	linux-arm-kernel@lists.infradead.org,
	linux-sunxi@lists.linux.dev
Subject: Re: [PATCH 15/18] mfd: stpmic1: Fix swapped mask/unmask in irq chip
Date: Wed, 16 Nov 2022 17:58:41 +0000	[thread overview]
Message-ID: <Y3Uk0eNhZBsfx6wn@google.com> (raw)
In-Reply-To: <20221112151835.39059-16-aidanmacdonald.0x0@gmail.com>

On Sat, 12 Nov 2022, Aidan MacDonald wrote:

> The usual behavior of mask registers is writing a '1' bit to
> disable (mask) an interrupt; similarly, writing a '1' bit to
> an unmask register enables (unmasks) an interrupt.
> 
> Due to a longstanding issue in regmap-irq, mask and unmask
> registers were inverted when both kinds of registers were
> present on the same chip, ie. regmap-irq actually wrote '1's
> to the mask register to enable an IRQ and '1's to the unmask
> register to disable an IRQ.
> 
> This was fixed by commit e8ffb12e7f06 ("regmap-irq: Fix
> inverted handling of unmask registers") but the fix is opt-in
> via mask_unmask_non_inverted = true because it requires manual
> changes for each affected driver. The new behavior will become
> the default once all drivers have been updated.
> 
> The STPMIC1 has a normal mask register with separate set and
> clear registers. The driver intends to use the set & clear
> registers with regmap-irq and has compensated for regmap-irq's
> inverted behavior, and should currently be working properly.
> Thus, swap mask_base and unmask_base, and opt in to the new
> non-inverted behavior.
> 
> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
> ---
>  drivers/mfd/stpmic1.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)

Applied, thanks.

-- 
Lee Jones [李琼斯]

WARNING: multiple messages have this Message-ID (diff)
From: Lee Jones <lee@kernel.org>
To: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
Cc: mani@kernel.org, cristian.ciocaltea@gmail.com, wens@csie.org,
	tharvey@gateworks.com, cw00.choi@samsung.com,
	krzysztof.kozlowski@linaro.org, brgl@bgdev.pl,
	mazziesaccount@gmail.com, orsonzhai@gmail.com,
	baolin.wang@linux.alibaba.com, zhang.lyra@gmail.com,
	jernej.skrabec@gmail.com, samuel@sholland.org,
	linux-kernel@vger.kernel.org, linux-actions@lists.infradead.org,
	linux-arm-kernel@lists.infradead.org,
	linux-sunxi@lists.linux.dev
Subject: Re: [PATCH 15/18] mfd: stpmic1: Fix swapped mask/unmask in irq chip
Date: Wed, 16 Nov 2022 17:58:41 +0000	[thread overview]
Message-ID: <Y3Uk0eNhZBsfx6wn@google.com> (raw)
In-Reply-To: <20221112151835.39059-16-aidanmacdonald.0x0@gmail.com>

On Sat, 12 Nov 2022, Aidan MacDonald wrote:

> The usual behavior of mask registers is writing a '1' bit to
> disable (mask) an interrupt; similarly, writing a '1' bit to
> an unmask register enables (unmasks) an interrupt.
> 
> Due to a longstanding issue in regmap-irq, mask and unmask
> registers were inverted when both kinds of registers were
> present on the same chip, ie. regmap-irq actually wrote '1's
> to the mask register to enable an IRQ and '1's to the unmask
> register to disable an IRQ.
> 
> This was fixed by commit e8ffb12e7f06 ("regmap-irq: Fix
> inverted handling of unmask registers") but the fix is opt-in
> via mask_unmask_non_inverted = true because it requires manual
> changes for each affected driver. The new behavior will become
> the default once all drivers have been updated.
> 
> The STPMIC1 has a normal mask register with separate set and
> clear registers. The driver intends to use the set & clear
> registers with regmap-irq and has compensated for regmap-irq's
> inverted behavior, and should currently be working properly.
> Thus, swap mask_base and unmask_base, and opt in to the new
> non-inverted behavior.
> 
> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
> ---
>  drivers/mfd/stpmic1.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)

Applied, thanks.

-- 
Lee Jones [李琼斯]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-11-16 17:58 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-12 15:18 [PATCH 00/18] mfd: Clean up deprecated regmap-irq functionality Aidan MacDonald
2022-11-12 15:18 ` Aidan MacDonald
2022-11-12 15:18 ` [PATCH 01/18] mfd: 88pm800: Replace irqchip mask_invert with unmask_base Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:32   ` Lee Jones
2022-11-16 17:32     ` Lee Jones
2022-11-12 15:18 ` [PATCH 02/18] mfd: atc260x: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:33   ` Lee Jones
2022-11-16 17:33     ` Lee Jones
2022-11-12 15:18 ` [PATCH 03/18] mfd: axp20x: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-13 18:42   ` Samuel Holland
2022-11-13 18:42     ` Samuel Holland
2022-11-16 17:33   ` Lee Jones
2022-11-16 17:33     ` Lee Jones
2022-11-12 15:18 ` [PATCH 04/18] mfd: gateworks-gsc: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:34   ` Lee Jones
2022-11-16 17:34     ` Lee Jones
2022-11-12 15:18 ` [PATCH 05/18] mfd: max14577: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14 10:21   ` Krzysztof Kozlowski
2022-11-14 10:21     ` Krzysztof Kozlowski
2022-11-14 13:34     ` Aidan MacDonald
2022-11-14 13:34       ` Aidan MacDonald
2022-11-14 14:02       ` Lee Jones
2022-11-14 14:02         ` Lee Jones
2022-11-16 17:34   ` Lee Jones
2022-11-16 17:34     ` Lee Jones
2022-11-12 15:18 ` [PATCH 06/18] mfd: max77650: Remove useless type_invert flag Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14 12:24   ` Bartosz Golaszewski
2022-11-14 12:24     ` Bartosz Golaszewski
2022-11-16 17:54   ` Lee Jones
2022-11-16 17:54     ` Lee Jones
2022-11-12 15:18 ` [PATCH 07/18] mfd: max77693: Replace irqchip mask_invert with unmask_base Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14 10:21   ` Krzysztof Kozlowski
2022-11-14 10:21     ` Krzysztof Kozlowski
2022-11-16 17:54   ` Lee Jones
2022-11-16 17:54     ` Lee Jones
2022-11-12 15:18 ` [PATCH 08/18] mfd: max77843: Drop useless mask_invert flag on irqchip Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14 10:21   ` Krzysztof Kozlowski
2022-11-14 10:21     ` Krzysztof Kozlowski
2022-11-16 17:55   ` Lee Jones
2022-11-16 17:55     ` Lee Jones
2022-11-12 15:18 ` [PATCH 09/18] mfd: rn5t618: Replace irqchip mask_invert with unmask_base Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:56   ` Lee Jones
2022-11-16 17:56     ` Lee Jones
2022-11-12 15:18 ` [PATCH 10/18] mfd: rohm-bd71828: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14  6:26   ` Matti Vaittinen
2022-11-14  6:26     ` Matti Vaittinen
2022-11-16 17:56   ` Lee Jones
2022-11-16 17:56     ` Lee Jones
2022-11-12 15:18 ` [PATCH 11/18] mfd: rohm-bd718x7: Drop useless mask_invert flag on irqchip Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14  6:27   ` Matti Vaittinen
2022-11-14  6:27     ` Matti Vaittinen
2022-11-16 17:56   ` Lee Jones
2022-11-16 17:56     ` Lee Jones
2022-11-12 15:18 ` [PATCH 12/18] mfd: rt5033: Replace irqchip mask_invert with unmask_base Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:57   ` Lee Jones
2022-11-16 17:57     ` Lee Jones
2022-11-12 15:18 ` [PATCH 13/18] mfd: rt5120: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:57   ` Lee Jones
2022-11-16 17:57     ` Lee Jones
2022-11-12 15:18 ` [PATCH 14/18] mfd: sprd-sc27xx-spi: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-14  6:34   ` Baolin Wang
2022-11-14  6:34     ` Baolin Wang
2022-11-16 17:58   ` Lee Jones
2022-11-16 17:58     ` Lee Jones
2022-11-12 15:18 ` [PATCH 15/18] mfd: stpmic1: Fix swapped mask/unmask in irq chip Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:58   ` Lee Jones [this message]
2022-11-16 17:58     ` Lee Jones
2022-11-12 15:18 ` [PATCH 16/18] mfd: sun4i-gpadc: Replace irqchip mask_invert with unmask_base Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-13 18:47   ` Samuel Holland
2022-11-13 18:47     ` Samuel Holland
2022-11-16 17:59   ` Lee Jones
2022-11-16 17:59     ` Lee Jones
2022-11-12 15:18 ` [PATCH 17/18] mfd: tps65090: " Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-16 17:59   ` Lee Jones
2022-11-16 17:59     ` Lee Jones
2022-11-12 15:18 ` [PATCH 18/18] mfd: wcd934x: Convert irq chip to config regs Aidan MacDonald
2022-11-12 15:18   ` Aidan MacDonald
2022-11-12 15:31   ` Aidan MacDonald
2022-11-12 15:31     ` Aidan MacDonald
2022-11-16 18:00   ` Lee Jones
2022-11-16 18:00     ` Lee Jones
2022-11-15 10:17 ` [PATCH 00/18] mfd: Clean up deprecated regmap-irq functionality Matti Vaittinen
2022-11-15 10:17   ` Matti Vaittinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y3Uk0eNhZBsfx6wn@google.com \
    --to=lee@kernel.org \
    --cc=aidanmacdonald.0x0@gmail.com \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=brgl@bgdev.pl \
    --cc=cristian.ciocaltea@gmail.com \
    --cc=cw00.choi@samsung.com \
    --cc=jernej.skrabec@gmail.com \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-actions@lists.infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sunxi@lists.linux.dev \
    --cc=mani@kernel.org \
    --cc=mazziesaccount@gmail.com \
    --cc=orsonzhai@gmail.com \
    --cc=samuel@sholland.org \
    --cc=tharvey@gateworks.com \
    --cc=wens@csie.org \
    --cc=zhang.lyra@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.