serial_mxc: Fix setup of UARTx_UFCR register
PATCH 1/1 serial_mxc: Fix setup of UARTx_UFCR register
This patch writes the default values for TXTL and RXTL to UARTx_UFCR. Without this patch some older kernel versions crash as UARTx_UFCR was not always correctly initialized.
Signed-off-by Maximilian Schwerin <[email protected]>
--- drivers/serial/serial_mxc.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
drivers/serial/serial_mxc.c +8 -1
@@ -75,6 +75,7 @@#define UCR4_DREN (1<<0)/* Recv data ready interrupt enable */ #define UFCR_RXTL_SHF 0/* Receiver trigger level shift */ #define UFCR_RFDIV (7<<7)/* Reference freq divider mask */ +#define UFCR_RFDIV_SHF 7/* Reference freq divider shift */ #define UFCR_TXTL_SHF 10/* Transmitter trigger level shift */ #define USR1_PARITYERR (1<<15)/* Parity error interrupt flag */ #define USR1_RTSS (1<<14)/* RTS pin status */
@@ -135,6 +136,10 @@DECLARE_GLOBAL_DATA_PTR ; +#define TXTL 2/* reset default */ +#define RXTL 1/* reset default */ +#define RFDIV 4/* divide input clock by 2 */ +static void mxc_serial_setbrg (void ) {u32 clk =imx_get_uartclk ();
@@ -142,7 +147,9 @@ static void mxc_serial_setbrg(void)if (!gd->baudrate) gd->baudrate =CONFIG_BAUDRATE ; -__REG (UART_PHYS +UFCR ) =4 <<7 ;/* divide input clock by 2 */ +__REG (UART_PHYS +UFCR ) = (RFDIV <<UFCR_RFDIV_SHF ) + | (TXTL <<UFCR_TXTL_SHF ) + | (RXTL <<UFCR_RXTL_SHF );__REG (UART_PHYS +UBIR ) =0xf ;__REG (UART_PHYS +UBMR ) = clk / (2 * gd->baudrate);
Signature · 9 lines
1.9.1 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 2815 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151125/90968843/attachment.bin>
PATCH 1/1 serial_mxc: Fix setup of UARTx_UFCR register
Quoted 6 lines · Maximilian Schwerin
This patch writes the default values for TXTL and RXTL to
UARTx_UFCR. Without this patch some older kernel versions crash asUARTx_UFCRwas not always correctly initialized.Signed-off-by Maximilian Schwerin <[email protected]>---
Applied to u-boot-imx, thanks!
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================