|
VK7AX > LINHAM 23.07.08 04:59l 94 Lines 3134 Bytes #999 (0) @ WW
BID : VK7AX-2307LI
Read: GUEST
Subj: Re: baycom_ser_fdx - fixed under 2.6
Path: IZ3LSV<IK2XDE<F5GOV<F4BWT<VE2PKT<ZL2BAU<VK7AX
Sent: 080723/0355Z @:VK7AX.#ULV.TAS.AUS.OC #:49602 [Ulverstone] FBB7.00g $:VK7A
From: VK7AX@VK7AX.#ULV.TAS.AUS.OC
To : LINHAM@WW
From: Pidoux <f6bvp(AT)free.fr>
Date: Tue, 22 Jul 2008 11:31:34 +0200
To: David Robb <ender(AT)paradise.gen.nz>
CC: linux-hams(AT)vger.kernel.org,
David Miller <davem(AT)davemloft.net>,
Ralf Baechle <ralf(AT)linux-mips.org>,
Linux Netdev List <netdev(AT)vger.kernel.org>
Hi,
This is a trivial but very important bug fix. Thanks David.
It was probably not submitted to the right destination and thus
never applied.
This bug may have discouraged more than one radioamateur wishing to
experiment baycom style modems under Linux.
Fortunately you have done a very good historical search.
I rebuilt the patch against 2.6.26 kernel (the only source I have
here on my laptop at my remote location during vacation).
I Cc: to David Miller and Ralf Baechle DL5RB maintainers of Linux
net devices drivers and Linux AX25 drivers, respectively.
73 de Bernard, f6bvp
--- a/drivers/net/hamradio/hdlcdrv.c 2008-07-22 10:40:20.000000000 +0200
+++ b/drivers/net/hamradio/hdlcdrv.c 2008-07-22 10:42:13.000000000 +0200
(AT)(AT) -88,6 +88,7 (AT)(AT)
static inline void append_crc_ccitt(unsigned char *buffer, int len)
{
unsigned int crc = crc_ccitt(0xffff, buffer, len) ^ 0xffff;
+ buffer += len;
*buffer++ = crc;
*buffer++ = crc >> 8;
}
David Robb wrote :
> So it seems that I might be the only person in the world who's still
attempting to use a Baycom bp-1 pocket modem under Linux, but oh well..
>
> As a number of people noticed back in about 2005 (and some even earlier),
the baycom_ser_fdx driver hasn't worked under Linux 2.6 for a few years
(possibly ever).
>
> Various people poked around
(http://osdir.com/ml/hams/2005-05/msg00022.html) and determined that
there was some kind of packet corruption going on, and that the CRC
was mangled.
>
> Well, after bashing my head against it a few times over the last few
months (I guess I was bored), and finally thinking that it mightn't be
in the baycom_ser_fdx driver that the problem actually was, I tracked
it down to the hdlcdrv code instead...
>
> Someone called Micah actually figured this out in 2004, and submitted
a patch, but it never made it into the kernel
(at least in my 2.6.25.7 it's still broken):
>
> http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-11/2929.html
>
> The CRC's overwriting some of the packet...
>
> So anyway, applying the patch listed at that URL
(1 line! Just one little line!) my BP-1 now works again under 2.6.25.
>
> Perhaps I'm strange for wanting this working in these days of high
speed links, but hey... it seems sad to have broken code and no support
where there used to be a functional device.
>
> Anyway, share and enjoy.
>
> --David ZL3UDR
--
***************************************************************
ABOVE IS A CROSS POST TO THE PACKET RADIO NETWORK IN AN EFFORT
TO PROMOTE FURTHER INTEREST IN HAM SOFTWARE USING LINUX
OPERATING SYSTEMS AND PACKET RADIO
Courtesy Tony VK7AX VK7AX(AT)VK7AX.#ULV.TAS.AUS.OC
***************************************************************
Read previous mail | Read next mail
| |