Is probing the flash/eeprom something thats not done yet for rtl8139's?
root@grayskull:~# flashrom -p nicrealtek flashrom v0.9.2-r1015 on Linux 2.6.17 (i686), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK. Found "Realtek RTL8139/8139C/8139C+" (10ec:8139, BDF 02:0a.0). No EEPROM/flash device found. Note: flashrom can never write if the flash chip isn't found automatically.
I ran an strace on flashrom and just before it says theres no flash device it reads /sys/bus/pci/devices/0000:02:0a.0/config is this the contents of the eeprom where the bootrom size is configured?
forcing a read works flashrom -p nicrealtek -f -r file -c SST29EE010
On Thu, May 27, 2010 at 07:21:33PM -0700, Kyle Kienapfel wrote:
Is probing the flash/eeprom something thats not done yet for rtl8139's?
root@grayskull:~# flashrom -p nicrealtek flashrom v0.9.2-r1015 on Linux 2.6.17 (i686), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK. Found "Realtek RTL8139/8139C/8139C+" (10ec:8139, BDF 02:0a.0). No EEPROM/flash device found. Note: flashrom can never write if the flash chip isn't found automatically.
I ran an strace on flashrom and just before it says theres no flash device it reads /sys/bus/pci/devices/0000:02:0a.0/config is this the contents of the eeprom where the bootrom size is configured?
forcing a read works flashrom -p nicrealtek -f -r file -c SST29EE010
Can you post the output of "flashrom -p nicrealtek -VVVV" please?
Have you checked that the file you read via forcing really contains data that makes sense (i.e. it's not just all-0xff or all-0x00)?
Uwe.
Yup, the output looks sensible
On Fri, May 28, 2010 at 12:14 AM, Uwe Hermann uwe@hermann-uwe.de wrote:
On Thu, May 27, 2010 at 07:21:33PM -0700, Kyle Kienapfel wrote:
Is probing the flash/eeprom something thats not done yet for rtl8139's?
root@grayskull:~# flashrom -p nicrealtek flashrom v0.9.2-r1015 on Linux 2.6.17 (i686), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK. Found "Realtek RTL8139/8139C/8139C+" (10ec:8139, BDF 02:0a.0). No EEPROM/flash device found. Note: flashrom can never write if the flash chip isn't found automatically.
I ran an strace on flashrom and just before it says theres no flash device it reads /sys/bus/pci/devices/0000:02:0a.0/config is this the contents of the eeprom where the bootrom size is configured?
forcing a read works flashrom -p nicrealtek -f -r file -c SST29EE010
Can you post the output of "flashrom -p nicrealtek -VVVV" please?
Have you checked that the file you read via forcing really contains data that makes sense (i.e. it's not just all-0xff or all-0x00)?
Uwe.
http://hermann-uwe.de | http://sigrok.org http://randomprojects.org | http://unmaintained-free-software.org
Am Freitag, den 28.05.2010, 00:41 -0700 schrieb Kyle Kienapfel:
Yup, the output looks sensible
I'm afread the output looks like the "write enable" pin of your EEPROM is not connected to the RTL8139 chip as it would be needed to detect, erase and write the flash rom chip. As reading just uses the "chip enable" and "output enable" pins, reading is not a problem.
This line:
Probing for SST SST29EE010, 128 KB: probe_jedec_common: id1 0x55, id2 0xaa, id1 parity violation, id1 is normal flash content, id2 is normal flash content
shows quite clear that the "read ID" command (which is delivered using a write cycle) does not reach the chip, so it returns the first two data bytes instead of vendor/product ID.
Regards, Michael Karcher
I'm getting the same error with the rtl8139b board that I used to write to the flash in the first place. I can successfully use the kernel module that ctflash has for flashing rtl8139's
On Fri, May 28, 2010 at 5:49 AM, Michael Karcher flashrom@mkarcher.dialup.fu-berlin.de wrote:
Am Freitag, den 28.05.2010, 00:41 -0700 schrieb Kyle Kienapfel:
Yup, the output looks sensible
I'm afread the output looks like the "write enable" pin of your EEPROM is not connected to the RTL8139 chip as it would be needed to detect, erase and write the flash rom chip. As reading just uses the "chip enable" and "output enable" pins, reading is not a problem.
This line:
Probing for SST SST29EE010, 128 KB: probe_jedec_common: id1 0x55, id2 0xaa, id1 parity violation, id1 is normal flash content, id2 is normal flash content
shows quite clear that the "read ID" command (which is delivered using a write cycle) does not reach the chip, so it returns the first two data bytes instead of vendor/product ID.
Regards, Michael Karcher
Am Freitag, den 28.05.2010, 10:23 -0700 schrieb Kyle Kienapfel:
I'm getting the same error with the rtl8139b board that I used to write to the flash in the first place. I can successfully use the kernel module that ctflash has for flashing rtl8139's
That's a good hint, thank you. It looks like we are still missing something the ctflash kernel module gets right.
Regards, Michael Karcher
Hi, Kyle Kienapfel schrieb:
I'm getting the same error with the rtl8139b board that I used to write to the flash in the first place. I can successfully use the kernel module that ctflash has for flashing rtl8139's
Strange, since the code in flashrom behaves almost excactly like the ctflash module.
I had timing issues with the ctflash as well; What CPU did you use for the test? My testing board has only a slow Duron 700MHz...
-- Jörg Fischer
Yesterday was an 866mhz Pentium 3 and today a Q6600 running at stock 2.4ghz
I also have a 533mhz Pentium 3 that I can assemble into a test machine for this
2010/5/28 Jörg Fischer turboj@gmx.de:
Hi, Kyle Kienapfel schrieb:
I'm getting the same error with the rtl8139b board that I used to write to the flash in the first place. I can successfully use the kernel module that ctflash has for flashing rtl8139's
Strange, since the code in flashrom behaves almost excactly like the ctflash module.
I had timing issues with the ctflash as well; What CPU did you use for the test? My testing board has only a slow Duron 700MHz...
-- Jörg Fischer
flashrom mailing list flashrom@flashrom.org http://www.flashrom.org/mailman/listinfo/flashrom
Hi, Kyle Kienapfel schrieb:
Is probing the flash/eeprom something thats not done yet for rtl8139's?
root@grayskull:~# flashrom -p nicrealtek flashrom v0.9.2-r1015 on Linux 2.6.17 (i686), built with libpci 3.0.0, GCC 4.4.3, little endian flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK. Found "Realtek RTL8139/8139C/8139C+" (10ec:8139, BDF 02:0a.0). No EEPROM/flash device found. Note: flashrom can never write if the flash chip isn't found automatically.
I ran an strace on flashrom and just before it says theres no flash device it reads /sys/bus/pci/devices/0000:02:0a.0/config is this the contents of the eeprom where the bootrom size is configured?
Look at the chip itself. If it reads RTL8139D (or newer), then flashing will NOT be possible.
If you use Linux, the "8139too" driver will tell you which chip you have. Just grep the output of "dmesg":
# dmesg |grep eth [ 4.533027] eth1: RealTek RTL8139 at 0xffffc200001e2400, 00:50:fc:94:db:05, IRQ 18 [ 4.533095] eth1: Identified 8139 chip type 'RTL-8100B/8139D'
This chip here is "RTL8139D" which does not have flash write.
Other chips w/o write may read as "RTL-8100", "RTL-8100B/8139D" or "RTL-8101".
-- Jörg Fischer
ps.