From: "Arnd Bergmann" <arnd@arndb.de>
To: "Ryan Chen" <ryan_chen@aspeedtech.com>,
BMC-SW <BMC-SW@aspeedtech.com>, "Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Joel Stanley" <joel@jms.id.au>,
"Andrew Jeffery" <andrew@codeconstruct.com.au>,
"Jeremy Kerr" <jk@codeconstruct.com.au>,
"Lee Jones" <lee@kernel.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Will Deacon" <will@kernel.org>,
"Bjorn Andersson" <bjorn.andersson@oss.qualcomm.com>,
"Geert Uytterhoeven" <geert@linux-m68k.org>,
"Nishanth Menon" <nm@ti.com>,
"Nícolas F. R. A. Prado" <nfraprado@collabora.com>,
"Taniya Das" <quic_tdas@quicinc.com>,
"Lad, Prabhakar" <prabhakar.mahadev-lad.rj@bp.renesas.com>,
"Kuninori Morimoto" <kuninori.morimoto.gx@renesas.com>,
"Eric Biggers" <ebiggers@kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-aspeed@lists.ozlabs.org" <linux-aspeed@lists.ozlabs.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v6 4/6] arm64: dts: aspeed: Add initial AST2700 SoC device tree
Date: Thu, 23 Oct 2025 22:11:06 +0200 [thread overview]
Message-ID: <6a97fbb4-19c2-4ffa-9c73-26aea02c27e4@app.fastmail.com> (raw)
In-Reply-To: <TY2PPF5CB9A1BE626A2F0F6307461D8F64BF2F0A@TY2PPF5CB9A1BE6.apcprd06.prod.outlook.com>
On Thu, Oct 23, 2025, at 09:37, Ryan Chen wrote:
>
>> > + aliases {
>> > + serial0 = &uart0;
>> > + serial1 = &uart1;
>> > + serial2 = &uart2;
>> > + serial3 = &uart3;
>> > + serial4 = &uart4;
>> > + serial5 = &uart5;
>> > + serial6 = &uart6;
>> > + serial7 = &uart7;
>> > + serial8 = &uart8;
>> > + serial9 = &uart9;
>> > + serial10 = &uart10;
>> > + serial11 = &uart11;
>> > + serial12 = &uart12;
>> > + serial13 = &uart13;
>> > + serial14 = &uart14;
>> > + };
>>
>> This looks like you just list all the uarts that are present on the chip, which is
>> not how the aliases are meant to be used. Move this block into the board
>> specific file and only list the ones that are actually enabled on that particular
>> board.
>>
>> In particular, the alias names are meant to be local to the board and don't
>> usually correspond to the numbering inside of the chip. In the defconfig, we
>> currently set CONFIG_SERIAL_8250_NR_UARTS=8, which is enough for any
>> board we support so far, but that means only the first
>> 8 aliases in the list will actually work.
>
> Understood. I'll move the aliases block from the SoC dtsi into the
> EVB board dts. For the EVB, UART12 is used as the default console,
> and the board labels match the SoC numbering, so I plan to keep:
>
> Does that look acceptable?
> ast2700-evb.dts
> aliases {
> serial0 = &uart0;
> serial1 = &uart1;
> serial2 = &uart2;
> serial3 = &uart3;
> serial4 = &uart4;
> serial5 = &uart5;
> serial6 = &uart6;
> serial7 = &uart7;
> serial8 = &uart8;
> serial9 = &uart9;
> serial10 = &uart10;
> serial11 = &uart11;
> serial12 = &uart12;
> serial13 = &uart13;
> serial14 = &uart14;
> }
I think this would be broken for the defconfig if the consol is
on serial12. I would recommend using serial0 as the console, like
aliases {
serial0 = &uart12;
}
in this case. If additional uarts are enabled, add those as
further aliases.
>>
>> > + soc1: soc@14000000 {
>> > + compatible = "simple-bus";
>> > + #address-cells = <2>;
>> > + #size-cells = <2>;
>> > + ranges = <0x0 0x0 0x0 0x14000000 0x0 0x10000000>;
>>
>> This probably needs some explanation: why are there two 'soc@...'
>> devices? Is this literally two chips in the system, or are you describing two
>> buses inside of the same SoC?
>
> The AST2700 is two soc connection with a property bus.
> Sharing some decode registers. Each have it own ahb bus.
I don't understand your explanation,
>>
>> > +
>> > + mdio0: mdio@14040000 {
>> > + compatible = "aspeed,ast2600-mdio";
>> > + reg = <0 0x14040000 0 0x8>;
>> > + resets = <&syscon1 SCU1_RESET_MII>;
>> > + status = "disabled";
>> > + };
>>
>> I see that you use the old compatible="aspeed,ast2600-mdio" string exclusively
>> here. While this works, I would suggest you list both a more specific
>> "aspeed,ast2700-mdio" string to refer to the version in this chip as well as the
>> fallback "aspeed,ast2600-mdio" string as the generic identifier.
>>
>> The binding obviously has to describe both in that case, but the driver does not
>> need to be modified as long as both behave the same way.
>
> Thanks, will submit ast2700-mdio.
> Question, should I add in here patch series?
> Or go for another patch thread?
Since there is no corresponding driver change, I would keep the binding
change as a patch in this series.
>> > +
>> > + syscon1: syscon@14c02000 {
>> > + compatible = "aspeed,ast2700-scu1", "syscon", "simple-mfd";
>> > + reg = <0x0 0x14c02000 0x0 0x1000>;
>> > + ranges = <0x0 0x0 0x14c02000 0x1000>;
>> > + #address-cells = <1>;
>> > + #size-cells = <1>;
>> > + #clock-cells = <1>;
>> > + #reset-cells = <1>;
>> > +
>> > + scu_ic2: interrupt-controller@100 {
>> > + compatible = "aspeed,ast2700-scu-ic2";
>> > + reg = <0x100 0x8>;
>> > + #interrupt-cells = <1>;
>> > + interrupts-extended = <&intc1_5 0>;
>> > + interrupt-controller;
>> > + };
>> > +
>> > + scu_ic3: interrupt-controller@108 {
>> > + compatible = "aspeed,ast2700-scu-ic3";
>> > + reg = <0x108 0x8>;
>> > + #interrupt-cells = <1>;
>> > + interrupts-extended = <&intc1_5 26>;
>> > + interrupt-controller;
>> > + };
>>
>> This looks a bit silly to be honest: you have two separate devices that each have
>> a single register and a different compatible string?
>
> Yes, it have difference register define in each scu-ic#. That is
> compatible with design.
> https://github.com/torvalds/linux/blob/master/drivers/irqchip/irq-aspeed-scu-ic.c#L45-L48
Right, if the driver already has this design, it does make sense to
not change it for the new generation. For a newly added driver I would
probably do it differently.
>> Also you claim to be compatible with "syscon" but nothing actually refers to the
>> syscon node in that form?
>
> There is another submit ongoing in pinctrl which will use syscon.
> https://lwn.net/ml/all/20250829073030.2749482-2-billy_tsai@aspeedtech.com/
>
> Could I keep it? or I should remove it?
The version of the driver you are linking does not appear to use
syscon, maybe this is an artifact from a previous version?
If so, you can drop it. On the other hand, this does seem to
be a classic syscon device and keeping it marked that way is not
harmful, just redundant if you actually use the more specific
compatible string.
Arnd
next prev parent reply other threads:[~2025-10-23 20:11 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-22 7:05 [PATCH v6 0/6] Introduce ASPEED AST2700 BMC SoC Ryan Chen
2025-10-22 7:05 ` [PATCH v6 1/6] dt-bindings: arm: aspeed: Add AST2700 board compatible Ryan Chen
2025-10-22 7:05 ` [PATCH v6 2/6] arm64: Kconfig: Add Aspeed SoC family (ast27XX) Kconfig support Ryan Chen
2025-10-22 7:05 ` [PATCH v6 3/6] dt-bindings: mfd: aspeed,ast2x00-scu: allow #size-cells range Ryan Chen
2025-10-22 8:07 ` Krzysztof Kozlowski
2025-10-22 8:08 ` Krzysztof Kozlowski
2025-10-22 8:28 ` Ryan Chen
2025-10-22 7:05 ` [PATCH v6 4/6] arm64: dts: aspeed: Add initial AST2700 SoC device tree Ryan Chen
2025-10-22 21:29 ` Arnd Bergmann
2025-10-23 7:37 ` Ryan Chen
2025-10-23 18:28 ` Andrew Lunn
2025-10-23 20:11 ` Arnd Bergmann [this message]
2025-10-24 3:54 ` Ryan Chen
2025-10-24 7:02 ` Arnd Bergmann
2025-10-24 12:28 ` Andrew Lunn
2025-10-25 3:08 ` Ryan Chen
2025-10-27 1:43 ` Andrew Lunn
2025-10-27 2:42 ` Ryan Chen
2025-10-27 12:01 ` Andrew Lunn
2025-10-27 12:53 ` Geert Uytterhoeven
2025-10-29 2:38 ` Ryan Chen
2025-10-29 9:52 ` Geert Uytterhoeven
2025-10-29 2:31 ` Ryan Chen
2025-10-29 7:26 ` Arnd Bergmann
2025-10-29 9:50 ` Geert Uytterhoeven
2025-10-30 2:30 ` Ryan Chen
2025-10-30 9:19 ` Arnd Bergmann
2025-11-05 0:35 ` Ryan Chen
2025-10-24 7:56 ` Geert Uytterhoeven
2025-10-25 3:15 ` Ryan Chen
2025-10-22 7:05 ` [PATCH v6 5/6] arm64: dts: aspeed: Add AST2700 Evaluation Board Ryan Chen
2025-10-22 7:05 ` [PATCH v6 6/6] arm64: configs: Update defconfig for AST2700 platform support Ryan Chen
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=6a97fbb4-19c2-4ffa-9c73-26aea02c27e4@app.fastmail.com \
--to=arnd@arndb.de \
--cc=BMC-SW@aspeedtech.com \
--cc=andrew@codeconstruct.com.au \
--cc=bjorn.andersson@oss.qualcomm.com \
--cc=catalin.marinas@arm.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=ebiggers@kernel.org \
--cc=geert@linux-m68k.org \
--cc=jk@codeconstruct.com.au \
--cc=joel@jms.id.au \
--cc=krzk+dt@kernel.org \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=lee@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nfraprado@collabora.com \
--cc=nm@ti.com \
--cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
--cc=quic_tdas@quicinc.com \
--cc=robh@kernel.org \
--cc=ryan_chen@aspeedtech.com \
--cc=will@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
all inboxes | Powered by JetHome®