Difference between revisions of "Samsung Chromebook (ARM)"

From ArchWiki
Jump to: navigation, search
(Flashing non-verified U-boot: rm per template)
 
(43 intermediate revisions by 15 users not shown)
Line 1: Line 1:
[[Category:Samsung]]
+
[[Category:ARM architecture]]
{{Article summary start}}
+
[[ja:Samsung Chromebook (ARM)]]
{{Article summary text|Samsung Chromebook is a cheap, yet powerful ARM-based laptop manufactured by Samsung for Google.}}
+
{{Related articles start}}
{{Article summary heading|Related}}
+
{{Related|Chromebook}}
{{Article summary wiki|Beginners' Guide}}
+
{{Related articles end}}
{{Article summary end}}
 
 
 
 
The Samsung Chromebook (model XE303C12) is a laptop intended work in the cloud. It provides a powerful Cortex-A15 Dual Core Exynos 5 processor at 1.7 GHz with Mali-T604 GPU, 2 GiB of DDR3, 16 GiB of internal flash storage, WiFi a/b/g/n, SD and USB ports, HDMI connector and a 11.6" display. It is visually like the MacBook Air 11. With stock firmware it runs a heavily modified Gentoo-Linux, which means that nearly all the source code is [https://chromium.googlesource.com/chromiumos available] from Google. '''It is possible to install ArchLinux ARM (ALARM) on this device'''.
 
The Samsung Chromebook (model XE303C12) is a laptop intended work in the cloud. It provides a powerful Cortex-A15 Dual Core Exynos 5 processor at 1.7 GHz with Mali-T604 GPU, 2 GiB of DDR3, 16 GiB of internal flash storage, WiFi a/b/g/n, SD and USB ports, HDMI connector and a 11.6" display. It is visually like the MacBook Air 11. With stock firmware it runs a heavily modified Gentoo-Linux, which means that nearly all the source code is [https://chromium.googlesource.com/chromiumos available] from Google. '''It is possible to install ArchLinux ARM (ALARM) on this device'''.
  
More information at dedicated pages by [http://www.google.com/intl/es/chrome/devices/samsung-chromebook.html#ss-cb Google] and [http://www.samsung.com/us/computer/chrome-os-devices/XE303C12-A01US Samsung].
+
More information at dedicated pages by [http://www.google.com/intl/en/chrome/devices/samsung-chromebook.html#ss-cb Google] and [http://www.samsung.com/us/computer/chrome-os-devices/XE303C12-A01US Samsung].
  
 
== Article Preface ==
 
== Article Preface ==
This article is not meant to be an exhaustive setup guide and assumes that the reader has setup an Arch system before.  Arch newbies are encouraged to read the [[Beginners' Guide]] if unsure how to preform standard tasks such as creating users, managing the system, etc.
+
This article is not meant to be an exhaustive setup guide and assumes that the reader has setup an Arch system before.
  
{{Note|Support for the ARM architecture is provided on http://archlinuxarm.org not through posts to the official Arch Linux Forum.  Any posts related to ARM specific issues will be promptly closed per the [https://wiki.archlinux.org/index.php/Forum_Etiquette#Arch_Linux_Distribution_Support_ONLY Arch Linux Distrubution Support ONLY] policy.}}
+
{{Note|Support for the ARM architecture is provided on http://archlinuxarm.org not through posts to the official Arch Linux Forum.  Any posts related to ARM specific issues will be promptly closed per the [[Forum etiquette#Arch Linux distribution support *only*|Arch Linux Distrubution Support ONLY]] policy.}}
  
 
== Installing Arch Linux ARM ==
 
== Installing Arch Linux ARM ==
  
See the instructions at the [http://archlinuxarm.org/platforms/armv7/samsung-chromebook#qt-platform_tabs-ui-tabs2 archlinuxarm site]. This is a fully supported platform at Arch Linux ARM (wholly separate entity)
+
See the instructions at the [https://archlinuxarm.org/platforms/armv7/samsung/samsung-chromebook archlinuxarm site]. This is a fully supported platform at Arch Linux ARM (wholly separate entity)
  
 
You can install to:
 
You can install to:
Line 23: Line 21:
 
* USB 2.0 Flash stick
 
* USB 2.0 Flash stick
 
* eMMC (after installing one of the prior)
 
* eMMC (after installing one of the prior)
 
  
 
To install to SD or USB, follow the instructions linked above. To install to eMMC, install to one of the prior medias, then install to /dev/mmcblk0, a simple edit from the install instructions from SD. You must boot onto a different media prior to this however.
 
To install to SD or USB, follow the instructions linked above. To install to eMMC, install to one of the prior medias, then install to /dev/mmcblk0, a simple edit from the install instructions from SD. You must boot onto a different media prior to this however.
  
Installation to the eMMC can be removed via the USB Restore method that is a part of all Chromebook devices.
+
== Stop Here If You're Not 100% Sure==
 
 
Flashing of non-verified uboot is not required for eMMC install.
 
 
 
== Flashing non-verified U-boot ==
 
 
 
{{Warning|This process is very dangerous and shall not be carried out unless all the risks are known and understood. You are the only responsible of any damage which may occur}}
 
 
 
=== Boot process ===
 
 
 
The boot process of this Chromebook has several stages. The very first stages are burnt into the SoC (probably read-only although unconfirmed). Then, the SoC jumps to the starting of the 4 MiB SPI flash, which contains basically U-Boot.
 
 
 
This flash is split into a read-only half (first half) and read-write half. The read-only (RO) is loaded at the factory and contains several signature verifications (it is really a known-to-be-good U-Boot). The read-write (RW) is a signed U-Boot which also loads signed kernel and so on.
 
 
 
As you probably know (that's why you are reading this) you can load non-signed kernels by entering developer mode. But it has two drawbacks: you have to make a non-trivial process to install your bootloader and you have to hit Ctrl+D or Ctrl+U on every boot.
 
 
 
=== Removing RO protection ===
 
 
 
The good news is that you can disable the RO protection. The bad news is that you have to open your device. The recommended guide to open your Chromebook is the one at [http://www.ifixit.com/Teardown/Samsung+Chromebook+11.6+Teardown/12225/1 iFixit]; stop at step 4, then jump to [http://www.ifixit.com/Teardown/Samsung+Chromebook+11.6+Teardown/12225/2#s45950 step 9]. If you have a multimeter, ensure that after removal of the metallic sticker both parts of the ring are '''not''' in short-circuit.
 
 
 
Now you can write your U-Boot.
 
 
 
=== Precompiled U-Boot ===
 
 
 
Source: [https://www.dropbox.com/s/6pzvraf3ko14sz9/nv_image-snow.bin.gz nv_image-snow.bin.gz]
 
 
 
=== How to compile U-Boot ===
 
 
 
WIP
 
  
=== How to flash U-Boot ===
+
'''Installation to the eMMC can be removed via the USB Restore method that is a part of all Chromebook devices, when installing with official method.
  
WIP
+
'''Flashing of non-verified uboot is ''not required'' for eMMC install.
  
 
== Booting from SD ==
 
== Booting from SD ==

Latest revision as of 13:07, 18 September 2017

The Samsung Chromebook (model XE303C12) is a laptop intended work in the cloud. It provides a powerful Cortex-A15 Dual Core Exynos 5 processor at 1.7 GHz with Mali-T604 GPU, 2 GiB of DDR3, 16 GiB of internal flash storage, WiFi a/b/g/n, SD and USB ports, HDMI connector and a 11.6" display. It is visually like the MacBook Air 11. With stock firmware it runs a heavily modified Gentoo-Linux, which means that nearly all the source code is available from Google. It is possible to install ArchLinux ARM (ALARM) on this device.

More information at dedicated pages by Google and Samsung.

Article Preface

This article is not meant to be an exhaustive setup guide and assumes that the reader has setup an Arch system before.

Note: Support for the ARM architecture is provided on http://archlinuxarm.org not through posts to the official Arch Linux Forum. Any posts related to ARM specific issues will be promptly closed per the Arch Linux Distrubution Support ONLY policy.

Installing Arch Linux ARM

See the instructions at the archlinuxarm site. This is a fully supported platform at Arch Linux ARM (wholly separate entity)

You can install to:

  • SD Card
  • USB 2.0 Flash stick
  • eMMC (after installing one of the prior)

To install to SD or USB, follow the instructions linked above. To install to eMMC, install to one of the prior medias, then install to /dev/mmcblk0, a simple edit from the install instructions from SD. You must boot onto a different media prior to this however.

Stop Here If You're Not 100% Sure

Installation to the eMMC can be removed via the USB Restore method that is a part of all Chromebook devices, when installing with official method.

Flashing of non-verified uboot is not required for eMMC install.

Booting from SD

If you ever screw things up by burning a wrong bootloader, there is a recovery mechanism. The SoC built-in bootloader (known as BL0 and BL1) can be configured to boot from SPI, USB, SD and probably other options. This is known because of the Arndale development board (and previous Exynos models behave the same as well).

This is configured at the factory to boot from SPI, but this is done with a bunch of resistors located at the bottom of the PCB (link to image). User (name) experimented and got the working configuration (link to image).

Warning: If you are unsure about how to short-circuit pads, you should definitely go away and experiment a bit with other electronics. A wrong short-circuit may permanently damage your board.

By short-circuiting the pads as per the diagram linked, your SoC will boot from SD. You have to (confirm this and complete the information) load a U-Boot with BL2 incorporated.

Related Links