Jump to content

Google Pixel C (google-smaug)

From postmarketOS Wiki
Google Pixel C
CHANGE_ME
CHANGE_ME
Manufacturer Google
Name Pixel C
Codename google-smaug
Released 2015
Hardware
Chipset Nvidia Tegra X1
CPU Quad-core 1.9 GHz Cortex-A57
GPU Maxwell
Display 2560x1800 IPS LCD
Storage 32/64 GB
Memory 3 GB
Architecture aarch64
Software
Original software Android 8.1.0
FOSS bootloader partial
postmarketOS
Category testing
Pre-built images no
Mainline yes
Features
Flashing
Works
USB Networking
Broken
Internal storage
No data
SD card
No data
Battery
No data
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
Works
Audio
No data
Camera
No data
Camera Flash
No data
Connectivity
WiFi
Works
Bluetooth
Works
Miscellaneous
FDE
No data
USB OTG
Partial
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data
Power Sensor
No data


Contributors

Users owning this device

  • Jja2000 (Notes: Currently trying to get this in a presentable state, have two of these (32GB/64GB))
  • Joshaspinall (Notes: Currently running Lineage Android)
  • Russanandres (Notes: ResurrectionRemix 9)


How to enter flash mode

When turned off press and hold the power button and volume down until the bootloader menu displays. Using the volume button select "Switch to fastboot mode" and press the power button.

Installation

Installation keeping Android partition table (easy way)

Easy way.

$ pmbootstrap init
$ pmbootstrap install --no-cgpt
$ pmbootstrap flasher flash_kernel
$ pmbootstrap flasher flash_rootfs --partition userdata

Installation with repartition and booting from USB (recommended way)

Warning WARNING: This part is Work In Progress, ignore it for now

Enable booting from USB

On PC:

$ wget https://dl.google.com/dl/edgedl/chromeos/recovery/chromeos_15183.78.0_trogdor_recovery_stable-channel_mp-v7.bin.zip
$ unzip chromeos_15183.78.0_trogdor_recovery_stable-channel_mp-v7.bin.zip
$ sudo losetup -Pf chromeos_15183.78.0_trogdor_recovery_stable-channel_mp-v7.bin
$ sudo cp $(findfs LABEL=ROOT-A) recovery.img
$ adb push recovery.img /sdcard/recovery.img

On device in adb shell:

$ su # assuming you have root
# cd /sdcard
# mkdir rootdir
# losetup -f recovery.img # this may throw an error, but still pass. check blkid command, make sure there is /dev/block/loop0 in the output
# mount -o ro,nosuid,nodev,relatime -t ext4 /dev/block/loop0 rootdir
# cd rootdir
# mount /sys sys
# mount /proc proc
# mount /dev dev
# mount -t tmpfs -o size=100M tmpfs tmp
# chroot . /bin/bash
# crossystem dev_boot_usb=1 dev_boot_signed_only=0 # this command enables booting from USB

Everything else is the same to Chrome OS devices except that we don't have prebuilt images yet.

Installation to USB storage

Use these commands:

$ pmbootstrap init # select google-smaug
$ pmbootstrap install --sdcard /dev/sdX # replace /dev/sdX with your storage

You can boot from USB with pressing Ctrl + U in bootloader.

Installation to eMMC

Boot pmOS from USB, connect to WiFi and install pmOS on eMMC:

$ sudo apk add pmbootstrap
$ pmbootstrap init # select google-smaug
$ pmbootstrap install --sdcard /dev/sdX # replace /dev/sdX with your storage