Everything for setting up a native Linux on a Lenovo A10 netbook
C Assembly C++ Objective-C Makefile Perl Other
Switch branches/tags
Nothing to show
Clone or download

README.md

lenovo-a10

Everything for setting up a native Linux on a Lenovo A10 netbook

LTSpice in wine on armhf on a Lenovo A10

###1. Kernel

Stock Kernel from Lenovo with modified defconfig to boot Linux instead of Android from eMMC flash. Keyboard and battery driver are patched:

Keyboard:

  • Use normal layout with function keys
  • Search, switch Window and ... Keys are still unchanged

Battery:

  • Reports to system as BAT0, charge and discharge current with changed sign, so battery plugins (e.g. from XFCE4) show correct data

####Building Kernel

cd kernel
ARCH=arm make rk3188_a10_linux_flash_defconfig
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make Image 

###2. WIFI Driver RTL8723AS

From https://github.com/Android4SAM/platform_hardware_realtek/tree/master/cm8723u/wlan/rtl8723A_WiFi_linux_v4.1.3_6044.20121224

Modified for rtl8723as and Lenovo A10 by Steffen Graf

####Building Kernel Module When arm-linux-gnueabihf- cross compiler is installed and kernel source is in ../kernel/ simply enter make and a kernel module will be built.

cd rtl8723as
make

###3. Bootimage Mkbootimage from https://github.com/neo-technologies/rockchip-mkbootimg is used.

Generating boot.img using compiled Kernel and prebuilt initrd including fbcon, wifi driver and nanddriver

####Building mkbootimg

cd rockchip-mkbootimg
make

####Generating Bootimage using mkbootimg

cd scripts
mkdir ../out
./make_boot_img.sh

###4. Flashtool rkflashtool from http://sourceforge.net/projects/rkflashtool/

####Building flashtool

cd rkflashtool-5.1-src
make

####Flashing the boot.img When flashing via USB:

cd scripts
./flash_usb.sh

When running the script on the A10:

cd scripts
./flash_mtd.sh

Both scripts must be run as root. To be able to flash via USB, it is necessary to enter bootloader mode. When Android is still running and developer mode is activated, this can be done with:

adb reboot bootloader

Otherwise you have to open the device and short the recovery pad to GND and press reset.

###5. Fixing Standby To wakeup from pm-suspend add following to /etc/pm/sleep.d/10_standby

#!/bin/bash
PATH=/sbin:/usr/sbin:/bin:/usr/bin

case "${1}" in
        hibernate|suspend)
                rmmod rtl8723as
                ;;
        resume|thaw)
                echo on > /sys/power/state
                sleep 3
                modprobe rtl8723as
                ;;
esac

The device will wake up on every keypress.

Good luck!