Change the clock property in the T-Head TH1520 mmc controller nodes to a
real clock provided by the AP_SUBSYS clock driver.
Signed-off-by: Drew Fustini <dfustini@tenstorrent.com>
---
arch/riscv/boot/dts/thead/th1520.dtsi | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/riscv/boot/dts/thead/th1520.dtsi b/arch/riscv/boot/dts/thead/th1520.dtsi
index 6285cdf91bd6..a6f51ec9fb55 100644
--- a/arch/riscv/boot/dts/thead/th1520.dtsi
+++ b/arch/riscv/boot/dts/thead/th1520.dtsi
@@ -324,7 +324,7 @@ emmc: mmc@ffe7080000 {
compatible = "thead,th1520-dwcmshc";
reg = <0xff 0xe7080000 0x0 0x10000>;
interrupts = <62 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&sdhci_clk>;
+ clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
status = "disabled";
};
@@ -333,7 +333,7 @@ sdio0: mmc@ffe7090000 {
compatible = "thead,th1520-dwcmshc";
reg = <0xff 0xe7090000 0x0 0x10000>;
interrupts = <64 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&sdhci_clk>;
+ clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
status = "disabled";
};
@@ -342,7 +342,7 @@ sdio1: mmc@ffe70a0000 {
compatible = "thead,th1520-dwcmshc";
reg = <0xff 0xe70a0000 0x0 0x10000>;
interrupts = <71 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&sdhci_clk>;
+ clocks = <&clk CLK_EMMC_SDIO>;
clock-names = "core";
status = "disabled";
};
--
2.34.1
On 4/27/24 2:10 AM, Drew Fustini wrote:
> Change the clock property in the T-Head TH1520 mmc controller nodes to a
> real clock provided by the AP_SUBSYS clock driver.
>
> Signed-off-by: Drew Fustini <dfustini@tenstorrent.com>
I experienced that, when the I2C clocks were correctly configured, the
UART stopped working, likely due to their dependence on FOUTPOSTDIV.
Setting up the UART correctly, for instance:
uartx: serial@xxxxxxxxxx {
...
clocks = <&clk CLK_UART_SCLK>, <&clk
CLK_UARTX_PCLK>;
clock-names = "baudclk", "apb_pclk";
...
status = "disabled";
};
resolved the issue.
As this would be mandatory in the future, I suggest that you configure
all the nodes currently set to a fixed clock, not just the MMC controller.
Thomas
On Thu, May 02, 2024 at 09:47:43AM +0200, Thomas Bonnefille wrote:
>
>
> On 4/27/24 2:10 AM, Drew Fustini wrote:
> > Change the clock property in the T-Head TH1520 mmc controller nodes to a
> > real clock provided by the AP_SUBSYS clock driver.
> >
> > Signed-off-by: Drew Fustini <dfustini@tenstorrent.com>
>
> I experienced that, when the I2C clocks were correctly configured, the UART
> stopped working, likely due to their dependence on FOUTPOSTDIV.
> Setting up the UART correctly, for instance:
>
> uartx: serial@xxxxxxxxxx {
> ...
> clocks = <&clk CLK_UART_SCLK>, <&clk
> CLK_UARTX_PCLK>;
> clock-names = "baudclk", "apb_pclk";
> ...
> status = "disabled";
> };
> resolved the issue.
> As this would be mandatory in the future, I suggest that you configure all
> the nodes currently set to a fixed clock, not just the MMC controller.
Thank you for testing and discovering this issue.
Could you post your device tree so I can be sure I'm testing the same as
what you have?
Drew
On 5/2/24 5:53 PM, Drew Fustini wrote:
> On Thu, May 02, 2024 at 09:47:43AM +0200, Thomas Bonnefille wrote:
>>
>>
>> On 4/27/24 2:10 AM, Drew Fustini wrote:
>>> Change the clock property in the T-Head TH1520 mmc controller nodes to a
>>> real clock provided by the AP_SUBSYS clock driver.
>>>
>>> Signed-off-by: Drew Fustini <dfustini@tenstorrent.com>
>>
>> I experienced that, when the I2C clocks were correctly configured, the UART
>> stopped working, likely due to their dependence on FOUTPOSTDIV.
>> Setting up the UART correctly, for instance:
>>
>> uartx: serial@xxxxxxxxxx {
>> ...
>> clocks = <&clk CLK_UART_SCLK>, <&clk
>> CLK_UARTX_PCLK>;
>> clock-names = "baudclk", "apb_pclk";
>> ...
>> status = "disabled";
>> };
>> resolved the issue.
>> As this would be mandatory in the future, I suggest that you configure all
>> the nodes currently set to a fixed clock, not just the MMC controller.
>
> Thank you for testing and discovering this issue.
>
> Could you post your device tree so I can be sure I'm testing the same as
> what you have?
>
> Drew
Of course, I'll attach the two Device Trees used.
Note that I also use Emil's patch which adds support for pinctrl.
Thomas
© 2016 - 2025 Red Hat, Inc.