Andrei Faur: Device driver implementation

Project Plan


The aim of this project is to implement a driver for a currently unsupported NIC either by writing one from scratch or by porting an already existing open-source implementation.

Milestones and Timeline

  • Week 1
    • Figure out NIC's control / state registers.
    • Create driver skeleton by defining interfaces, registers.
  • Weeks 2 - 5
    • Implement functionality by writing code for the interfaces. Define subroutines as necessary.
    • Start with open / close / irq as these usually require setting different control registers. This is good for an early stage when data structures are set up and incomplete
    • Finally poll / transmit which make full use of previously defined data structures
  • Week 6
    • Refactoring / debugging. Try to create as many scenarios as possible so any of the NIC's bugs will surface.
  • Week 7 - 12
    • Depending on how things evolved up to this point, this stage either requires fixing bugs and implementing missing functionality or perhaps tackling a new driver or some other contribution to the project.
    • Finish documentation

QR Code
QR Code soc:2010:andreif:project_plan:start (generated for current page)