[PATCH] arm64: dts: rockchip: move rk3528 i2c+uart aliases to board files
Heiko Stübner
heiko at sntech.de
Tue May 13 10:25:31 PDT 2025
Hey Jonas,
Am Sonntag, 11. Mai 2025, 13:05:08 Mitteleuropäische Sommerzeit schrieb Jonas Karlman:
> On 2025-05-11 00:01, Heiko Stuebner wrote:
> > Even though they will be the same for all boards, i2c and uart aliases
> > are supposed to live in the individual board files, to not create
> > aliases for disabled nodes.
>
> This sounds like something tooling should be able to handle, e.g. U-Boot
> use fdtgrep to filter out nodes (and aliases) for the FDT used by early
> boot phases.
>
> Maybe DTC just need a feature to remove aliases to disabled nodes?
personally I don't see the issue with an i2c alias pointing to a disabled
i2c controller, but it does seem to violate some dt convention.
At least people got adamant this time about the aliases moving into the
board file [0].
> Also how should overlays handle aliases? Are all overlays suppose to add
> aliases for the add-on devices they may enable?
>
> And how should we handle boards with e.g. a 40-pin header where pins
> could be muxed to multiple functions. Is it the overlays responsibility
> to remove and replace aliases? E.g. if pins can mux between i2c1 and
> uart3, and i2c1 was enabled by default.
I guess we'll cross those bridge together with the bigger round of
dt-people when the first overlay appears ;-) .
Heiko
[0] https://lore.kernel.org/all/df6003e3-7fc3-4e50-a702-f0aa8d663dff@app.fastmail.com/
>
> Regards,
> Jonas
>
> >
> > So move the newly added aliases for rk3528 over to the Radxa E20C board,
> > which is the only rk3528 board right now.
> >
> > Fixes: d3a05f490d04 ("arm64: dts: rockchip: Add I2C controllers for RK3528")
> > Suggested-by: Arnd Bergmann <arnd at arndb.de>
> > Signed-off-by: Heiko Stuebner <heiko at sntech.de>
> > ---
> > .../boot/dts/rockchip/rk3528-radxa-e20c.dts | 2 ++
> > arch/arm64/boot/dts/rockchip/rk3528.dtsi | 16 ----------------
> > 2 files changed, 2 insertions(+), 16 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts b/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> > index 506d54337ece..9f6ccd9dd1f7 100644
> > --- a/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> > +++ b/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> > @@ -18,8 +18,10 @@ / {
> >
> > aliases {
> > ethernet0 = &gmac1;
> > + i2c1 = &i2c1;
> > mmc0 = &sdhci;
> > mmc1 = &sdmmc;
> > + serial0 = &uart0;
> > };
> >
> > chosen {
> > diff --git a/arch/arm64/boot/dts/rockchip/rk3528.dtsi b/arch/arm64/boot/dts/rockchip/rk3528.dtsi
> > index cd8ef389ccf3..b2724c969a76 100644
> > --- a/arch/arm64/boot/dts/rockchip/rk3528.dtsi
> > +++ b/arch/arm64/boot/dts/rockchip/rk3528.dtsi
> > @@ -24,22 +24,6 @@ aliases {
> > gpio2 = &gpio2;
> > gpio3 = &gpio3;
> > gpio4 = &gpio4;
> > - i2c0 = &i2c0;
> > - i2c1 = &i2c1;
> > - i2c2 = &i2c2;
> > - i2c3 = &i2c3;
> > - i2c4 = &i2c4;
> > - i2c5 = &i2c5;
> > - i2c6 = &i2c6;
> > - i2c7 = &i2c7;
> > - serial0 = &uart0;
> > - serial1 = &uart1;
> > - serial2 = &uart2;
> > - serial3 = &uart3;
> > - serial4 = &uart4;
> > - serial5 = &uart5;
> > - serial6 = &uart6;
> > - serial7 = &uart7;
> > };
> >
> > cpus {
>
>
More information about the Linux-rockchip
mailing list