-1

I am looking what piece of hardware should i buy (NIC Or FPGA Or ASIC etc) which i could connect to my system, and write device driver to implement and learn Ethernet device driver typical functions like - packet trapping/ receiving and sending packet/ reprogramming the hardware etc ? How can i learn all this stuff at home ?

Abhishek Sagar
  • 1,189
  • 4
  • 20
  • 44

1 Answers1

2

I think that if your "system" is a computer, it should have a NIC (or you can buy one). Anyway, you need a computer to write a driver... so download the kernel sources and look at the driver source for the NIC you are using.

  • but NIC would have predefined IRQ - for packet receiving. Is it possible to re-program the NIC so that it raises the interrupt to CPU only when certain types of packets are received ? – Abhishek Sagar Dec 30 '16 at 06:12
  • I think generally no; you can program they to raise IRQ only for unicast packets and not for any packet but, apart from this, there is little else. Otherwise, there are more complex chips, designed for embedded systems, which can do what you want; they interface to the host CPU via parallel, SPI or even normal asynchronous serial line, for ex. https://www.sparkfun.com/products/retired/9471 – linuxfan says Reinstate Monica Dec 31 '16 at 06:31