|
@@ -93,7 +93,7 @@ static struct sbi_console_device uart8250_console = {
|
|
|
int uart8250_init(unsigned long base, u32 in_freq, u32 baudrate, u32 reg_shift,
|
|
|
u32 reg_width, u32 reg_offset)
|
|
|
{
|
|
|
- u16 bdiv;
|
|
|
+ u16 bdiv = 0;
|
|
|
|
|
|
uart8250_base = (volatile char *)base + reg_offset;
|
|
|
uart8250_reg_shift = reg_shift;
|
|
@@ -101,7 +101,10 @@ int uart8250_init(unsigned long base, u32 in_freq, u32 baudrate, u32 reg_shift,
|
|
|
uart8250_in_freq = in_freq;
|
|
|
uart8250_baudrate = baudrate;
|
|
|
|
|
|
- bdiv = (uart8250_in_freq + 8 * uart8250_baudrate) / (16 * uart8250_baudrate);
|
|
|
+ if (uart8250_baudrate) {
|
|
|
+ bdiv = (uart8250_in_freq + 8 * uart8250_baudrate) /
|
|
|
+ (16 * uart8250_baudrate);
|
|
|
+ }
|
|
|
|
|
|
/* Disable all interrupts */
|
|
|
set_reg(UART_IER_OFFSET, 0x00);
|