On 11/27/2016 11:05 PM, Mirza Krak wrote:
From: Mirza Krak <mirza.k...@gmail.com>

Recently the default UART clock rate has been changed to 48 MHz on all
pi`s in the firmware files, which broke UART support in u-boot.

Align configuration to boot firmware.

diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c

@@ -37,7 +37,7 @@ static const struct pl01x_serial_platdata serial_platdata = {
        .base = 0x20201000,
 #endif
        .type = TYPE_PL011,
-       .clock = 3000000,
+       .clock = 48000000,

I'm not sure this is the best fix, since it will prevent the latest U-Boot from working with the FW before the change.

Better would be:

a) Revert the change in the FW, since it violates the contract that previously existed between FW and OS, and will likely break UART usage on (almost?) all SW.

b) Detect the correct clock rate at run-time rather than hard-coding it.

b1) Perhaps the rate is available in the DT passed by the FW, which following http://patchwork.ozlabs.org/patch/690769/ "rpi: save firmware provided boot param for later use" should now be available within U-Boot to parse.

b2) Perhaps query the rate from the FW via the mailbox API; see https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to