[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <27bdcc35-a821-4dc4-a410-a939ef0d9af6@linaro.org>
Date: Tue, 5 Mar 2024 16:55:05 +0100
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
Cc: Emil Renner Berthing <kernel@...il.dk>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>, Paul Walmsley
<paul.walmsley@...ive.com>, Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>, devicetree@...r.kernel.org,
linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-clk <linux-clk@...r.kernel.org>
Subject: Re: [PATCH] riscv: dts: starfive: replace underscores in node names
On 05/03/2024 15:44, Geert Uytterhoeven wrote:
> Hi Krzysztof
>
> On Tue, Feb 13, 2024 at 3:48 PM Krzysztof Kozlowski
> <krzysztof.kozlowski@...aro.org> wrote:
>> Underscores should not be used in node names (dtc with W=2 warns about
>> them), so replace them with hyphens.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
>
> Thanks for your patch, which is now commit f03606470886e781 ("riscv:
> dts: starfive: replace underscores in node names") in v6.8-rc6.
>
> This causes e.g. BeagleV Starlight to hang during boot without any
> output. Booting with "earlycon" reveals:
>
> dw-apb-uart 12440000.serial: error -EINVAL: clock rate not defined
> dw-apb-uart: probe of 12440000.serial failed with error -22
>
> and indeed, p->uartclk = 0.
>
>> --- a/arch/riscv/boot/dts/starfive/jh7100.dtsi
>> +++ b/arch/riscv/boot/dts/starfive/jh7100.dtsi
>> @@ -113,28 +113,28 @@ cpu_crit {
>> };
>> };
>>
>> - osc_sys: osc_sys {
>> + osc_sys: osc-sys {
>> compatible = "fixed-clock";
>> #clock-cells = <0>;
>> /* This value must be overridden by the board */
>> clock-frequency = <0>;
>> };
>>
>> - osc_aud: osc_aud {
>> + osc_aud: osc-aud {
>> compatible = "fixed-clock";
>> #clock-cells = <0>;
>> /* This value must be overridden by the board */
>> clock-frequency = <0>;
>> };
>>
>> - gmac_rmii_ref: gmac_rmii_ref {
>> + gmac_rmii_ref: gmac-rmii-ref {
>> compatible = "fixed-clock";
>> #clock-cells = <0>;
>> /* Should be overridden by the board when needed */
>> clock-frequency = <0>;
>> };
>>
>> - gmac_gr_mii_rxclk: gmac_gr_mii_rxclk {
>> + gmac_gr_mii_rxclk: gmac-gr-mii-rxclk {
>> compatible = "fixed-clock";
>> #clock-cells = <0>;
>> /* Should be overridden by the board when needed */
>
> The clock driver relies on the clock names, which are (in the absence
> of clock-output-names properties) identical to the actual node names:
>
> drivers/clk/starfive/clk-starfive-jh7100.c: parents[i].fw_name = "osc_sys";
> drivers/clk/starfive/clk-starfive-jh7100.c: parents[i].fw_name = "osc_aud";
> drivers/clk/starfive/clk-starfive-jh7100.c: parents[i].fw_name =
> "gmac_rmii_ref";
> drivers/clk/starfive/clk-starfive-jh7100.c: parents[i].fw_name =
> "gmac_gr_mii_rxclk";
>
> Hence these clocks can no longer be found, and all children have a
> zero clock rate, causing the breakage.
Uh, sorry :( and thanks for the report. I'll add clock-output-names.
Best regards,
Krzysztof
Powered by blists - more mailing lists