From b0df02004f52b97d392295b31be2fcee8c5b9662 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Mon, 14 May 2012 13:42:35 -0500 Subject: [PATCH] pl011: Fix baud divisor (correctly this time) * Order of operations error, seen after writing a quick test app.. sorry for spam --- src/system/kernel/arch/arm/uart_pl011.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/system/kernel/arch/arm/uart_pl011.cpp b/src/system/kernel/arch/arm/uart_pl011.cpp index 5c6d531cb4..88baed3cdf 100644 --- a/src/system/kernel/arch/arm/uart_pl011.cpp +++ b/src/system/kernel/arch/arm/uart_pl011.cpp @@ -79,8 +79,8 @@ UartPL011::InitPort(uint32 baud) // Calculate baud divisor uint32 baudDivisor = BOARD_UART_CLOCK / (16 * baud); uint32 remainder = BOARD_UART_CLOCK % (16 * baud); - uint32 baudFractional = ((8 * remainder) / baud) >> 1 - + ((8 * remainder) / baud) & 1; + uint32 baudFractional = ((8 * remainder) / BAUD >> 1) + + ((8 * remainder) / BAUD & 1); // Disable UART Disable();