From: "Yu-Chun Lin [林祐君]" <eleanor.lin@realtek.com>
To: Michael Walle <mwalle@kernel.org>,
Andy Shevchenko <andriy.shevchenko@intel.com>
Cc: "Michael.Hennerich@analog.com" <Michael.Hennerich@analog.com>,
"afaerber@suse.com" <afaerber@suse.com>,
"andy@kernel.org" <andy@kernel.org>,
"brgl@kernel.org" <brgl@kernel.org>,
"conor+dt@kernel.org" <conor+dt@kernel.org>,
"CY_Huang[黃鉦晏]" <cy.huang@realtek.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"dlechner@baylibre.com" <dlechner@baylibre.com>,
"James Tai [戴志峰]" <james.tai@realtek.com>,
"jic23@kernel.org" <jic23@kernel.org>,
"krzk+dt@kernel.org" <krzk+dt@kernel.org>,
"lars@metafoo.de" <lars@metafoo.de>,
"linus.walleij@linaro.org" <linus.walleij@linaro.org>,
"linusw@kernel.org" <linusw@kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>,
"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-realtek-soc@lists.infradead.org"
<linux-realtek-soc@lists.infradead.org>,
"mathieu.dubois-briand@bootlin.com"
<mathieu.dubois-briand@bootlin.com>,
"nuno.sa@analog.com" <nuno.sa@analog.com>,
"robh@kernel.org" <robh@kernel.org>,
"Stanley Chang[昌育德]" <stanley_chang@realtek.com>,
"TY_Chang[張子逸]" <tychang@realtek.com>,
"wbg@kernel.org" <wbg@kernel.org>
Subject: RE: [PATCH v3 3/7] gpio: regmap: Add gpio_regmap_operation and write-enable support
Date: Thu, 16 Jul 2026 12:08:58 +0000 [thread overview]
Message-ID: <b8eb4f0680b6424097d4b8049608b27b@realtek.com> (raw)
In-Reply-To: <DJZYVQSJL0MO.143E5QFQRAXVV@kernel.org>
> Hi,
>
> >> int (*value_xlate)(struct gpio_chip *chip, enum gpio_regmap_op op,
> >> unsigned int offset, unsigned int reg, unsigned int mask, unsigned
> >> int *value)
> >>
> >> mask shouldn't need to be a pointer as you don't have to modify it, do you?
> >> reg_mask_xlate, already does that.
> >>
> >
> > Actually, I do need to modify the 'mask', so it still needs to be
> > passed as a pointer to this callback.
> >
> > Since the WREN enable bit and the data bit are located at different
> > bit positions, the final 'mask' used in write API must be expanded to
> > include both the WREN mask and the data mask.
>
> You could still return both bits in the first xlate, no?
>
> But yeah, that might be a bit asymmetrical and not intuitive. So changing the
> mask (again) with the value sounds ok to me.
>
> -michael
>
Thanks for agreeing. Just to clarify, returning both bits in the first xlate
actually wouldn't work functionally.
If 'mask' includes both the data and WREN masks, clearing the GPIO will
inadvertently clear the WREN bit in 'val' as well.
ret = gpio->reg_mask_xlate(..., &mask);
/* If output is 0, WREN bit in val becomes 0*/
val = output ? mask : 0;
Since the WREN bit must always be '1' for the hardware to update, we must
append it after 'val' is determined.
Best Regards,
Yu-Chun
next prev parent reply other threads:[~2026-07-16 12:09 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-12 3:33 [PATCH v3 0/7] gpio: realtek: Add support for Realtek DHC RTD1625 Yu-Chun Lin
2026-05-12 3:33 ` [PATCH v3 1/7] gpio: Replace "default y" with "default ARCH_REALTEK" in Kconfig Yu-Chun Lin
2026-05-12 3:33 ` [PATCH v3 2/7] gpio: regmap: add gpio_regmap_get_gpiochip() accessor Yu-Chun Lin
2026-05-12 11:20 ` Andy Shevchenko
2026-05-25 12:04 ` Yu-Chun Lin [林祐君]
2026-06-03 0:34 ` Andy Shevchenko
2026-06-08 14:10 ` Bartosz Golaszewski
2026-06-08 14:41 ` Michael Walle
2026-06-17 8:36 ` Yu-Chun Lin [林祐君]
2026-06-17 8:44 ` Michael Walle
2026-06-17 9:54 ` Yu-Chun Lin [林祐君]
2026-06-17 11:19 ` Michael Walle
2026-06-19 21:08 ` Linus Walleij
2026-06-22 10:35 ` Andy Shevchenko
2026-06-30 13:21 ` Linus Walleij
2026-07-01 8:44 ` Michael Walle
2026-07-01 10:01 ` Andy Shevchenko
2026-07-01 10:55 ` Andy Shevchenko
2026-07-01 11:38 ` Andy Shevchenko
2026-07-01 11:42 ` Michael Walle
2026-07-01 12:03 ` Andy Shevchenko
2026-07-01 11:38 ` Michael Walle
2026-07-01 12:08 ` Andy Shevchenko
2026-05-12 3:33 ` [PATCH v3 3/7] gpio: regmap: Add gpio_regmap_operation and write-enable support Yu-Chun Lin
2026-05-12 11:26 ` Andy Shevchenko
2026-05-12 14:37 ` Jonathan Cameron
2026-07-09 17:21 ` Yu-Chun Lin [林祐君]
2026-07-16 6:26 ` Yu-Chun Lin
2026-07-16 7:15 ` Michael Walle
2026-07-16 8:27 ` Andy Shevchenko
2026-07-16 9:08 ` Michael Walle
2026-07-16 9:40 ` Andy Shevchenko
2026-07-16 10:47 ` Yu-Chun Lin [林祐君]
2026-07-16 11:03 ` Michael Walle
2026-07-16 11:21 ` Yu-Chun Lin [林祐君]
2026-07-16 11:42 ` Michael Walle
2026-07-16 12:08 ` Yu-Chun Lin [林祐君] [this message]
2026-07-16 10:55 ` Michael Walle
2026-05-13 7:40 ` Linus Walleij
2026-05-12 3:33 ` [PATCH v3 4/7] gpio: regmap: Add set_config callback Yu-Chun Lin
2026-05-12 18:12 ` Andy Shevchenko
2026-05-12 3:33 ` [PATCH v3 5/7] dt-bindings: gpio: realtek: Add realtek,rtd1625-gpio Yu-Chun Lin
2026-05-12 3:33 ` [PATCH v3 6/7] gpio: realtek: Add driver for Realtek DHC RTD1625 SoC Yu-Chun Lin
2026-05-12 18:50 ` Andy Shevchenko
2026-05-12 3:33 ` [PATCH v3 7/7] arm64: dts: realtek: Add GPIO support for RTD1625 Yu-Chun Lin
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=b8eb4f0680b6424097d4b8049608b27b@realtek.com \
--to=eleanor.lin@realtek.com \
--cc=Michael.Hennerich@analog.com \
--cc=afaerber@suse.com \
--cc=andriy.shevchenko@intel.com \
--cc=andy@kernel.org \
--cc=brgl@kernel.org \
--cc=conor+dt@kernel.org \
--cc=cy.huang@realtek.com \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=james.tai@realtek.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linus.walleij@linaro.org \
--cc=linusw@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-realtek-soc@lists.infradead.org \
--cc=mathieu.dubois-briand@bootlin.com \
--cc=mwalle@kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=stanley_chang@realtek.com \
--cc=tychang@realtek.com \
--cc=wbg@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox