As a project for a university course Alvin Beach developed a Minix driver for the 3Com 3c905 and 3c920 ethernet cards. These are PCI bus cards, and at the time he began this project standard Minix did not have PCI bus support, so he worked with Minix-vmd rather than standard Minix. However, Minix 2.0.4 added support for the PCI bus. Alvin has since worked on porting this driver to standard Minix and has reported success, although this project is not ready for release (as of January 2005).
Here are links to some pieces of Alvin's project:
Even though a completed driver for standard Minix is not available, a useful product of Alvin's work is his report, available as a PDF file: http://users.eastlink.ca/~alvinbeach/portfolio/3c920/3c905C_report-1.1.pdf. This document explains the PCI interface in Minix-vmd (which is probably very similar to the standard Minix PCI support in Minix 2.0.4). It also provides a detailed explanation of the operation of the ethernet card and an explication of the Minix-vmd source code for the driver. I recommend this document for anyone wishing either to write a driver or just to understand the operation of the PCI interface or an ethernet card in the Minix environment.
The source code referred to in the report is available as a line-numbered listing (for easy reference when reading the project report) at http://users.eastlink.ca/~alvinbeach/project/bcosc/3c905_source-1.1.pdf. If you would like to download the source for further experimentation, it is in a Unix-style compressed tar archive at http://users.eastlink.ca/~alvinbeach/portfolio/3c920/3c920.taz.
Alvin is working on version 2 of his project, the project web page for this is at http://users.eastlink.ca/~alvinbeach/project/index.html.
[HOME] | [HINTS/FAQ] | [MINIX DOWNLOADS] | [CONTRIB SOFTWARE] |
[NET SOFTWARE] | [MINIX-VMD] | [TEXTBOOK] | [LINKS] |
![]() |
![]() |
![]() |