Correct UART PL011 initialization calculation
authorAvinash Mehta <avinash.mehta@arm.com>
Tue, 8 Oct 2019 11:09:04 +0000 (12:09 +0100)
committerAvinash Mehta <avinash.mehta@arm.com>
Tue, 8 Oct 2019 12:58:25 +0000 (13:58 +0100)
Currently for Armv7 plaforms the quotient calculated in pl011
uart init code is moved to register r1.

This patch moves the quotient to register r2 as done for other
platforms in the udiv instruction. Value of register r2 is then
used to calculate the values for IBRD and FBRD register

Change-Id: Ie6622f9f0e6d634378b471df5d02823b492c8a24
Signed-off-by: Avinash Mehta <avinash.mehta@arm.com>
drivers/arm/pl011/aarch32/pl011_console.S

index e1e346c2f7bf5c953167ca597cc2df6808088899..05c8250dc3a97e5d4d14e54379a7e82aae2aa3e6 100644 (file)
@@ -57,7 +57,7 @@ func console_pl011_core_init
 #if (ARM_ARCH_MAJOR == 7) && !defined(ARMV7_SUPPORTS_VIRTUALIZATION)
        push    {r0,r3}
        softudiv        r0,r1,r2,r3
-       mov     r1, r0
+       mov     r2, r0
        pop     {r0,r3}
 #else
        udiv    r2, r1, r2