I think I bricked it (EFI flash fail)


Rendering Error in layout Widget/Social: Call to a member function exists() on null. Please enable debug mode for more information.
More
8 years 1 month ago - 8 years 1 month ago #2648 by gdub
Early 2011 MBP A1278

So I tried my first EFI flash, and let's just say it did NOT go according to plan. I followed the tutorial, all went well until I wrote the modified dump back to the chip. Turned on the MBP and held command+S for SU mode, but the only thing that happened was the screen stayed black with the sleep light on steady and kinda dim.

I figured I would try re flashing the old dump back to the chip so I could see if it would start that way, but I can't erase the chip at this point. The Pi can read it with no problem, so I know the connection is good, but the erase fails. It tries 4 times then stops. Not real sure how to proceed at this point. I'm hoping you guys may have some pointers. I suppose if all else fails, I could yank an EFI from a donor and try again, but I'd rather not do that. Otherwise, I'll chalk it up to a learning experienc and use it for parts.

What do you guys think? Thanks.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2649 by CygnusX1
You didn't need to flash the chip on that 2010 model. All you needed to do was change the memory size and the password would have been gone.
That means if you have 4GB, take 2GB out, so the amount of RAM installed is different. Clear the PRAM by holding cmd+opt+p+r and power the Mac on. Keep holding those keys until the system reboots 3 times. Replace the ram and you are good to go.

If I helped you buy me a latte!
Last edit: 8 years 1 month ago by CygnusX1.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2670 by thaGH05T
Do not erase the chip at all, just flash the original back to it. Post the firmware here and I can tell you the passcode off the bat. I have a tutorial on pre 2011 macs.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2671 by gdub
It's actually an early 2011, sorry. Was tired when I posted lol. Anyway, I tried reflashing original w/o erasing but it automatically comes up as erase failed, even though there is no -E in the cmd.

I'm a pretend Apple Surgeon

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2672 by gdub
It's an early 2011, and I actually tried the RAM thing with no luck. A funny thing I noticed, which may be normal is the $SVS was present in the modified dump read, even though I nulled it all out. Is that the issue? It says $SVS¸....Zþþ.... Then the y's? It's the same on my clean dump as well, which tells me I either missed something, or for some reason notepad added it back in, which makes no sense at all.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2675 by thaGH05T
I need to see the full error for the command to flash the mac. Also the second $SVS area needs to be left untouched.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2676 by gdub

thaGH05T wrote: I need to see the full error for the command to flash the mac. Also the second $SVS area needs to be left untouched.


I believe I only modified the first instance, but not positive. I will try running it again and post complete error output here. Thank you.

I'm a pretend Apple Surgeon

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2680 by gdub
pi@raspberrypi:~ $ sudo flashrom -w ~/efi/read2.bin -V -p linux_spi:dev=/dev/spidev0.0 -c "MX25L6406E/MX25L6408E"
flashrom v0.9.9-rc1-r1944 on Linux 4.1.17-v7+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

flashrom was built with libpci 3.2.1, GCC 4.9.2, little endian
Command line (7 args): flashrom -w /home/pi/efi/read2.bin -V -p linux_spi:dev=/dev/spidev0.0 -c MX25L6406E/MX25L6408E
Calibrating delay loop... OS timer resolution is 2 usecs, 441M loops per second, 10 myus = 11 us, 100 myus = 100 us, 1000 myus = 1483 us, 10000 myus = 9854 us, 8 myus = 9 us, OK.
Initializing linux_spi programmer
Using device /dev/spidev0.0
The following protocols are supported: SPI.
Probing for Macronix MX25L6406E/MX25L6408E, 8192 kB: probe_spi_rdid_generic: id1 0xc2, id2 0x2017
Found Macronix flash chip "MX25L6406E/MX25L6408E" (8192 kB, SPI) on linux_spi.
Chip status register is 0x00.
Chip status register: Status Register Write Disable (SRWD, SRP, ...) is not setpi@raspberrypi:~ $ sudo flashrom -w ~/efi/read2.bin -V -p linux_spi:dev=/dev/spidev0.0 -c "MX25L6406E/MX25L6408E"
flashrom v0.9.9-rc1-r1944 on Linux 4.1.17-v7+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org


