2010-11-19 00:28:26

by Nicolas Kaiser

[permalink] [raw]
Subject: [PATCH] SuperH IrDA: correct Baud rate error correction

It looks to me as if the second value of rate_err_array is intended
to be a decimal 625. However, with a leading 0 it becomes an octal
constant, and as such evaluates to a decimal 405.

Signed-off-by: Nicolas Kaiser <[email protected]>
---
drivers/net/irda/sh_sir.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/irda/sh_sir.c b/drivers/net/irda/sh_sir.c
index 00b38bc..52a7c86 100644
--- a/drivers/net/irda/sh_sir.c
+++ b/drivers/net/irda/sh_sir.c
@@ -258,7 +258,7 @@ static int sh_sir_set_baudrate(struct sh_sir_self *self, u32 baudrate)

/* Baud Rate Error Correction x 10000 */
u32 rate_err_array[] = {
- 0000, 0625, 1250, 1875,
+ 0, 625, 1250, 1875,
2500, 3125, 3750, 4375,
5000, 5625, 6250, 6875,
7500, 8125, 8750, 9375,
--
1.7.2.2


2010-11-19 00:41:53

by Stephen Hemminger

[permalink] [raw]
Subject: Re: [PATCH] SuperH IrDA: correct Baud rate error correction

On Fri, 19 Nov 2010 01:24:02 +0100
Nicolas Kaiser <[email protected]> wrote:

> u32 rate_err_array[] = {
> - 0000, 0625, 1250, 1875,
> + 0, 625, 1250, 1875,
> 2500, 3125, 3750, 4375,
> 5000, 5625, 6250, 6875,
> 7500, 8125, 8750, 9375,

While you are at it make that table const.

2010-11-19 01:05:11

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH] SuperH IrDA: correct Baud rate error correction

On Thu, 2010-11-18 at 16:41 -0800, Stephen Hemminger wrote:
> On Fri, 19 Nov 2010 01:24:02 +0100
> Nicolas Kaiser <[email protected]> wrote:
> > u32 rate_err_array[] = {
> > - 0000, 0625, 1250, 1875,
> > + 0, 625, 1250, 1875,
> > 2500, 3125, 3750, 4375,
> > 5000, 5625, 6250, 6875,
> > 7500, 8125, 8750, 9375,
> While you are at it make that table const.

Good find Nicolas.

static const might be better still.