We will use BlankOn Linux in this tutorial.
Create a working directory, called mk809iii
mkdir mk809iii
cd mk809iii
export WORK=`pwd`
Get the kernel from https://github.com/mdamt/linux in branch mk809iii.
git clone --depth 1 https://github.com/mdamt/linux -b mk809iii
Get the toolchain to compile:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6
Now you will have two directories: linux
and arm-eabi-4.6
on the same level
Prepare the compilation and build
cd linux
cp blankon/config .config
source blankon/envsetup.sh
make blankon-rk3188_defconfig
make -z9 zImage dtbs
Adjust 9
to the number of cores of your processor.
The result is arch/arm/boot/zImage
file.
Get the base ramdisk:
cd $WORK
git clone https://github.com/mdamt/mk809iii
Copy the kernel file as kernel
:
cd $WORK/mk809iii
cp ../linux/arch/arm/boot/zImage kernel
If you have your own kernel, put it here with the name kernel
.
If your kernel is already in .img format, put it with the name kernel.img
.
Build the ramdisk image:
sudo ./build-ramdisk.sh
The result is full.img
file.
Get the bootloader: http://files.androtab.info/radxa/sdboot_rk3188_miniroot.zip
Extract and install full.img
from previous step to SD CARD.
dd if=sdboot_rk3188.img of=/dev/XXX conv=sync,fsync
dd if=parameter_fbcon.img of=/dev/XXX conv=sync,fsync seek=$((0x2000))
dd if=full.img of=/dev/XXX conv=sync,fsync seek=$((0x2000+0x4000))
Adjust /dev/XXX
to your SD card device assignment.
To be continued with the rootfs