blackfin: Uart divisor should be set after their values are generated.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
This commit is contained in:
Sonic Zhang 2013-03-14 12:47:12 +08:00
parent d68e7faac0
commit 04eeb758e7

View File

@ -715,8 +715,8 @@ update_serial_clocks(ADI_BOOT_DATA *bs, uint sdivB, uint divB, uint vcoB)
* for dividing which means we'd generate a libgcc reference.
*/
unsigned int sdivR, vcoR;
unsigned int dividend = sdivB * divB * vcoR;
unsigned int divisor = vcoB * sdivR;
unsigned int dividend;
unsigned int divisor;
unsigned int quotient;
serial_putc('a');
@ -729,6 +729,9 @@ update_serial_clocks(ADI_BOOT_DATA *bs, uint sdivB, uint divB, uint vcoB)
sdivR = bfin_read_PLL_DIV() & 0xf;
vcoR = (bfin_read_PLL_CTL() >> 9) & 0x3f;
#endif
dividend = sdivB * divB * vcoR;
divisor = vcoB * sdivR;
quotient = early_division(dividend, divisor);
serial_early_put_div(quotient - ANOMALY_05000230);
serial_putc('c');