Stuff for Asus Infinity tf700t tablet
TODO
- Reboot in APX mode (Power+VolUp)
- Connect tf700 to usb
- Load bootloader through whelle:
- Get backup:
- Also you can get other partitions with android:
- Go to root mode:
- $ su
- Try to get locked information:
- If you see:
- Non-zero bytes from 0x00000000 to 0x00000020 - you have unlocked bootloader and can continue backup
- Zero bytes from 0x00000000 to 0x00380000 - you have locked or nvflashed (AndroidRoot) bootloader and can't continue this backup
- Get partitions:
- Get kernel source from Hundsbuah
- $ git clone git://github.com/Hundsbuah/tf700t_kernel.git source/kernel/src
- Get linaro armhf gcc 4.7 toolchain from Linaro release site
- Unpack it to source/toolchain dir:
- $ tar xvf gcc-linaro-arm-linux-gnueabihf-*.tar.bz2 --strip-components=1 -C source/toolchain
- Set need environment:
- $ export KERNEL_OUT=../out MODULES_OUT=../out_modules CROSS_COMPILE=../../toolchain/bin/arm-linux-gnueabihf- ARCH=arm
- Build kernel and install modules:
- $ cd source/kernel/src && make -j4 O=$KERNEL_OUT zImage && make -j4 modules O=$KERNEL_OUT DESTDIR=$MODULES_OUT && make -j4 modules_install O=$KERNEL_OUT INSTALL_MOD_PATH=$MODULES_OUT ; cd ../../..
- Copy modules to Multi:
- $ rm -rf boot/img/ramdisk/lib/modules && cp -a source/kernel/out_modules/lib/modules boot/img/ramdisk/lib/
- Install abootimg tool:
- Prepare ramdisk:
- $ rm -rf boot/img/ramdisk; cp -af boot/ramdisk/stock boot/img/ramdisk && cp -af boot/ramdisk/multi/* boot/img/ramdisk/
- Make ramdisk:
- $ cd boot/img/ramdisk && find | cpio -H newc -o | lzma -9 > ../initrd.img && cd ../../..
- Build boot image:
- $ abootimg --create boot/img/boot.img -k source/kernel/out/arch/arm/boot/zImage -f boot/bootimg.cfg -r boot/img/initrd.img
- Init blobtools:
- $ git submodule update --init tools/blobtools
- Build blobtools:
- $ cd tools/blobtools && make && cd ../..
- Prepare blob file:
- $ tools/blobtools/blobpack boot/img/boot.blob.tosign LNX boot/img/boot.img
- Prepend header of the blob, thanx that:
- $ echo -ne "-SIGNED-BY-SIGNBLOB-\0\0\0\0\0\0\0\0" | cat - boot/img/boot.blob.tosign > boot/img/boot.blob
- Name of rootfs archive file should start with "rootfs-" string
- You can use tar.lzma (by default), tar.gz, tar.bz2, tar.xz rootfs file extensions
- If you prepared working disk.img - you can mount it and use tools/prepare_tar.sh
- Power off android
- Insert SD card into dock SD cardreader
- Connect your pad to host system by usb datacable
- Install fastboot tool:
- Power on pad and goto fastboot mode:
- Hold on Power and Volume Down buttons
- You see message and wait 5 seconds
- Now you see 3 items in menu - select fastboot by click on Volume Down
- Select fastboot mode by click on Volume Up button
- Now you're pad in fastboot mode
- Test your device:
- You will see your device in output list
- Boot with your boot image:
- Done. Device should boot your rootfs
- $ git submodule update --init source/busybox/src
- $ cd source/busybox/src
- $ export KBUILD_OUTPUT=../out ARCH=arm CROSS_COMPILE=../../toolchain/bin/arm-linux-gnueabihf-
- $ make -j4 install
- $ cd ../../..
- Prepare kernel zImage and modules
- Prepare busybox binary
- Create zip archive:
- $ tools/prepare_installer.sh installer.zip
- Get it:
- $ git clone git://gitorious.org/gabrbedd/xorg-x11-drv-mtev.git
- Unpack archive:
- $ cd xorg-x11-drv-mtev
- $ tar xvf *.tar.gz
- Patch it to current Xorg api version and add button emulation:
- $ cd xorg-x11-drv-mtev
- $ patch -p1 < ../xorg-x11-drv-mtev-0.1.13-update-code-for-xserver-1.11.patch
- $ patch -p1 < ../xorg-x11-drv-mtev-0.1.13-add-right-mouse-button-emulation.patch
- Install deps:
- $ sudo apt-get install libxi-dev
- Build & install package:
- $ dpkg-buildpackage -b -uc -rfakeroot
- $ sudo dpkg -i ../xserver-xorg-input-mtev_0.1.13_armhf.deb
- Follow this build instructions: https://wiki.ubuntu.com/Touch/Devices/tf700t