CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors

Supported Devices


Samsung Chromebook

Author/Maintainer

Victor Martinez

Introduction

Samsung Chromebook has an Exynos 5 Dual Processor, 2 GB DDR3L RAM and 16 GB Solid State Drive.

CPU Information

processor : 0
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 48.00
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc0f
CPU revision : 4
processor : 1
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 48.00
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc0f
CPU revision : 4
Hardware : SAMSUNG EXYNOS5 (Flattened Device Tree)
Revision : 0000
Serial : 0000000000000000

boot.log

Preparation

We can do the install into a usb device (sdX) or into a SD card (mmcblk1). Let's manage it as $DEVICE$. You need to change this for your selection.

First we need to umount all devices

umount /dev/$DEVICE$*

Create a GPT partition table:

fdisk /dev/$DEVICE$
- Create an empty GTP partition table writing g
- Save changes writing w

Partition the $DEVICE$

cgpt create /dev/$DEVICE$
cgpt add -i 1 -t kernel -b 8192 -s 32768 -l Kernel -S 1 -T 5 -P 10 /dev/$DEVICE$

To create the rootfs partition, we first need to calculate how big to make the partition using information from cgpt show. Look for the number under the start column for Sec GPT table which is 15633375 in this example: We need to know where to create the second partition. We need to select the start point of the SEC GTP table. We can know this with

cgpt show /dev/$DEVICE$

Replace the XXX in this command with the number from above:

cgpt add -i 2 -t data -b 40960 -s `expr XXX - 40960` -l Root /dev/$DEVICE$

Refresh the partitions:

sfdisk -R /dev/$DEVICE$

Format the rootfs partition (look that we are using now the second partition of the $DEVICE$:

mkfs.ext4 /dev/$DEVICE$2

Installation in USB/SDCard

We need to do two steps now. First one install the kernel into the first partition of $DEVICE$ and the second one deploy the rootfs into the second partition of $DEVICE$

We use currently a prebuilt kernel (thanks to Arch linux comunnity who have built it). First we need to download it and dd directly to first partition:

WIK
wget kernel
dd if=kernel of=/dev/$DEVICE$1

For the second case, we download the optimized release for the Samsung Chromebook and modules and deploy them to the second partition

cd /tmp
wget http://resources.crux-arm.nu/releases/3.3/crux-arm-rootfs-3.3-samsung-chromebook.tar.xz
mkdir /tmp/work
mount /dev/$DEVICE$2 /tmp/work
tar pxvf crux-arm-rootfs-3.3-samsung-chromebook.tar.xz -C /tmp/work
WIK
wget modules
tar pxvf modules -C /tmp/work

Configuration

We should setup all the important files: inittab, securetty, fstab, rc.conf, net ...

Udev Rules

Add these values to /etc/udev/rules.d/50-mali.rules

KERNEL=="mali", MODE="0660", GROUP="video"

Xorg Files

Put these files into /etc/X11/xorg.conf.d/
10-evdev.conf
10-keyboard.conf
10-monitor.conf
10-quirks.conf
10-synaptics.conf
50-touchpad.conf