Re: [PATCH 1/2] arm64: dts: amlogic: t7: use the real UART pclk
Lucas Tanure <[email protected]>
| Newsgroups | org.infradead.lists.linux-amlogic,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On 19/08/2026 03:39, Xianwei Zhao wrote:
> Hi Lucas,
>
> On 2026/8/19 03:11, Lucas Tanure wrote:
>> uart_a lists the 24MHz crystal for all three of its clocks, because
>> the T7 clock controller driver did not exist when these boards were
>> added.
>>
>> That leaves the real UART bus clock without a user, so the kernel
>> turns it off when it disables unused clocks at the end of boot, and
>> the board hangs.
>>
>> Point uart_a at the real clocks, the way meson-s4.dtsi does, and drop
>> the placeholders from the two board files.
>>
>> Fixes: 4fef056588f5 ("arm64: dts: amlogic-t7-a311d2-khadas-vim4: add
>> initial device-tree")
>> Fixes: 6f048cc7a635 ("arm64: dts: add board AN400")
>> Signed-off-by: Lucas Tanure<[email protected]>
>> Assisted-by: Claude:claude-fable-5
>> ---
>> arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts | 2 --
>> arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts | 2 --
>> arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi | 4 ++++
>> 3 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts
>> b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts
>> index cab2ee9ea0d3..dcbcd08a78b9 100644
>> --- a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts
>> +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-an400.dts
>> @@ -33,7 +33,5 @@ xtal: xtal-clk {
>> };
>>
>> &uart_a {
>> - clocks = <&xtal>, <&xtal>,
>> <&xtal>;
>> - clock-names = "xtal", "pclk", "baud";
>> status = "okay";
>> };
>> diff --git
>> a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts
>> b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts
>> index c41525a34b72..677069e58f30 100644
>> --- a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts
>> +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts
>> @@ -266,6 +266,4 @@ &sd_emmc_c {
>>
>> &uart_a {
>> status = "okay";
>> - clocks = <&xtal>, <&xtal>,
>> <&xtal>;
>> - clock-names = "xtal", "pclk", "baud";
>> };
>> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi
>> b/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi
>> index cc371fcd1896..7847582e77ed 100644
>> --- a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi
>> +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi
>> @@ -587,6 +587,10 @@ uart_a: serial@78000 {
>> compatible = "amlogic,t7-uart",
>> "amlogic,meson-s4-uart";
>> reg = <0x0 0x78000 0x0 0x18>;
>> interrupts = <GIC_SPI 168
>> IRQ_TYPE_EDGE_RISING>;
>> + clocks = <&xtal>,
>> + <&clkc_periphs
>> CLKID_SYS_UART_A>,
>> + <&xtal>;
>> + clock-names = "xtal", "pclk", "baud";
>> status = "disabled";
>> };
>
> I agree with moving the UART clock configuration to the DTSI file.
> However, it seems a little odd to keep the XTAL clock definition in the
> DTS, as the alias may not be consistent across different boards, which
> could result in compilation errors. Could we move the XTAL clock
> definition to the DTSI as well, similar to other Amlogic SoCs?
I think keeping it in the board files is actually better here, as the
crystal (xtal) physically belongs to the board rather than the SoC. To
keep things clean without moving xtal into amlogic-t7.dtsi, I've updated
v2 to modify only the board DTS files.
_______________________________________________
linux-amlogic mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-amlogic