I tested by ./ethtool -E eth0 magic 0x9620 offset 0 length 3 value 0xf1 value 0xf2 value 0xf3 I think ethtool need [ value N ] for each byte (so need three "value xx" in above command line), am I right? Oh, I can see it goes wrong~ Thanks~ * I will go a vacation from now on, this issue will be study later. Any helpful reference implementation data is appreciated. Best Regards, Joseph CHANG System Application Engineering Division Davicom Semiconductor, Inc. No. 6 Li-Hsin 6th Rd., Science-Based Park, Hsin-Chu, Taiwan. Tel: 886-3-5798797 Ex 8534 Fax: 886-3-5646929 Web: http://www.davicom.com.tw -----Original Message----- From: Ben Hutchings [mailto:ben@xxxxxxxxxxxxxxx] Sent: Thursday, March 10, 2016 9:18 PM To: Joseph Chang; 'Joseph CHANG'; 'Peter Korsgaard'; netdev@xxxxxxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx Subject: Re: [PATCH 3/3] dm9601: add support ethtool style utility On Thu, 2016-03-10 at 20:51 +0800, Joseph Chang wrote: > I did verify to dump EEPROM data and also write EEPROM by per byte. > > 1.Plug dm9601/dm9621 adapter and has get dm9601.ko be 'insmod' to have 'eht0', > 2.Run ethtool v3.7 (as attached executable file and it's help display.) > 3. Commands: > ./ethtool -e eth0 (dump EEPROM data for all the .get_eeprom_len ) > ./ethtool -E eth0 magic 0x9620 offset 0 value 0xf1 (write 0xf1 to eeprom byte0) > ./ethtool -E eth0 magic 0x9620 offset 1 value 0xf2 (write 0xf2 to eeprom byte1) > ./ethtool -E eth0 magic 0x9620 offset 2 value 0xf3 (write 0xf3 to eeprom byte2) [...] So you only tested writing 1 byte at a time. Try again with 3 bytes and you'll see how it goes wrong. Ben. -- Ben Hutchings To err is human; to really foul things up requires a computer. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html