*

Quick hack: Removing the Chromebook Write-Protect screw

Posted on 08/03/2017 by Robert Foss

Before being able to write firmware data to any production Chromebook device, the Write-Protect screw has to be removed.

This post will look specifically at removing the WP screw from a Chell (HP Chromebook 13 G1) device, and verifying that it has been successfully removed.

To actually flash firmware to Chromebook machines, a device called a Servo is needed. While these devices aren't available publicly, they can be produced freely or possibly requested from Google if you are contributing code to the ChromiumOS project.

Removing the Write-Protect screw

WP screw on Chell Chromebook

So this is what the WP screw looks like on a Chell Chromebook. This may or may not be what you will find in other devices. But if you take a close look, you will notice that the copper pad that the the screw attaches against is split into parts that are bridged by a screw being inserted.

Disable Write-Protect

So this is the part that requires a Servo device. And a ChromiumOS checkout, for some help setting one up, have a look at my previous post.

# Go to your ChromiumOS checkout
cd /opt/chromiumos

# Enter dev environment
cros_sdk

# Set device variable
export BOARD=chell

# Connect to Chromebook using a Servo device
sudo servod -b $BOARD &

# Disable WP
# This step may vary depending on the hardware of your actual Chromebook
dut-control fw_wp:off
sudo /usr/sbin/flashrom -p ft2232_spi:type=servo-v2 --wp-disable
sudo /usr/sbin/flashrom -p ec --wp-disable

 

References

ChromiumOS Servo
Setting up a ChromiumOS dev environment

 

Thanks!

This post has been a part of work undertaken by my employer Collabora.

 

Original post

Comments (0)


Add a Comment





Allowed tags: <b><i><br>Add a new comment:


Latest Blog Posts

vkmark: more than a Vulkan benchmark

18/07/2017

Ever since Vulkan was announced a few years ago, the idea of creating a Vulkan benchmarking tool in the spirit of glmark2 had been floating…

Quick hack: Performance debugging Linux graphics on Mesa

29/06/2017

Debugging graphics performance in a simple and high-level manner is possible for all Gallium based Mesa drivers using GALLIUM_HUD, a feature…

Debian armhf VM on arm64 server

20/06/2017

At Collabora one of the many things we do is build Debian derivatives/overlays for customers on a variety of architectures including 32…

NVMe: Officially faster for emulated controllers!

13/06/2017

The feature to improve NVMe performance over emulated environments has now been officially released in the NVMe Specification Revision 1.3…

Android: NXP i.MX6 Buffer Modifier Support

05/06/2017

GPUs like Intel and Vivante support storing contents of graphical buffers in different formats. Support for describing these formats using…

Collabora contributions to GStreamer 1.12

04/05/2017

Along with the usual load of memory leaks, crashes and other bugs, Collabora's multimedia team once again contributed a number of improvements…

Open Since 2005

We use cookies on this website to ensure that you get the best experience. By continuing to use this website you are consenting to the use of these cookies. To find out more please follow this link.

Collabora Ltd © 2005-2017. All rights reserved. Website sitemap.