Posts: 1004
Joined: Wed Dec 07, 2016 2:29 pm

Pi3 changing System & Core Clock

Mon May 14, 2018 3:17 am

I was having trouble with my mini-uart baudrate, which I finally worked thru.

The Pi3 starts it's cores at 600Mhz with the core running at 250Mhz. The UART baudrate is derived off the the core clock.

Now the weird part if you issue a set clock rate change to the system clock (mailbox 0x00038002) clock ID 3 to 1200Mhz the system clock does indeed go up to 1200Mhz BUT the core clock also moves up to 400Mhz. Hence my baudrate was out.

So I corrected my baudrate by simply reading the core clock and calculating the divisor to use but it left me with a curious question what is the connection between the two clocks? I mean if they were directly connected the core should have doubled to 500Mhz. The mailbox command says nothing about one clock change, making changes to another clock.

Return to “Bare metal, Assembly language”