Skip to content

Commit

Permalink
[PATCH] synclinkmp.c: fix async internal loopback
Browse files Browse the repository at this point in the history
Fix async internal loopback by not using enable_loopback function which
reprograms clocking and should only be used for hdlc mode.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Paul Fulghum authored and Linus Torvalds committed Sep 9, 2005
1 parent 166692e commit 6e8dcee
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions drivers/char/synclinkmp.c
Original file line number Diff line number Diff line change
Expand Up @@ -4479,11 +4479,13 @@ void async_mode(SLMP_INFO *info)
/* MD2, Mode Register 2
*
* 07..02 Reserved, must be 0
* 01..00 CNCT<1..0> Channel connection, 0=normal
* 01..00 CNCT<1..0> Channel connection, 00=normal 11=local loopback
*
* 0000 0000
*/
RegValue = 0x00;
if (info->params.loopback)
RegValue |= (BIT1 + BIT0);
write_reg(info, MD2, RegValue);

/* RXS, Receive clock source
Expand Down Expand Up @@ -4564,9 +4566,6 @@ void async_mode(SLMP_INFO *info)
write_reg(info, IE2, info->ie2_value);

set_rate( info, info->params.data_rate * 16 );

if (info->params.loopback)
enable_loopback(info,1);
}

/* Program the SCA for HDLC communications.
Expand Down

0 comments on commit 6e8dcee

Please sign in to comment.