Jump to content

ASUS Transformer Prime (asus-tf201)

From postmarketOS Wiki
Revision as of 16:02, 22 January 2021 by IonAgorria (talk | contribs)
This device is marked as not booting.
Asus Eee Pad Transformer Prime
Manufacturer Asus
Name Eee Pad Transformer Prime
Codename asus-tf201
Released 2011
Hardware
Chipset Nvidia Tegra 3 T30
CPU Quad-core 1.3 GHz Cortex-A9
GPU GeForce ULP
Display 1280x800 Super IPS+ LCD
Storage 32/64 GB
Memory 1 GB
Architecture armv7
Software
Original software Android 3.2 to Android 4.1
postmarketOS
Category testing
Pre-built images no
Mainline yes


Contributors

  • Clamor
  • Ion Agorria

Users owning this device


Unlocking

The first step to do anything with the device is unlocking, with this device its done by sideloading the unlock apk from ASUS and clicking a few buttons in the app. The apk can be found on the ASUS support page.

Kernel status

Android kernel

Mainline (Grate)

Installation

How to enter flash modes

Turn tablet off if it is in the system. Then press POWER and VOL DOWN buttons till you feel the vibration. Then release the POWER only. You will enter the bootloader/fastboot. In bootloader you can navigate with VOL DOWN button and to choose option use VOL UP button.

Bootloader version

Latest bootloader for TF201 was 10.4.2.18 and to use pmOS you need bootloader version of 10.6.1.27.5 to reach this you can use flashable via TWRP bootloader packages.

Installation process

Note The bootloader doesn't handle flashing the boot and userdata partition correctly, the official firmware package flashes an "Android blob" to the staging partition with fastboot which triggers an flashing screen on the tablet which copies the data to the correct partitions. pmbootstrap has tools to pack and flash kernel correctly, no worries!

Preparing rootfs and flashing kernel:

$ pmbootstrap init
$ pmbootstrap install
$ pmbootstrap flasher flash_kernel

Flashing rootfs

Note This may change size of your data partition. You can fix it by resizing partition in TWRP before flashing Android.

You should proceed very carefully here.

When rootfs is larger than approx. 800 MB you can flash it to the /userdata partition ONLY, if rootfs is smaller, you can flash it to /system or /userdata.

Prerequisites: TWRP, at least version 3.3.1-0, binaries for 10.6.1.27.5 bootloader are here.

First, start TWRP (go to bootloader and choose RCK) and then continue with these instructions

(computer) $ pmbootstrap export
(computer) $ adb shell
(twrp) $ umount /dev/block/mmcblk0p1 <- unmounting /system partition
(twrp) $ umount /dev/block/mmcblk0p8 <- unmounting /data partition
(computer again) $ adb push /tmp/postmarketOS-export/asus-tf201.img /dev/block/mmcblk0p1 <- to flash rootfs to /system partition
'OR'
(computer again) $ adb push /tmp/postmarketOS-export/asus-tf201.img /dev/block/mmcblk0p8 <- to flash rootfs to /data partition

Hardware status (mainline)

Status Hardware Info
Y Booting When kernel is larger than approx 8MB, initfs must be packed directly inside kernel (not into boot.img as usual), otherwise kernel won't boot. With downstream kernel it works.
Y Panel HannStar HSD101PWW2 Rev0-A00/A01 LCD SuperIPS+ HD panel through LVDS controller.
Y HDMI output HDMI works, but output is limited by 1080p due to Tegra 3 limitations.
Y Touchscreen Used Atmel MXT768E touchscreen.
Y USB One full size USB 2.0 in dock or via 40pin adapter.
Y SD cards MicroSD card and full sized SD card (recognized as USB drive) in dock.
Y Internal memory eMMC by Kingston KE4BT5D6A or Hynix H26M64002BNR.
P GPS Broadcom GPS BCM4751 is used. Device tree has proper bindings but device itself has weak signal.
Y WiFi Uses Azurewave AW-NH615 BCM4329. Wi-Fi should work out of the box. All needed stuff is included.
Y Bluetooth Uses Azurewave AW-NH615 BCM4329B1. Works fine out of the box.
Y GPIO keys There is 3 keys on GPIO: Power, Volume up, Volume down.

Additionally GPIO-keys like are LID sensor, Power adapter 15V and Audio dock line-out detect.

Y Vibro Transformer Prime has GPIO based vibrator.
Y Dock Keyboard Keyboard and Trackpad work. It is handled via Nuvoton NPCE795LA0BX embedded controller and driver is mainlined.

Alt Gr can be used for alternate multimedia keys instead of escape, fn keys, volumes and delete. Alt GR + Lock changes the default key mode.

Y Battery/Charger Driver is based on Texas Instruments bq24725 SMBus Charge Controller driver but works through pad/dock EC. Charging and charge level of both batteries are shown correctly.
Y PMIC Transformers use Texas Instruments TPS659110 PMIC and TPS62361 core regulator.
Y Sound Sound codec is RT5631. Kernel driver and tegra_rt5631 glue driver are added to experimental branches. Sound works, ALSA configuration file is included into device package.
N Voice processor Transformers use separate Fortemedia FM34NE voice processor. No mainline driver is available. Is used for voice processing and noise cancelling. Might not be needed.
Y Thermal sensor NCT1008 ON Semiconductor LM90 series thermometer.
Y Orientation sensors Include Invensense mpu3050 gyroscope with Kionix KXTF9 accelerometer and Aichi AMI306 3-axis digital compass.
Y Light sensor Driver Dyna-Image AL3010. Brightness regulation works, install iio-sensor-proxy . It's slightly oversensitive.
N Front camera Aptina mi1040 camera sensor. Grate kernel doesn't support VI yet. Mainline linux driver exists (authored by Okias) and proper nodes are added to device tree.
N Rear camera Fujitsu MBG048 image processor. Since it is broken on most TF201 is not planned to be added to support list. If you have such a need, development is welcome. Mainline driver doesn't exist.
P ULP GeForce GPU Acceleration partially works.

See also