On Mon, Dec 16, 2013 at 9:14 AM, < BM-2cWKH3wgq8zXX9eHfba16oTc8b61ead4Yq@bitmessage.ch> wrote:
Hello flashrom developers,
I'm having trouble disabling write-protection on my Samsung Arm Chromebook. So far I've removed the metallic sticker covering the "write-protect screw hole" according to the pictures on the Chromium wiki < http://www.chromium.org/chromium-os/developer-information-for-chrome-os-devi...
.
On the Snow board, this hole ships with no screw in it.
Are you sure about that? There should be a screw there...
I guess I should not have spoken for all Snow boards, but mine certainly did not have a screw in the write-protect screw hole--only the metallic sticker. I did notice this the first time I opened it up, but I wasn't sure what to make of it.
As root in developer mode, the output of flashrom -v is "flashrom v0.9.4 : 4169bc8 ...". The first time I ran flashrom --wp-disable, I got a message saying the operation FAILED with error=1. At that point I took the board apart again and cleaned the write-protect screw hole with q-tips dipped in rubbing alcohol. When I reassembled the Chromebook and tried again with flashrom -V --wp-disable, the last few lines I receive are:
w25_set_srp0: old status: 0xb8 w25_set_srp0: new status: 0xb8 w25q_disable_writeprotect(): error=1. No -i argument is specified, set ignore_fmap. FAILED restore_power_management(): Power management enabled
As you can see, I can't seem to disable write protection on this chip. I'm running stock ChromeOS. Any idea what I might be doing wrong? Thanks in advance.
That's weird... Since you have the system taken apart already, can you try disconnecting the battery while the machine is unplugged? I'd recommend leaving it disconnected for a minute or so, the idea being to give the SPI ROM enough time to fully discharge and reset.
Thanks for responding. I took your advice and disconnected the battery for several minutes. After reassembling the board and running flashrom --wp-disable again I am receiving the same message (FAILED). flashrom --wp-status says:
WP: status: 0x00b8 WP: status.srp0: 1 WP: status.srp1: 0 WP: write protect is enabled. WP: write protect range: start=0x00000000, len=0x00200000
If you have a voltmeter handy, you can also try measuring the voltage on the /WP pin (pin 3). More details on pin configuration can be found in the datasheet: http://www.winbond-usa.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/S...
I don't have voltmeter; I'm sure I could locate one given enough time though. Do you have any other suggestions as to steps I might be overlooking here? Otherwise, what should I be looking for specifically in the Winbond data sheet?
On Mon, Dec 16, 2013 at 9:09 PM, < BM-2cWKH3wgq8zXX9eHfba16oTc8b61ead4Yq@bitmessage.ch> wrote:
As root in developer mode, the output of flashrom -v is "flashrom v0.9.4 : 4169bc8 ...". The first time I ran flashrom --wp-disable, I got a message saying the operation FAILED with error=1. At that point I took the board apart again and cleaned the write-protect screw hole with q-tips dipped in rubbing alcohol. When I reassembled the Chromebook and tried again with flashrom -V --wp-disable, the last few lines I receive are:
w25_set_srp0: old status: 0xb8 w25_set_srp0: new status: 0xb8 w25q_disable_writeprotect(): error=1. No -i argument is specified, set ignore_fmap. FAILED restore_power_management(): Power management enabled
As you can see, I can't seem to disable write protection on this chip. I'm running stock ChromeOS. Any idea what I might be doing wrong? Thanks in advance.
That's weird... Since you have the system taken apart already, can you
try
disconnecting the battery while the machine is unplugged? I'd recommend leaving it disconnected for a minute or so, the idea being to give the
SPI
ROM enough time to fully discharge and reset.
Thanks for responding. I took your advice and disconnected the battery for several minutes. After reassembling the board and running flashrom --wp-disable again I am receiving the same message (FAILED). flashrom --wp-status says:
WP: status: 0x00b8 WP: status.srp0: 1 WP: status.srp1: 0 WP: write protect is enabled. WP: write protect range: start=0x00000000, len=0x00200000
Hmmm, that looks correct for normal circumstances (with write-protection enabled). Flashrom *should* be able to clear bit 7 of SRP0, so the status should show up be 0x38 after running with --wp-disable.
Can you try running "flashrom -p host --wp-disable -V" and pasting the output on paste.flashrom.org?
If you have a voltmeter handy, you can also try measuring the voltage on
the /WP pin (pin 3). More details on pin configuration can be found in the
datasheet:
http://www.winbond-usa.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/S...
I don't have voltmeter; I'm sure I could locate one given enough time though. Do you have any other suggestions as to steps I might be overlooking here? Otherwise, what should I be looking for specifically in the Winbond data sheet?
Unfortunately I don't have many ideas here... I've only seen this once and it seemed to be a defective chip since I couldn't change the write-protect status by removing the chip and using an external programmer. (This was on a different machine, and not in a retail unit)
The only reason for failure should be if there is anything bridging the gap between the copper pads around the write-protect screw hole, thereby connecting /WP on the chip to ground. If you have a magnifying glass, can you inspect just to make sure there is nothing connecting those pads? I assume that since you cleaned the area with rubbing alcohol that there is no residue from the sticker. I'm wondering if there is a tiny bit of copper (perhaps from a manufacturing defect) bridging the gap. If so, I'll ask one of our hardware engineers if it's safe to attempt severing it or if they have any better ideas.