Opened 14 years ago

Last modified 5 years ago

#194 closed enhancement

Driver for AMD Lance network card clone — at Version 5

Reported by: Jakub Jermář Owned by:
Priority: major Milestone:
Component: helenos/net/other Version: mainline
Keywords: gsoc10, gsoc11, gsoc12, gsoc13, gsoc14, gsoc15, gsoc16, gsoc17 Cc:
Blocker for: Depends on:
See also:

Description (last modified by Jakub Jermář)

Implement a native HelenOS driver for one or more clones of the AMD Lance network interface card.

Details
The new driver should be realized as a module which plugs itself into the HelenOS networking stack and implements the network interface card interface in the AMD Lance specific way.

There appears to be several clones of AMD Lance (a.k.a. Am79C90), The driver should be implemented with this in mind to provide support for the widest range of Am79C90 clones.

What Gains and Benefits will this bring?
The only NIC driver that HelenOS supports so far is a clone of NE2000. Some important virtual environments in which HelenOS is commonly run, such as VirtualBox, unfortunately do not emulate NE2000. On these systems, HelenOS cannot fully exploit its brand new networking stack.
Difficulty
It appears that the AMD Lance driver will need to do DMA. Since HelenOS does not provide abstractions for doing DMA yet, it will need to be implemented along with this ticket. This increases the difficulty from medium to something between medium and difficult.
Required skills
A successful applicant will have good skills of programming in the C language and the ability to learn and use HelenOS specific I/O functions. A successful applicant should have a fair understanding of the workings of the networking stack too.
Documentation
Possible mentors
HelenOS Core Team, Jakub Jermar, Martin Decky, Lukas Mejdrech, Jiri Svoboda

Change History (5)

comment:1 by Jakub Jermář, 14 years ago

Description: modified (diff)

comment:2 by Jakub Jermář, 14 years ago

Description: modified (diff)

comment:3 by Martin Decky, 14 years ago

Description: modified (diff)

comment:4 by Jakub Jermář, 14 years ago

Description: modified (diff)

comment:5 by Jakub Jermář, 14 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.