Subject: Re: [PATCH 1/2] add driver for enc28j60 ethernet chip

From: Jeff Garzik <[email-masked]>
Date: Mon, 17 Dec 2007 18:49:14 -0500

Claudio Lanconelli wrote:
> These patches add support for Microchip enc28j60 ethernet chip 
> controlled via SPI.
> I tested it on my custom board (S162) with ARM9 s3c2442 SoC.
> Any comments are welcome.
> 
> Signed-off-by: Claudio Lanconelli <[email-masked]>

comments:

* overall:  a clean driver that looks mostly acceptable, good work

* use stats in net_device rather than defining your own

* use ethtool rather than 'full_duplex' variable to select duplex

* [suggestion but not requirement] kernel prefers "u8" and "u32" types 
to the C99 types uint8_t or uint32_t

* remove the 'inline' markers from functions, and let the compiler make 
the decision

* udelay() in enc28j60_phy_write() -- and any similar code pattern -- 
may not actually delay for the specified amount of time, when you 
consider that writes may be posted.  normally a read will flush a write.

* Why do interrupt work in a kernel thread?  Your comment says you 
cannot, but does not explain.

* should use NAPI

* should be able to program multicast list while everything is active