Linux Kernel 3.18-rc5
Status
What currently works in Linux mainline:UART
SPI
I2C
GPIOs / LEDs / IR
PWM
USB
SD/MMC
Ethernet
Wifi
Bluetooth
What remains to be done:DRM Display driver / LCD controller
HDMI drivers (ITE66121 / RK616)
TV OUT drivers (RK1000)
NAND flash support
Requirements
Ubuntu 14.10 / GCC 4.9+ (GCC 4.8 is not supported)sudo apt-get install git build-essential gcc-arm-linux-gnueabihf lzop libncurses5-dev libssl-dev bc
Get the source code
Get linux-next kernel tree (stable branch), default config and updated device-tree.
Build kernel
We have to build two files:zImage (the kernel)
rk3188-radxarock.dtb (the device tree blob)export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-make rockchip_defconfig
make -j8 zImage dtbs
Create boot image
Install mkbootimg if you don't have it on your system.git clone https://github.com/neo-technologies/rockchip-mkbootimg.git
cd rockchip-mkbootimg
make
sudo make install
cd ..
We need to append the device tree blob to zImage (CONFIG_ARM_APPENDED_DTB option) until we can use U-Boot device tree support.cat arch/arm/boot/zImage arch/arm/boot/dts/rk3188-radxarock.dtb > zImage-dtb
Create the boot.img using mkbootimg (Rockchip version).mkbootimg --kernel zImage-dtb --ramdisk /dev/null -o boot.img
Flash parameter and boot image
Flash parameter and boot.img using rkflashtoolrkflashtool P < parameter_linux_sd
rkflashtool w boot < boot.img
rkflashtool b
Notes
Install Rootfs in first partition of SD card
Your rootfs should be in ext4 format. It will be loaded from /dev/mmcblk0p1 by default.
Wireless
The Realtek wifi chipsets require firmwares to be installed in /lib/firmware/rtlwifi
You can get them by installing the linux-firmware package from your Linux distributionsudo apt-get install linux-firmware
Bluetooth
The rtl8723au_bt driver is not in the mainline kernel yet, but you can build it this way:
Copy the firmware files and rtk_btusb.ko into your rootfs:8723A/rtl8723a_fw -> /lib/firmware/rtl8723a_fw
8723B/rtl8723b_fw -> /lib/firmware/rtl8723b_fw