From: Detlev Casanova <detlev.casanova@collabora.com>
To: linux-kernel@vger.kernel.org, Johan Jonker <jbx6244@yandex.com>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Heiko Stuebner <heiko@sntech.de>,
Andi Shyti <andi.shyti@kernel.org>,
Jonathan Cameron <jic23@kernel.org>,
Lars-Peter Clausen <lars@metafoo.de>, Lee Jones <lee@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jirislaby@kernel.org>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
Chris Morgan <macromorgan@hotmail.com>,
Jonas Karlman <jonas@kwiboo.se>, Tim Lunn <tim@feathertop.org>,
Muhammed Efe Cetin <efectn@protonmail.com>,
Andy Yan <andyshrk@163.com>, Jagan Teki <jagan@edgeble.ai>,
Dragan Simic <dsimic@manjaro.org>,
Sebastian Reichel <sebastian.reichel@collabora.com>,
Shresth Prasad <shresthprasad7@gmail.com>,
Ondrej Jirman <megi@xff.cz>,
Weizhao Ouyang <weizhao.ouyang@arm.com>,
Alexey Charkov <alchark@gmail.com>,
Jimmy Hon <honyuenkwun@gmail.com>,
Finley Xiao <finley.xiao@rock-chips.com>,
Yifeng Zhao <yifeng.zhao@rock-chips.com>,
Elaine Zhang <zhangqing@rock-chips.com>,
Liang Chen <cl@rock-chips.com>,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-i2c@vger.kernel.org,
linux-iio@vger.kernel.org, linux-serial@vger.kernel.org,
kernel@collabora.com
Subject: Re: [PATCH 09/10] arm64: dts: rockchip: Add rk3576 SoC base DT
Date: Tue, 20 Aug 2024 15:22:30 -0400 [thread overview]
Message-ID: <3785092.MHq7AAxBmi@bootstrap> (raw)
In-Reply-To: <1d7ffd09-99b9-43d8-a2f5-6e5455b4e5a1@yandex.com>
Hi Johan,
On Tuesday, 20 August 2024 09:34:58 EDT Johan Jonker wrote:
> On 8/19/24 22:06, Detlev Casanova wrote:
> > Hi Johan,
> >
> > On Thursday, 15 August 2024 05:30:25 EDT Johan Jonker wrote:
> >> Some comments below. Whenever useful.
> >>
> >> On 8/2/24 23:45, Detlev Casanova wrote:
> >>> This device tree contains all devices necessary for booting from network
> >>> or SD Card.
> >>>
> >>> It supports CPU, CRU, PM domains, dma, interrupts, timers, UART and
> >>> SDHCI (everything necessary to boot Linux on this system on chip) as
> >>> well as Ethernet, I2C, SPI and OTP.
> >>>
> >>> Also add the necessary DT bindings for the SoC.
> >>>
> >>> Signed-off-by: Liang Chen <cl@rock-chips.com>
> >>> Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
> >>> Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
> >>> Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
> >>> [rebase, squash and reword commit message]
> >>> Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
> >>> ---
> >>
> >> [..]
> >>
> >>> diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi
> >>> b/arch/arm64/boot/dts/rockchip/rk3576.dtsi new file mode 100644
> >>> index 0000000000000..00c4d2a153ced
> >>> --- /dev/null
> >>> +++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi
> >>
> >> [..]
> >>
> >> For uart0..uart11:
> >>> +
> >>> + uart1: serial@27310000 {
> >>> + compatible = "rockchip,rk3576-uart", "snps,dw-apb-
> >
> > uart";
> >
> >>> + reg = <0x0 0x27310000 0x0 0x100>;
> >>>
> >>> + interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
> >>
> >> "interrupts" are sort just like other properties. A mix of sort styles
> >> exists, so check all nodes.
> >
> > Ok, so it should be sorted alphabetically with the following exceptions:
> > - 'compatible' and 'reg.*' on top
> > - "#.*" at the end, sorted
> > - "status" last.
> >
> > Is that right ?
>
> The dts-coding-style.rst does not say much about things with "#",
> so below a property they refer to or at the end looks nicer.
> No strict rule, but do it in a consistent style in file.
>
> Original comment by robh for things with "reg":
> "It makes more sense to keep reg-io-width together with reg."
> https://lore.kernel.org/all/20240131135955.GA966672-robh@kernel.org/
Ok, I'll fix the consistency in the file then, thanks for the clarification.
> >>> + clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
> >>> + clock-names = "baudclk", "apb_pclk";
> >>>
> >>> + reg-shift = <2>;
> >>> + reg-io-width = <4>;
> >>
> >> Move below "reg".
> >>
> >>> + dmas = <&dmac0 8>, <&dmac0 9>;
> >>> + pinctrl-names = "default";
> >>> + pinctrl-0 = <&uart1m0_xfer>;
> >>> + status = "disabled";
> >>> + };
> >>> +
> >>> + pmu: power-management@27380000 {
> >
> > [...]
> >
> >>> + #address-cells = <1>;
> >>> + #size-cells = <0>;
> >>> + clocks = <&cru ACLK_VOP>,
> >>> + <&cru HCLK_VOP>,
> >>> + <&cru HCLK_VOP_ROOT>;
> >>> + pm_qos = <&qos_vop_m0>,
> >>> + <&qos_vop_m1ro>;
> >>> +
> >>> + power-domain@RK3576_PD_USB {
> >>
> >> Since when is USB part of VOP?
> >> Recheck?
> >
> > The TRM doesn't tell me anything, but If I don't put it as a child of VOP,
> > it just hangs when the kernel tries to shut it down.
>
> Could the people from Rockchip disclose the USB PD location?
>
> > [...]
> >
> >>> +
> >>> + pinctrl: pinctrl {
> >>> + compatible = "rockchip,rk3576-pinctrl";
> >>> + rockchip,grf = <&ioc_grf>;
> >>> + rockchip,sys-grf = <&sys_grf>;
> >>> + #address-cells = <2>;
> >>> + #size-cells = <2>;
> >>> + ranges;
> >>> +
> >>>
> >>> + gpio0: gpio@27320000 {
> >>
> >> The use of gpio nodes as subnode of pinctrl is deprecated.
> >>
> >> patternProperties:
> >> "gpio@[0-9a-f]+$":
> >> type: object
> >>
> >> $ref: /schemas/gpio/rockchip,gpio-bank.yaml#
> >> deprecated: true
> >>
> >> unevaluatedProperties: false
> >
> > I tried putting the gpio nodes out of the pinctrl node, they should work
> > because they already have a gpio-ranges field.
> > But unfortunately, that seem to break the pinctrl driver which hangs at
> > some point. Maybe some adaptations are needed to support this, or am I
> > missing something ?
>
> The aliases that we added to the DT files are a work around to prevent
> damage when we moved to generic gpio node names. There just happened to be
> some code for it in the driver...
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/dri
> vers/gpio/gpio-rockchip.c#n719
Just above that, it tries to get the pinctrl_dev from the parent node. So the
rockchip,gpio-bank nodes have to be children of the pinctrl node or the gpio
driver will just return -EPROBE_DEFER.
> Comment by robh:
> "GPIO shouldn't really have an alias either IMO."
> https://lore.kernel.org/linux-arm-kernel/20230118153236.GA33699-robh@kernel.
> org/
>
> Mainline Rockchip gpio driver is not so to the standard.
> The file gpio-rockchip.c currently does nothing with "gpio-ranges" vs. bank
> and node relation. My simple patch was acked, but never applied. There's no
> public maintainer response of what to improve. Guess, probably something
> more complicated idiot prove "gpio-ranges" parsing/bank linking is needed?
> https://lore.kernel.org/linux-arm-kernel/890be9a0-8e82-a8f4-bc15-d5d1597343
> c2@gmail.com/
Indeed, the driver could use the gpio-ranges to determine the node's bank
number. Currently it uses the aliases or falls back to the order of parsing
nodes.
> I leave this subject up to the experts to find out what is needed to
> improve. Don't ask me.
My opinion on this is that the rockchip driver needs to be adapted if we want
the gpio nodes out of the pinctrl. I'm willing to have a look at this, but I
don't think it is in the scope for this patch set and don't think it should be
a blocker.
> Johan
>
Regards,
Detlev.
next prev parent reply other threads:[~2024-08-20 19:24 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-02 21:45 [PATCH 00/10] Add device tree for ArmSoM Sige 5 board Detlev Casanova
2024-08-02 21:45 ` [PATCH 01/10] dt-bindings: arm: rockchip: Add ArmSoM Sige 5 Detlev Casanova
2024-08-04 9:46 ` Krzysztof Kozlowski
2024-08-02 21:45 ` [PATCH 02/10] dt-bindings: arm: rockchip: Add rk576 compatible string to pmu.yaml Detlev Casanova
2024-08-04 9:47 ` Krzysztof Kozlowski
2024-08-05 19:47 ` Rob Herring
2024-08-02 21:45 ` [PATCH 03/10] dt-bindings: i2c: i2c-rk3x: Add rk3576 compatible Detlev Casanova
2024-08-04 9:47 ` Krzysztof Kozlowski
2024-08-09 12:28 ` Heiko Stübner
2024-08-02 21:45 ` [PATCH 04/10] dt-bindings: iio: adc: Add rockchip,rk3576-saradc string Detlev Casanova
2024-08-04 9:47 ` Krzysztof Kozlowski
2024-08-10 9:38 ` Jonathan Cameron
2024-08-09 12:28 ` Heiko Stübner
2024-08-02 21:45 ` [PATCH 05/10] dt-bindings: mfd: syscon: Add rk3576 QoS register compatible Detlev Casanova
2024-08-04 9:48 ` Krzysztof Kozlowski
2024-08-09 12:35 ` Heiko Stübner
2024-08-02 21:45 ` [PATCH 06/10] dt-bindings: serial: snps-dw-apb-uart: Add Rockchip RK3576 Detlev Casanova
2024-08-04 9:48 ` Krzysztof Kozlowski
2024-08-09 12:30 ` Heiko Stübner
2024-08-02 21:45 ` [PATCH 07/10] dt-bindings: soc: rockchip: Add rk3576 syscon compatibles Detlev Casanova
2024-08-04 9:49 ` Krzysztof Kozlowski
2024-08-02 21:45 ` [PATCH 08/10] dt-bindings: timer: rockchip: Add rk3576 compatible Detlev Casanova
2024-08-04 9:49 ` Krzysztof Kozlowski
2024-08-09 12:31 ` Heiko Stübner
2024-08-19 8:23 ` Daniel Lezcano
2024-08-02 21:45 ` [PATCH 09/10] arm64: dts: rockchip: Add rk3576 SoC base DT Detlev Casanova
2024-08-09 2:28 ` cl
2024-08-12 15:09 ` Rob Herring (Arm)
2024-08-14 15:31 ` Heiko Stübner
2024-08-19 17:59 ` Detlev Casanova
2024-08-19 21:26 ` Heiko Stübner
2024-08-15 9:30 ` Johan Jonker
2024-08-19 20:06 ` Detlev Casanova
2024-08-20 13:34 ` Johan Jonker
2024-08-20 19:22 ` Detlev Casanova [this message]
2024-08-17 3:11 ` Dragan Simic
2024-08-02 21:45 ` [PATCH 10/10] arm64: dts: rockchip: Add rk3576-armsom-sige5 board Detlev Casanova
2024-08-04 9:51 ` Krzysztof Kozlowski
2024-08-05 15:00 ` [PATCH 00/10] Add device tree for ArmSoM Sige 5 board Rob Herring (Arm)
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=3785092.MHq7AAxBmi@bootstrap \
--to=detlev.casanova@collabora.com \
--cc=alchark@gmail.com \
--cc=andi.shyti@kernel.org \
--cc=andyshrk@163.com \
--cc=cl@rock-chips.com \
--cc=conor+dt@kernel.org \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=dsimic@manjaro.org \
--cc=efectn@protonmail.com \
--cc=finley.xiao@rock-chips.com \
--cc=gregkh@linuxfoundation.org \
--cc=heiko@sntech.de \
--cc=honyuenkwun@gmail.com \
--cc=jagan@edgeble.ai \
--cc=jbx6244@yandex.com \
--cc=jic23@kernel.org \
--cc=jirislaby@kernel.org \
--cc=jonas@kwiboo.se \
--cc=kernel@collabora.com \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=lee@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-serial@vger.kernel.org \
--cc=macromorgan@hotmail.com \
--cc=megi@xff.cz \
--cc=robh@kernel.org \
--cc=sebastian.reichel@collabora.com \
--cc=shresthprasad7@gmail.com \
--cc=tglx@linutronix.de \
--cc=tim@feathertop.org \
--cc=weizhao.ouyang@arm.com \
--cc=yifeng.zhao@rock-chips.com \
--cc=zhangqing@rock-chips.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 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).