lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 9 Sep 2008 16:26:35 +0100
From:	Steve.Glendinning@...c.com
To:	Guennadi Liakhovetski <g.liakhovetski@....de>
Cc:	netdev@...r.kernel.org, Ian.Saturley@...c.com
Subject: Re: Extend smc911x to support LAN921x chips - differences?

Hi Guennadi,

> I have to support the LAN9215 chip from SMSC under Linux. Of course, 
there 
> is the manufacturer provided smsc911x driver, that supports both chip 
> families, but I would prefer to extend the mainline smc911x driver to 
also 
> support 921x. I have both datasheets, they are freely downloadable from 
> SMSC site, and I have both drivers, but they are absolutely different. 
To 
> make my decision and the work easier - maybe someone knows from the top 
of 
> their head, what the relevant differences between the chips are?
> 
> The vendor driver does not really differentiate between the chips. It 
does 
> read the chip version, and sets the "generation" variable, but then that 

> variable is only used once to rule out the oldest chips, which anyway 
are 
> not supported by smc911x. So I tried the in-kernel driver with only 
added 
> chip IDs added, it can access registers, read and write the MAC-address, 

> interrupts are generated too, but so far I see nothing on the wire, and 
> the PHY reports "link down".

Did you have the in-tree driver succesfully working with LAN9115?

The only hardware difference between the two is that LAN921[5678] has an
Auto-MDIX PHY.  This adds a configuration bit in one of the 
vendor-specific
PHY registers to force the feature off, but it defaults to Auto-MDIX 
enabled.
All of the SCR and MAC registers (and the remaining PHY registers) are 
*identical*, so any working driver should just need the ID register
changing to recognise the newer part.

Early revisions of LAN911X had a hardware bug which is most commonly
experienced when joining/leaving multicast groups.  The smsc911x driver
contains a workaround for this, but the in-tree driver does not.  LAN921X
came after this was fixed in hardware, so this workaround is not 
necessary.

The vast majority of users i've worked with have ended up using the
out-of-tree smsc911x driver, as it "just works" on many platforms.
I'll be re-submitting another candidate when I've finished working on the
LAN9500 USB ethernet driver, but for now the latest submission:

http://marc.info/?l=linux-netdev&m=121240395122475&w=2

Regards,
--
Steve Glendinning
SMSC GmbH
m: +44 777 933 9124
e: steve.glendinning@...c.com

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