I have adapted the 2.12 version to the Linux kernel 2.4.0 and made some changes during the tests. http://libxg.free.fr/donauboe.c This driver is called "donauboe" Actually, it a new version of the Toshiba Oboe driver. that is included in the Linus kernel-source tree (toshoboe version 1.91), which is always the reference for all unoptimized modes. The donauboe (previously Toshoboe version 2.12) has several optimization features. I have made more tests between a Libretto 110 with donauboe and: SIR tests: - a Libretto 50 (irtty + irnet). - a Palm V FIR tests: - a Libretto 100 (same donauboe + irnet). Next test sessions are planned with - a Compaq Armada 1700 (w83977af_ir ? + irnet) Results: I have always "rx fifo overflow" when the other side is started I have kept this: self->ring->tx[self->txs].len = len & 0x0fff; But it is not correct to manage length modulo 4k. Should we return an error if length>TX_LEN (and check TX_LEN < 4k) This length is checked by an assert in async_wrap_skb To do: Error return if packet is too long to be transmitted. Manage big received packets (over buffer size). Improve and test MIR mode. Suppress duplicated code: CRC table, check CRC, make test packet (use async_wrap_skb) _______________________________________________ Linux-IrDA mailing list - [EMAIL PROTECTED] http://www.pasta.cs.UiT.No/mailman/listinfo/linux-irda