From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Jianlong Huang <jianlong.huang@starfivetech.com>,
Hal Feng <hal.feng@starfivetech.com>,
linux-riscv@lists.infradead.org, devicetree@vger.kernel.org,
linux-gpio@vger.kernel.org
Cc: Conor Dooley <conor@kernel.org>,
Palmer Dabbelt <palmer@dabbelt.com>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Linus Walleij <linus.walleij@linaro.org>,
Emil Renner Berthing <emil.renner.berthing@canonical.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/5] dt-bindings: pinctrl: Add StarFive JH7110 pinctrl definitions
Date: Tue, 29 Nov 2022 15:58:12 +0100 [thread overview]
Message-ID: <f52e31a5-a12a-b95e-b99c-1af8f8b41c3b@linaro.org> (raw)
In-Reply-To: <3db802d6-114f-097a-6c69-e7b40e4d2764@starfivetech.com>
On 29/11/2022 15:46, Jianlong Huang wrote:
> On Tue, 29 Nov 2022 08:49:49 +0100, Krzysztof Kozlowski wrote:
>> On 29/11/2022 02:47, Jianlong Huang wrote:
>>> On Mon, 28 Nov 2022 09:32:45 +0100, Krzysztof Kozlowski wrote:
>>>> On 28/11/2022 01:48, Jianlong Huang wrote:
>>>>
>>>>>>>> +/* aon_iomux doen */
>>>>>>>> +#define GPOEN_AON_PTC0_OE_N_4 2
>>>>>>>> +#define GPOEN_AON_PTC0_OE_N_5 3
>>>>>>>> +#define GPOEN_AON_PTC0_OE_N_6 4
>>>>>>>> +#define GPOEN_AON_PTC0_OE_N_7 5
>>>>>>>> +
>>>>>>>
>>>>>>> It looks like you add register constants to the bindings. Why? The
>>>>>>> bindings are not the place to represent hardware programming model. Not
>>>>>>> mentioning that there is no benefit in this.
>>>>>>
>>>>>> Also: this entire file should be dropped, but if it stays, you have to
>>>>>> name it matching bindings or compatible (vendor,device.h).
>>>>>
>>>>> Thanks your comments.
>>>>> These macros are used to configure pinctrl in dts, so the file should stay,
>>>>
>>>> Why they should stay? What's the reason? If it is not a constant used by
>>>> driver, then register values should not be placed in the bindings, so
>>>> drop it.
>>>>
>>>
>>> Thanks.
>>>
>>> These macros in binding header(example, DOUT, DOEN etc) will be used in DTS,
>>> and driver will parse the DT for pinctrl configuration.
>>>
>>> Example in dts:
>>> uart0_pins: uart0-0 {
>>> tx-pins {
>>> pinmux = <GPIOMUX(5, GPOUT_SYS_UART0_TX, GPOEN_ENABLE, GPI_NONE)>;
>>
>> This is usage in DTS and is not an argument to store register
>> addresses/offsets as bindings. What is the usage (of define, not value)
>> in the driver?
>>
>
> The existing implementation reuse the macros for DTS and driver.
Where in the driver? Grep gives zero results.
> Do you mean we need to separate the macros, one for DTS and one for driver usage?
No, if driver uses them it is fine. The problem is I cannot find it
anywhere.
> Or you have any better suggestion?
>
> These macros are the value of register, not register addresses/offsets,
> except for with prefix of GPI.
Still, values are not usually part of bindings.
>
> Drivers rarely reference macros directly, mostly parsing dts and writing them to registers.
So drivers do not use macros? Then there is no reason to store them in
bindings? What do you "bind" if there is no usage (and we do not talk
about DTS...)?
Best regards,
Krzysztof
next prev parent reply other threads:[~2022-11-29 14:58 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-18 1:11 [PATCH v2 0/5] Basic pinctrl support for StarFive JH7110 RISC-V SoC Hal Feng
2022-11-18 1:11 ` [PATCH v2 1/5] dt-bindings: pinctrl: Add StarFive JH7110 pinctrl definitions Hal Feng
2022-11-21 8:38 ` Krzysztof Kozlowski
2022-11-21 8:39 ` Krzysztof Kozlowski
2022-11-28 0:48 ` Jianlong Huang
2022-11-28 8:32 ` Krzysztof Kozlowski
2022-11-29 1:47 ` Jianlong Huang
2022-11-29 7:49 ` Krzysztof Kozlowski
2022-11-29 14:46 ` Jianlong Huang
2022-11-29 14:58 ` Krzysztof Kozlowski [this message]
2022-11-29 15:58 ` Jianlong Huang
2022-11-29 16:02 ` Krzysztof Kozlowski
2022-12-01 9:31 ` Jianlong Huang
2022-12-07 13:14 ` Emil Renner Berthing
2022-11-18 1:11 ` [PATCH v2 2/5] dt-bindings: pinctrl: Add StarFive JH7110 sys pinctrl Hal Feng
2022-11-18 3:56 ` Rob Herring
2022-11-18 6:56 ` Hal Feng
2022-11-21 8:43 ` Krzysztof Kozlowski
2022-11-28 1:04 ` Jianlong Huang
2022-12-07 13:18 ` Emil Renner Berthing
2022-12-09 3:13 ` Icenowy Zheng
2022-11-18 1:11 ` [PATCH v2 3/5] dt-bindings: pinctrl: Add StarFive JH7110 aon pinctrl Hal Feng
2022-11-21 8:44 ` Krzysztof Kozlowski
2022-11-28 1:15 ` Jianlong Huang
2022-12-07 13:21 ` Emil Renner Berthing
2022-11-18 1:11 ` [PATCH v2 4/5] pinctrl: starfive: Add StarFive JH7110 sys controller driver Hal Feng
2022-12-07 13:47 ` Emil Renner Berthing
2022-11-18 1:11 ` [PATCH v2 5/5] pinctrl: starfive: Add StarFive JH7110 aon " Hal Feng
2022-11-18 7:17 ` [PATCH v2 0/5] Basic pinctrl support for StarFive JH7110 RISC-V SoC Hal Feng
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=f52e31a5-a12a-b95e-b99c-1af8f8b41c3b@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=conor@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=emil.renner.berthing@canonical.com \
--cc=hal.feng@starfivetech.com \
--cc=jianlong.huang@starfivetech.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=robh+dt@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;
as well as URLs for NNTP newsgroup(s).