Chip status register: Bit 6 is not set
Chip status register: Block Protect 3 (BP3) is not set
Chip status register: Block Protect 2 (BP2) is not set
Chip status register: Block Protect 1 (BP1) is not set
Chip status register: Block Protect 0 (BP0) is not set
Chip status register: Write Enable Latch (WEL) is not set
Chip status register: Write In Progress (WIP/BUSY) is not set
This chip may contain one-time programmable memory. flashrom cannot read
and may never be able to write it, hence it may not be able to completely
clone the contents of this chip (see man page for details).
Reading old flash chip contents... done.
Erasing and writing flash chip... Trying erase function 0... 0x000000-0x000fff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x00000fff: 0xd0
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 1... 0x000000-0x00ffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x0000ffff: 0x9ecb
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 2... 0x000000-0x00ffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x0000ffff: 0x9ecb
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 3... 0x000000-0x7fffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x007fffff: 0x44eb2e
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 4... 0x000000-0x7fffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x007fffff: 0x44eb2e
ERASE FAILED!
Looking for another erase function.
No usable erase functions left.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... done.
Good, writing to the flash chip apparently didn't do anything.
Please check the connections (especially those to write protection pins) between
the programmer and the flash chip. If you think the error is caused by flashrom
please report this on IRC at chat.freenode.net (channel #flashrom) or
mail , thanks!


That's what I get when I try to write original dump back to chip.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by thaGH05T.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2710 by thaGH05T
you have compiled an old version of flashrom and need to update. I would uninstall everything and then update the pi as in the video. Then you can reinstall from sources. if you follow the video, you cannot go wrong.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2714 by gdub

thaGH05T wrote: you have compiled an old version of flashrom and need to update. I would uninstall everything and then update the pi as in the video. Then you can reinstall from sources. if you follow the video, you cannot go wrong.


I did use the video (which is awesome BTW) as a reference when I set up my Pi, as well as for the flash procedure. The only difference is the command for my chip which flashrom wouldn't recognize it unless I put that in. I remember doing update for something I just can't remember what. I will try it and see what happens. It's just weird because after I did the first flash, it came back as verified. I thought all had gone well. There were no errors or anything. Thank you for taking the time to help me out.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2726 by thaGH05T
I know, but your flashrom is compiled as a much earlier version. If you follow my above instructions your issues will be resolved likely.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2737 by gdub

thaGH05T wrote: I know, but your flashrom is compiled as a much earlier version. If you follow my above instructions your issues will be resolved likely.


I have a Pi 2. Is it possible it didn't update correctly because the instructions in the video are for Pi B?

I'm a pretend Apple Surgeon

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2738 by thaGH05T
No, the update you are doing is to the ARM operating system. All the commands are the same.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2739 by gdub
Well, I removed everything and re-installed/updated and still get the same error code. Flashrom version is: 0.9.9-rc1-r1948 which should be the latest version.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2740 by thaGH05T
Please post your flashrom output again in the code bbcode brackets. i will look again.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2742 by gdub
Here it is. Took me a minute to figure pout the bbCode function lol.....

pi@raspberrypi:~ $ sudo flashrom -w ~/efi/read3.bin -V -p linux_spi:dev=/dev/spidev0.0 -c "MX25L6406E/MX25L6408E"
flashrom v0.9.9-rc1-r1948 on Linux 4.1.18-v7+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

flashrom was built with libpci 3.2.1, GCC 4.9.2, little endian
Command line (7 args): flashrom -w /home/pi/efi/read3.bin -V -p linux_spi:dev=/dev/spidev0.0 -c MX25L6406E/MX25L6408E
Calibrating delay loop... OS timer resolution is 4 usecs, 254M loops per second, delay more than 10% too short (got 87% of expected delay), recalculating... 265M loops per second, delay more than 10% too short (got 89% of expected delay), recalculating... 254M loops per second, delay more than 10% too short (got 87% of expected delay), recalculating... 289M loops per second, 10 myus = 11 us, 100 myus = 98 us, 1000 myus = 965 us, 10000 myus = 9674 us, 16 myus = 17 us, OK.
Initializing linux_spi programmer
Using device /dev/spidev0.0
The following protocols are supported: SPI.
Probing for Macronix MX25L6406E/MX25L6408E, 8192 kB: probe_spi_rdid_generic: id1 0xc2, id2 0x2017
Found Macronix flash chip "MX25L6406E/MX25L6408E" (8192 kB, SPI) on linux_spi.
Chip status register is 0x00.
Chip status register: Status Register Write Disable (SRWD, SRP, ...) is not set
Chip status register: Bit 6 is not set
Chip status register: Block Protect 3 (BP3) is not set
Chip status register: Block Protect 2 (BP2) is not set
Chip status register: Block Protect 1 (BP1) is not set
Chip status register: Block Protect 0 (BP0) is not set
Chip status register: Write Enable Latch (WEL) is not set
Chip status register: Write In Progress (WIP/BUSY) is not set
This chip may contain one-time programmable memory. flashrom cannot read
and may never be able to write it, hence it may not be able to completely
clone the contents of this chip (see man page for details).
Reading old flash chip contents... done.
Erasing and writing flash chip... Trying erase function 0... 0x000000-0x000fff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x00000fff: 0xd0
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 1... 0x000000-0x00ffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x0000ffff: 0x9ecb
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 2... 0x000000-0x00ffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x0000ffff: 0x9ecb
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 3... 0x000000-0x7fffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x007fffff: 0x44eb2e
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Trying erase function 4... 0x000000-0x7fffff:EFAILED at 0x00000010! Expected=0xff, Found=0x5a, failed byte count from 0x00000000-0x007fffff: 0x44eb2e
ERASE FAILED!
Looking for another erase function.
No usable erase functions left.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... done.
Good, writing to the flash chip apparently didn't do anything.
Please check the connections (especially those to write protection pins) between
the programmer and the flash chip. If you think the error is caused by flashrom
please report this on IRC at chat.freenode.net (channel #flashrom) or
mail , thanks!

I'm a pretend Apple Surgeon

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2751 by thaGH05T
Can you post pictures of your setup? Also, did you place a 3.3v wire on the WP pin?

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2756 by gdub
All wires are hooked up according to gpio pinout. Should WP NOT be hooked up? NOTE: My wire colors will not exactly match tutorial. Purple is 3.3v Hold and WP are black and gray and are piggybacked on purple 3.3v.


I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #2781 by thaGH05T
hmm, it looks as though this is correct, but that twisted wire to the 3.3v line is a mess. I am guessing you still have an issue with voltage drop. I would redo that and test voltage to all pins connected to 3v3. Also it would be a good idea to use a 2 amp power supply for the Pi.

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago - 8 years 1 month ago #2782 by gdub

thaGH05T wrote: hmm, it looks as though this is correct, but that twisted wire to the 3.3v line is a mess. I am guessing you still have an issue with voltage drop. I would redo that and test voltage to all pins connected to 3v3. Also it would be a good idea to use a 2 amp power supply for the Pi.


It is a mess. I have already ordered new test wires as the ones that came with the Pi were m/f. I am running 2A power supply to Pi. I DID fix the "twisted wire" issue by making a more solid connection for the Hold and WP to the 3.3v line, but still had the same issue. I'm wondering if hooking all 3 of those to that line is drawing too much, which in turn is causing the voltage drop. Should the WP wire be hooked up or no? The tutorial said usually not needed. I have tested with WP as well as Hold unhooked. Chip is not found with Hold unhooked, but seems OK with WP unhooked.

I'm a pretend Apple Surgeon
Last edit: 8 years 1 month ago by gdub.

Please Log in or Create an account to join the conversation.

Who's Online

We have 646 guests and no members online

N00BZ

  • ljamal
  • ljamal74
  • mikeg2atest
  • ducchinhbui
  • anjarezt

Cookies