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>] [day] [month] [year] [list]
Date:	Thu, 15 Sep 2011 22:20:31 -0700
From:	John Crosbie <john@...elfore.com>
To:	steve.glendinning@...c.com, netdev@...r.kernel.org
Subject: LAN9514 eeprom problems

Steve,

I am working on an ARM7 board that contains a LAN9514 with 93LC66A
eeprom. The Linux kernel version is 2.6.32.  I am seeing problems
programming the eeprom with ethtool.

If I read then it works as expected:

ethtool -e usb0
will give 512 ff's

Then I issue the command:

ethtool -E usb0 magic 0x9500 offset 0 length 1 value 0xdd

and get:
[   72.779431] usb0: eeprom: EWEN a0000000
[   72.784211] usb0: eeprom ready
[   72.818265] usb0: EEPROM read operation timeout val=30000400
Cannot set EEPROM data: Input/output error

The 1st two kernel messages have been added by me along with printing the value.
I can see with a o'scope that the signalling at the chip looks good
but it appears that the 9514 returns timeout before the 93LC66 has
finished its writing busy cycle.
After doing this, if I read again then I get a timeout again:

root@...5:~# ethtool -e usb0
[   95.889447] usb0: EEPROM read operation timeout val=00000400
Cannot get EEPROM data: Input/output error

I have to reboot to get read to work again.

My problem is that I cannot find any register level specs for the
9514.  I have the data sheet and the software manual.  The datasheet
describes the hardware pins and the software manual describes the
device drivers but there is a big document missing inbetween these
two.
I have seen that the driver provided on the SMSC website performs many
retries that the kernel.org driver does not when reading and writing
registers.  Are these really required.  Any suggestions/pointer would
be appreciated.

Regards,

John Crosbie
Excelfore
--
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