Message ID | 20220419075157.189347-1-matthias.schiffer@ew.tq-group.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] arm64: dts: ti: k3-am64-mcu: remove incorrect UART base clock rates | expand |
Hi, On 19/04/22 1:21 pm, Matthias Schiffer wrote: > We found that (at least some versions of) the sci-fw set the base clock > rate for UARTs in the MCU domain to 96 MHz instead of the expected 48 MHz, > leading to incorrect baud rates when used from Linux. > > As the 8250_omap driver will query the actual clock rate from the clk > driver when clock-frequency is unset, removing the incorrect property is > sufficient to fix the baud rate. > > Fixes: 8abae9389bdb ("arm64: dts: ti: Add support for AM642 SoC") > Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> > --- Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com> > > v2: remove incorrect clock-frequency instead of using > assigned-clock-rates to modify the base clock > > arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi > index 2bb5c9ff172c..02d4285acbb8 100644 > --- a/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi > +++ b/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi > @@ -10,7 +10,6 @@ mcu_uart0: serial@4a00000 { > compatible = "ti,am64-uart", "ti,am654-uart"; > reg = <0x00 0x04a00000 0x00 0x100>; > interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; > - clock-frequency = <48000000>; > current-speed = <115200>; > power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>; > clocks = <&k3_clks 149 0>; > @@ -21,7 +20,6 @@ mcu_uart1: serial@4a10000 { > compatible = "ti,am64-uart", "ti,am654-uart"; > reg = <0x00 0x04a10000 0x00 0x100>; > interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; > - clock-frequency = <48000000>; > current-speed = <115200>; > power-domains = <&k3_pds 160 TI_SCI_PD_EXCLUSIVE>; > clocks = <&k3_clks 160 0>;
Hi Matthias Schiffer, On Tue, 19 Apr 2022 09:51:57 +0200, Matthias Schiffer wrote: > We found that (at least some versions of) the sci-fw set the base clock > rate for UARTs in the MCU domain to 96 MHz instead of the expected 48 MHz, > leading to incorrect baud rates when used from Linux. > > As the 8250_omap driver will query the actual clock rate from the clk > driver when clock-frequency is unset, removing the incorrect property is > sufficient to fix the baud rate. > > [...] I have applied the following to branch ti-k3-dts-next on [1]. Thank you! [1/1] arm64: dts: ti: k3-am64-mcu: remove incorrect UART base clock rates commit: 439677d416b17dd39964d5f7d64b742a2e51da5b All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent up the chain during the next merge window (or sooner if it is a relevant bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. [1] https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git -- Vignesh
diff --git a/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi index 2bb5c9ff172c..02d4285acbb8 100644 --- a/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi @@ -10,7 +10,6 @@ mcu_uart0: serial@4a00000 { compatible = "ti,am64-uart", "ti,am654-uart"; reg = <0x00 0x04a00000 0x00 0x100>; interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; - clock-frequency = <48000000>; current-speed = <115200>; power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>; clocks = <&k3_clks 149 0>; @@ -21,7 +20,6 @@ mcu_uart1: serial@4a10000 { compatible = "ti,am64-uart", "ti,am654-uart"; reg = <0x00 0x04a10000 0x00 0x100>; interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; - clock-frequency = <48000000>; current-speed = <115200>; power-domains = <&k3_pds 160 TI_SCI_PD_EXCLUSIVE>; clocks = <&k3_clks 160 0>;
We found that (at least some versions of) the sci-fw set the base clock rate for UARTs in the MCU domain to 96 MHz instead of the expected 48 MHz, leading to incorrect baud rates when used from Linux. As the 8250_omap driver will query the actual clock rate from the clk driver when clock-frequency is unset, removing the incorrect property is sufficient to fix the baud rate. Fixes: 8abae9389bdb ("arm64: dts: ti: Add support for AM642 SoC") Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> --- v2: remove incorrect clock-frequency instead of using assigned-clock-rates to modify the base clock arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi | 2 -- 1 file changed, 2 deletions(-)