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.
Syzkaller is much needed tool for Linux kernel testing and debugging. With some work, it can also be enhanced to find bugs in specific drivers,…
Previously, we discussed about how Rust can be a great language for embedded programming. In this article, we'll explain an easy setup to…
Adaptive streaming is a technique to provide flexibility and scalability by offering variable bit-rate streams to the client. Here's a quick…
With only free software, a Mali G31 chip can now run Wayland compositors with zero-copy graphics, including GNOME 3. We can run every scene…
Device drivers can support more revisions and SoC platforms by abstracting away specific hardware interface layouts. Let's examine a specific…
gst-build is one of the main build systems used by the community to develop the GStreamer platform. In my last blog post, I presented gst-build…