I recent attempted to update the BIOS on my netbook and bricked it. The netbook uses a MX25L4005Ahttp://pdf1.alldatasheet.com/datasheet-pdf/view/267915/MCNIX/MX25L4005AM2C-12G.htmlserial flash chip and I have a Bus Pirate that I am trying to use to verify that I can talk to the device in question. I'm using the following command:
# ./flashrom -p buspiratespi:dev=/dev/ttyUSB0 flashrom v0.9.2-r1001 on Linux 2.6.35.7 (i686), built with libpci 3.0.0, GCC 4.4.3 flashrom is free software, get the source code at http://www.flashrom.org
Calibrating delay loop... OK. Found chip "Generic unknown SPI chip (RDID)" (0 KB, SPI) at physical address 0x0. === This flash part has status NOT WORKING for operations: PROBE READ ERASE WRITE The test status of this chip may have been updated in the latest development version of flashrom. If you are running the latest development version, please email a report to flashrom@flashrom.org if any of the above operations work correctly for you with this flash part. Please include the flashrom output with the additional -V option for all operations you tested (-V, -Vr, -Vw, -VE), and mention which mainboard or programmer you tested. Thanks for your help! === No operations were specified. #
Running the same command multiple times with the -V option gives the following lines for that flash device: Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xccab Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0xa2, id2 0xb229 Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x09, id2 0x4058 Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x8a, id2 0x69bf Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x17, id2 0x344b Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x63, id2 0x45b3 Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x34, id2 0x6298 Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x80, id2 0x890 Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x46, id2 0xff21 Probing for Macronix MX25L4005, 512 KB: RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x88, id2 0xe2ef Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x31, id2 0x2603 Probing for Macronix MX25L4005, 512 KB: probe_spi_rdid_generic: id1 0x10, id2 0x60a0
I'm using the following pin configuration: Bus MX25L4005AM2C Pirate Chip Chip Pin Name Pin CLK SCLK 6 MOSI SI 5 MISO SO 2 CS* CS# 1 +3.3V Hold# 7 +3.3V VCC 8 +3.3V WP# 3 Gnd Gnd 4 All power from the board has been removed (AC, Main Battery, CMOS Battery, etc) and I have soldered in some 30ga wire to connect to the individual pins.
I'm looking for any suggestions as to what I may be doing wrong. If I need to post this in the over on the Dangerous Prototypes forums, let me know. Thanks!
-Hugh
On 10/21/2010 07:43 PM, Hugh wrote:
I recent attempted to update the BIOS on my netbook and bricked it. The netbook uses a MX25L4005A http://pdf1.alldatasheet.com/datasheet-pdf/view/267915/MCNIX/MX25L4005AM2C-12G.html serial flash chip and I have a Bus Pirate that I am trying to use to verify that I can talk to the device in question. I'm using the following command:
Are you trying this on the motherboard itself or have you removed the part? If you are on the motherboard then are you sure that the motherboard allows for in-circuit reprogramming? You have to make special provisions on the motherboard for on-board reprogramming.
If you have the part removed from your board then what speed is your spi bus clocking at? With manually wired SPI connections you may need to slow down the clock speed to make it work.
Verify your miso/mosi connections and try swapping them many times its very confusing what side is what.
On 10/21/2010 07:43 PM, Hugh wrote:
All power from the board has been removed (AC, Main Battery, CMOS Battery, etc) and I have soldered in some 30ga wire to connect to the individual pins.
I'm looking for any suggestions as to what I may be doing wrong. If I need to post this in the over on the Dang.erous Prototypes forums, let me know. Thanks!
I missed this in my first read.
I suspect that your laptop board does not have the proper isolation on the 3.3V supply. You have to power the SPI part only without powering the rest of the motherboard for ICP to work.
I'll try lifting the Vcc pin on the board tomorrow. The board does have a DEBUG_CON connector right next to the Flash chip which I suspect ties in, but as it has very fine connections and I have yet to find anyone that has made a cable to connect let alone reverse engineered the pinout, it won't do me any good. I suppose if all else fails, I can try removing the chip from the board. Thanks for suggestion!
-Hugh
On Thu, Oct 21, 2010 at 6:47 PM, Richard A. Smith richard@laptop.orgwrote:
On 10/21/2010 07:43 PM, Hugh wrote:
All power from the board has been removed (AC, Main Battery, CMOS
Battery, etc) and I have soldered in some 30ga wire to connect to the individual pins.
I'm looking for any suggestions as to what I may be doing wrong. If I need to post this in the over on the Dang.erous Prototypes forums, let me know. Thanks!
I missed this in my first read.
I suspect that your laptop board does not have the proper isolation on the 3.3V supply. You have to power the SPI part only without powering the rest of the motherboard for ICP to work.
-- Richard A. Smith richard@laptop.org One Laptop per Child
flashrom mailing list flashrom@flashrom.org http://www.flashrom.org/mailman/listinfo/flashrom
Looks like that was it. I lifted the chip's VCC from the MB and was then able to communicate and program the chip. The netbook now boots and there is great rejoicing. Thanks for the help!
-Hugh
On Thu, Oct 21, 2010 at 10:33 PM, Hugh isur.o.o.t@gmail.com wrote:
I'll try lifting the Vcc pin on the board tomorrow. The board does have a DEBUG_CON connector right next to the Flash chip which I suspect ties in, but as it has very fine connections and I have yet to find anyone that has made a cable to connect let alone reverse engineered the pinout, it won't do me any good. I suppose if all else fails, I can try removing the chip from the board. Thanks for suggestion!
-Hugh
On Thu, Oct 21, 2010 at 6:47 PM, Richard A. Smith richard@laptop.orgwrote:
On 10/21/2010 07:43 PM, Hugh wrote:
All power from the board has been removed (AC, Main Battery, CMOS
Battery, etc) and I have soldered in some 30ga wire to connect to the individual pins.
I'm looking for any suggestions as to what I may be doing wrong. If I need to post this in the over on the Dang.erous Prototypes forums, let me know. Thanks!
I missed this in my first read.
I suspect that your laptop board does not have the proper isolation on the 3.3V supply. You have to power the SPI part only without powering the rest of the motherboard for ICP to work.
-- Richard A. Smith richard@laptop.org One Laptop per Child
flashrom mailing list flashrom@flashrom.org http://www.flashrom.org/mailman/listinfo/flashrom