build universal device driver for Ethernet controllers

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
I am planning to build universal device  driver for Ethernet
controller . It can work for any type of hardware

I want to make general framework for the driver  and it is
configurable or we make a table depend on futures exist in particular
vender chip in particular version
It may be  replace all drivers in the Linux kernel tree and only one
Ethernet driver it is easy to understand and it is easy to add new
future or new chip into this driver  and its more efficient
Because we are going to implement driver which works 10Mbps to 10Gbps
so this architecture gives  us very efficient and very less effort
because everyone working on different driver  instead of one driver

I think you guys understand what I have planned  right ? then please
share your experience with me

Is it right thing to do ?
Is it acceptable in Linux tree ?
If you have any plan where to start and how to start?
And other then here may I need ask any help from other place
Like  Linux kernel mailing list   linux-net,netdev  because I am new
to this mailing list I am not worked before as open source contributor

 Prabhakar pujeri

Re: build universal device driver for Ethernet controllers
You should first be familiar with the linux source tree and how ethernet
drivers are implementer. AFAIK most drivers for general devices are already
implemented in the way you suggest, more or less. If this is your first
attempt for open source contribution, I suggest you start from something
less complicated.

pra wrote:

Quoted text here. Click to load it

Re: build universal device driver for Ethernet controllers
Quoted text here. Click to load it

as far as i know, this is not pssibol, becouse one hardware part is
difrent form another. all ethernet hardware, speeks ther own langue

Re: build universal device driver for Ethernet controllers
Build universal DM9000 driver for ARM
Embest Industrial ARM9 module comes with Linux and Wince(DM9000)
The SBC6000X supports extended temperature operation, and comes pre-
loded with a Linux 2.6-based kernel, YAFFS filesystem, and Wince6.0

The SBC6000X uses Atmel's interesting AT91SAM9261 ,the AT91SAM9261
uses ARM's ARM926EJ-S core clocked at 200MHz, with 16KB each of
instruction and data cache. It also boasts 16KB of on-chip SRAM and
32KB of flash, and offers an external bus interface with controllers
for SDRAM, NAND Flash, and CompactFlash. Furthermore, it integrates a
host of on-chip peripheral interfaces.

The board operates from -10 to 70 degrees Celsius (without backup
battery), though individual
components are claimed to be "industrial grade" parts good between -40
and 85 degrees Celsius.

Specifications listed  include:
Processor -- Atmel AT91SAM9261 clocked at 200MHz @1.8V
Memory -- 2Kbit EEPROM, 64MB SDRAM, 128MB NAND,4/8Mbyte Dataflash(not
1 x 10/100Mbps Ethernet
1 x RS232 serial communication port with flow control signal
1x RS232 serial communication ports with RTS and CTS signal
1 x RS232 serial communication ports, including a Debug unit
2 x USB 2.0 full-speed host port and one device port
4 x 4 Keyboard interface
Audio input and output jacks
Four channels 12-bit ADC
SD card slot
RTC circuit with a backup battery and 7 TFT LCD
+12V DC power input slot
On the software side, the SBC6000X comes with the U-boot 1.3.4
bootloader, a Linux 2.6.24 kernel,YAFFS filesystem, and application

More details can be found here.

Embest Info&Tech Co., LTD. (China HQ)
Room 509, Luohu Science Building
#85 Taining Rd., Shenzhen, Guangdong
China 518020
Tel: 0086-755-25635656, 25636285
Fax: 0086-755-25616057
Sales Email: or
Support Email: or or /

Site Timeline