lkml.org 
[lkml]   [2013]   [Jul]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 3/4] msm_serial: Make baud_code detection more dynamic
From
On Wed, Jul 24, 2013 at 10:37 AM, Stephen Boyd <sboyd@codeaurora.org> wrote:
> [snip]
> + unsigned int i, divisor;
> + const struct msm_baud_map *entry;
> + static const struct msm_baud_map table[] = {
> + { 1536, 0x00, 1 },
> + { 768, 0x11, 1 },
> + { 384, 0x22, 1 },
> + { 192, 0x33, 1 },
> + { 96, 0x44, 1 },
> + { 48, 0x55, 1 },
> + { 32, 0x66, 1 },
> + { 24, 0x77, 1 },
> + { 16, 0x88, 1 },
> + { 12, 0x99, 6 },
> + { 8, 0xaa, 6 },
> + { 6, 0xbb, 6 },
> + { 4, 0xcc, 6 },
> + { 3, 0xdd, 8 },
> + { 2, 0xee, 16 },
> + { 1, 0xff, 31 },
> + };
> +
> + divisor = uart_get_divisor(port, baud);
> +
> + for (i = 0, entry = table; i < ARRAY_SIZE(table); i++, entry++)
> + if (entry->divisor <= divisor)
> + break;
> +
> + return entry; /* Default to smallest divider */

Shouldn't matter, but you're not defaulting to the smallest divider.
Your are defaulting to an undefined value, as `entry` will be off the
array once i == ARRAY_SIZE().

Regards,
Bjorn


\
 
 \ /
  Last update: 2013-07-26 07:01    [W:0.144 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site