Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 5354

Troubleshooting • BCM2711 change UART clock

$
0
0
I am realizing a project with CM4 where I need higher baudrates on UART3. Currently, the maximum baudrate is limited by the uart clock which is per default 48MHz resulting in a maxum baudrate of 48MHz/16 = 3 Mbit.

I want to increase that to at least 5Mbit but to do so I need to increase the UART clock.
For UART0 it was possible by using init_uart_clock but this is now marked as a legacy option and does not apply to UARTs other than UART0.
Therefore, I want to do it with an overlay but since my experience with overlays is limited, I could not find out how to do so.

I did found a thread (viewtopic.php?t=361321) on how to do it on RPi5 but the clock management is completely different on the RPi4.

My research so far showed that the clock is assigned in boot/dts/broadcom/bcm2711.dtsi

Code:

uart3: serial@7e201600 {compatible = "arm,pl011", "arm,primecell";reg = <0x7e201600 0x200>;interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;clocks = <&clocks BCM2835_CLOCK_UART>, <&clocks BCM2835_CLOCK_VPU>;clock-names = "uartclk", "apb_pclk";arm,primecell-periphid = <0x00241011>;status = "disabled";};
When I search for BCM2835_CLOCK_UART I just found a reference in /dt-bindings/clock/bcm2835.h but the clock is not set here.

So if anyone could point me in the right direction, that would be highly appreciated.

Statistics: Posted by p0ckin3d — Wed Nov 20, 2024 8:20 am



Viewing all articles
Browse latest Browse all 5354

Trending Articles