Hello i2c gurus, I have a machine which has the AT24C64C eeprom chip, I have been trying to write to it via i2c and have been having issues on CentOS5.3 as well as "Red Hat Enterprise Linux Server release 6.0 Beta (Santiago)". I can write to the EEPROM succesfully when I use Ubuntu10.04LTS as well as upstream kernel v2.6.35 compiled from source on the same machine. While looking for patches, I came accross https://bugzilla.redhat.com/show_bug.cgi?id=182687 and adding an extra delay in the piix4_transaction function fixes the problem for me as well. Also it seems that the read operation to the chip succeeds, its only the write that fails consistently. If I try writes in a loop, it succeeds once in about 10-13 tries. I think the problems are related, but any pointers would be appreciated. I am pasting information about my machine, please let me know if you guys needs any more information Thanks --Munir Steps to repro: ============== To test I have been using the eeprog program (http://codesink.org/eeprog.html) Execute the following command to write to eeprom [root@localhost eeprog-0.7.6]# echo "MMMMMM" | ./eeprog -16 -w 0x0 /dev/i2c-0 0x51 -f eeprog 0.7.6, a 24Cxx EEPROM reader/writer Copyright (c) 2003-2004 by Stefano Barbato - All rights reserved. Bus: /dev/i2c-0, Address: 0x51, Mode: 16bit Writing stdin starting at address 0x0 ..Error i2c_write_3b: No such device or address Error at line 150: write error Information about the server: ============================ [root@localhost eeprog-0.7.6]# lsmod Module Size Used by i2c_dev 8697 0 autofs4 27683 3 nfs 348825 8 lockd 73984 1 nfs fscache 46761 1 nfs nfs_acl 2677 1 nfs auth_rpcgss 44862 1 nfs sunrpc 241694 27 nfs,lockd,nfs_acl,auth_rpcgss cpufreq_ondemand 10382 8 powernow_k8 16298 1 freq_table 4847 2 cpufreq_ondemand,powernow_k8 ipv6 320850 54 dm_mirror 14003 0 dm_region_hash 12200 1 dm_mirror dm_log 10088 2 dm_mirror,dm_region_hash edac_core 46087 0 edac_mce_amd 8949 0 i2c_piix4 12574 0 i2c_core 31274 2 i2c_dev,i2c_piix4 sg 30154 0 shpchp 33448 0 e1000e 137118 0 ext3 133453 3 jbd 54576 1 ext3 mbcache 7918 1 ext3 sd_mod 36960 5 crc_t10dif 1507 1 sd_mod ata_generic 3611 0 pata_acpi 3667 0 pata_atiixp 4177 0 ahci 38859 4 mpt2sas 151535 0 scsi_transport_sas 35036 1 mpt2sas raid_class 4738 1 mpt2sas dm_mod 74162 2 dm_mirror,dm_log [root@localhost eeprog-0.7.6]# lspci -nvv -s 00:14.0 00:14.0 0c05: 1002:4385 (rev 3d) Subsystem: 1002:4385 Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium>TAbort-SERR-