March 08, 2017
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.
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.
# 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
This post has been a part of work undertaken by my employer Collabora.
Introducing cmtp-responder - a permissively licensed Media Transfer Protocol (MTP) responder implementation which allows embedded devices…
Up until now, talking in-depth about userspace tracing was deliberately avoided because it merits special treatment, hence this part devoted…
After a successful team effort, the patch enabling the Chromium Embedded Framework (CEF) Ozone builds to run with different platform backends,…
Now that we've studied the mainstream way of developing and using eBPF programs on top of the low-level VM mechanisms, we'll look at projects…
A previous post introduced the SPURV Android compatibility layer for Wayland based Linux environment. In this post, we're going to dig into…
In part 1 and 2 of this series, we took a condensed in-depth look at the eBPF VM. In part 3, we define the high-level components of an eBPF…