Re: [PATCH v2] tty: serial: msm_serial.c: Cleaning up uninitialized variables

From: Stephen Boyd
Date: Wed Jul 09 2014 - 14:02:13 EST


On 07/06/14 09:47, Rickard Strandqvist wrote:
> Set reasonable initial value of some variables, in case
> they do not get set to something otherwise.
> And I've also added a plausibility control of the values.
>
> Signed-off-by: Rickard Strandqvist <rickard_strandqvist@xxxxxxxxxxxxxxxxxx>
> ---

This patch doesn't look right...

> @@ -930,17 +930,21 @@ static int __init msm_console_setup(struct console *co, char *options)
>
> msm_init_clock(port);
>
> - if (options)
> + if (options) {
> uart_parse_options(options, &baud, &parity, &bits, &flow);
> + if (baud < 300 || baud > 115200)
> + baud = 115200;
> + if (NULL == strchr("noeNOE", parity))
> + parity = 'n';
> + if (bits != 7)
> + bits = 8;
> + if (flow != 'r')
> + flow = 'n';
> + }
>
> - bits = 8;
> - parity = 'n';
> - flow = 'n';
> msm_write(port, UART_MR2_BITS_PER_CHAR_8 | UART_MR2_STOP_BIT_LEN_ONE,
> UART_MR2); /* 8N1 */
>

because this code is overriding whatever is parsed from
uart_parse_options() on purpose. The hardware is configured for 8 bits,
no parity, no flow control with this msm_write() statement. Maybe we
should extend the code to configure the parity and flow control bits
instead.

> - if (baud < 300 || baud > 115200)
> - baud = 115200;
> msm_set_baud_rate(port, baud);
>
> msm_reset(port);


--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/