On 03/19/2015 09:55 AM, Maxime Coquelin wrote: >>>>> +static void stm32_set_termios(struct uart_port *port, struct ktermios *termios, >>>>> + struct ktermios *old) [...] >>>>> + usardiv = (port->uartclk * 25) / (baud * 4); >>>>> + mantissa = (usardiv / 100) << USART_BRR_DIV_M_SHIFT; >>>>> + fraction = DIV_ROUND_CLOSEST((usardiv % 100) * 16, 100); >>>>> + if (fraction & ~USART_BRR_DIV_F_MASK) { >>>>> + fraction = 0; >>>>> + mantissa += (1 << USART_BRR_DIV_M_SHIFT); >>>>> + } [...] > Really, I would prefer keeping this fractional divider as it is > implemented today. You have to admit that's basically an unintelligible mess; how would anyone ever be able to refactor and replace that with a common divider implementation? At the very least, please comment on the formula and format. Regards, Peter Hurley -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html