diff --git a/drivers/serial/serial_mxc.c b/drivers/serial/serial_mxc.c index fbf8e51591a9425e4dd54508a932c24410314e8c..cf6f0447f2731290aa631bc03945d30c099afabf 100644 --- a/drivers/serial/serial_mxc.c +++ b/drivers/serial/serial_mxc.c @@ -162,6 +162,9 @@ static void mxc_serial_setbrg(void) writel(0xf, &mxc_base->bir); writel(clk / (2 * gd->baudrate), &mxc_base->bmr); + writel(UCR2_WS | UCR2_IRTS | UCR2_RXEN | UCR2_TXEN | UCR2_SRST, + &mxc_base->cr2); + writel(UCR1_UARTEN, &mxc_base->cr1); } static int mxc_serial_getc(void) @@ -216,11 +219,6 @@ static int mxc_serial_init(void) serial_setbrg(); - writel(UCR2_WS | UCR2_IRTS | UCR2_RXEN | UCR2_TXEN | UCR2_SRST, - &mxc_base->cr2); - - writel(UCR1_UARTEN, &mxc_base->cr1); - return 0; }