Messages in this thread | | | Date | Sat, 04 Mar 2000 00:01:48 +1100 | From | Andrew Morton <> | Subject | [patch] drivers/net/cs89x0 |
| |
This patch against 2.3.49 makes the Cirrus cs89x0 ethernet driver work again.
This driver has had a hard life:
Mike Cruse wrote the original (from Don Becker's skeleton, I assume). Russ Nelson fixed a few things and added Rx DMA support. For unknown reasons the DMA version never made it into the standard kernel tree. Melody Lee at Cirrus took the offstream version and fixed some bugs and added some features. Meanwhile the onstream version received some 2.3.x tweaking from Alan. This version pulls everything together again.
Changes relative to 2.3.49:
- Enable cs89x0 in drivers/net/Config.in. - Correctly handle resource allocation failures - Add SMP locks. - Re-integrate Russ Nelson's ALLOW_DMA functionality. - If ALLOW_DMA is true, make the use of DMA selectable at insmod time (insmod use_dma=1 dma=5 io=0x200). - Folded in Melody's changes and bugfixes. - Don't call netif_wake_queue() _or_ netif_start_queue() in net_send_packet(). Restart the queue in the Tx completion ISR instead. - The 2.3.49 version of Documentation/networking/cs89x0.txt was Cirrus' 2.0.x version. I replaced this with their 2.2.5 documentation and updated it appropriately. - Change debug handling so most of it disappears if DEBUGGING == 0 (dead code elimination is your friend). - Melody's ALLOW_MEMORY code which uses the chip via memory space isn't integrated here. She says this is OK. DMA is faster anyway. - It is tested as a module and linked-in. With and without DMA. SMP and UP (on a UP). - Tested with CS8920 only (not CS8900). Probably not an issue as no OEMs used the CS8900 in PCs.
It's at http://www.uow.edu.au/~andrewm/cs89x0-2.3.49.patch.gz
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |