Subject: Re: [PATCH -MM] e1000: rewrite hardware initialization code

From: Auke Kok <[email-masked]>
Date: Tue, 09 Jan 2007 10:48:32 -0800

Stephen Hemminger wrote:
> On Tue, 09 Jan 2007 09:36:29 -0800
> Auke Kok <[email-masked]> wrote:
> 
>> Andrew, All,
>>
>> This patch contains a major rewrite to the e1000 driver that groups and separates e1000 
>> hardware by chipset family. It abstracts the hardware specific code into an API that 
>> will allow us to continue to maintain the complex e1000 driver and add new hardware 
>> support to it without touching code that affects older chipsets. 
> 
> Thats good. but:
> 
>>   drivers/net/e1000/Makefile            |   19
>>   drivers/net/e1000/e1000.h             |   95
>>   drivers/net/e1000/e1000_80003es2lan.c | 1330 +++++
>>   drivers/net/e1000/e1000_80003es2lan.h |   89
>>   drivers/net/e1000/e1000_82540.c       |  586 ++
>>   drivers/net/e1000/e1000_82541.c       | 1164 ++++
>>   drivers/net/e1000/e1000_82541.h       |   86
>>   drivers/net/e1000/e1000_82542.c       |  466 ++
>>   drivers/net/e1000/e1000_82543.c       | 1397 +++++
>>   drivers/net/e1000/e1000_82543.h       |   45
>>   drivers/net/e1000/e1000_82571.c       | 1132 ++++
>>   drivers/net/e1000/e1000_82571.h       |   42
>>   drivers/net/e1000/e1000_api.c         | 1077 ++++
>>   drivers/net/e1000/e1000_api.h         |  159 +
>>   drivers/net/e1000/e1000_defines.h     | 1289 +++++
>>   drivers/net/e1000/e1000_ethtool.c     |  470 +-
>>   drivers/net/e1000/e1000_hw.c          | 9038 ---------------------------------
>>   drivers/net/e1000/e1000_hw.h          | 3859 ++------------
>>   drivers/net/e1000/e1000_ich8lan.c     | 2353 +++++++++
>>   drivers/net/e1000/e1000_ich8lan.h     |  108
>>   drivers/net/e1000/e1000_mac.c         | 1921 +++++++
>>   drivers/net/e1000/e1000_mac.h         |   84
>>   drivers/net/e1000/e1000_main.c        | 1002 ++--
>>   drivers/net/e1000/e1000_manage.c      |  387 +
>>   drivers/net/e1000/e1000_manage.h      |   83
>>   drivers/net/e1000/e1000_nvm.c         |  860 +++
>>   drivers/net/e1000/e1000_nvm.h         |   61
>>   drivers/net/e1000/e1000_osdep.h       |   56
>>   drivers/net/e1000/e1000_param.c       |  115
>>   drivers/net/e1000/e1000_phy.c         | 1932 +++++++
>>   drivers/net/e1000/e1000_phy.h         |  157 +
>>   drivers/net/e1000/e1000_regs.h        |  236 +
>>   32 files changed, 18538 insertions(+), 13160 deletions(-)
> 
> Is lots of little files really progress?
> 

I can think of a few files that we could merge myself, but we really wanted to get away 
from the two large (e1000_hw) files that we had, which was far worse.

We're open to suggestions as to reduce the amount of files, but since e1000 has it's own 
subdirectory, and supports a large amount of files, I think we're in the right direction 
with the amount. We approached it this from a rather superfluous amount of files 
standpoint knowing we can merge some later anyway.

One thing we've contemplated ourselves was to merge the smaller .h files into the .c 
files where applicable, so your comment goes duly noted

Thanks,

Auke