The following article will explain how to prepare a bootable microSD card with Tizen:Common for the open source hardware developer board Radxa Rock. This is a single board computer with Rockchip RK3188 SoC that features a quad core ARM Cortex-A9 @ 1.6 Ghz and Mali400-mp4 GPU. It should be possible to apply the same tutorial with some minor modifications for other devices with RK3188.
Tizen-rockchip
Tizen-rockchip is an open source project which offers configuration files and tutorials for porting Tizen:Common and other Tizen profiles to devices with Rockchip SoC. The first supported device is Radxa Rock.
Tizen:Common Image for Radxa Rock
Tizen:Common image for Radxa Rock is available for download here. The image should be used with HDMI HD (720p) monitor and it includes:
- Linux kernel 3.0.36+ for Rockchip
- Proprietary bootloader for Rockchip
- Tizen:Common image for ARMv7
- Wayland
- Weston
Replace X with the letter corresponding to the micro SD card and execute the following commands to copy the image on micro SD card using a personal computer with Ubuntu (another Unix-like OS or Linux distribution):
umount /dev/sdX*
tar -jxvf radxa-rock-tizen-common-20141116.tar.bz2
sudo dd if=radxa-rock-tizen-common-20141116.img of=/dev/sdX
sync
Login as root using password tizen.
Building Tizen:Common for Radxa Rock from Scratch
Perform the following actions if you want to create your own Tizen:Common image for Rockchip RK3188 devices from scratch. Pay attention that the instructions are for advanced users only!
- Clone the Linux kernel and its modules for Rockchip.
git clone -b radxa-stable-3.0 https://github.com/radxa/linux-rockchip.git
- Go the directory linux-rockchip
cd linux-rockchip
- Create a configuration depending the hardware version of your Radxa board. For Rock is pro(Mid 2014) or the new lite(Mid 2014):
make radxa_rock_pro_linux_defconfig For Radxa Rock full version(2013) or the old lite(2013): make radxa_rock_linux_defconfig
- Build the Linux kernel for Rockchip devices:
make -j 8 kernel.img
- Build kernel modules:
mkdir modules
make INSTALL_MOD_PATH=./modules modules modules_install
- Build Tizen:Common image for ARMv7 from scratch or download the image available for Sunxi devices.
- Prepare bootable micro SD card for Radxa Rock. You can do it using fdisk. Alternatively you can download the ubuntu image provided by Ian Morrison and after that to replace the rootfs with Tizen:Common. Make sure that weston is using frame buffer as explained at this article.
- Copy the bootloader and the kernel to partition /dev/sdX of the micro SD card following these instuctions.
- Copy the Tizen:Common to the partition /dev/sdX1 of the micro SD card using dd. Pay attention that the micro SD card should be unmounted before running dd. It is highly recommended to execute sync after dd.
- Mount the micro SD card and remove the line about boot from /etc/fstab.
- Copy kernel modules.
- Plug the microSD card into Radxa Rock and turn on the device.
- Login as root using password tizen and make sure that correct repository is configured. For example:
zypper addrepo http://download.tizen.org/snapshots/tizen/common/latest/repos/arm-wayland/packages/ common-wayland-armv7l
- Download the source code of fbset:
wget https://launchpad.net/ubuntu/+archive/primary/+files/fbset_2.1.orig.tar.gz
- Install packages make, gcc, bison, and flex:
zypper install make
zypper install gcc
zypper install bison
zypper install flex
- Build fbset from source and install it:
make install
- Create file /etc/systemd/system/fbset.service to configure a systemd service that sets the frame buffer resolution before starting weston with the following configuration:
[Unit]
Description=Framebuffer resolution
Before=display-manager-run.service
[Service]
User=display
ExecStartPre=/sbin/fbset -a -xres 1280 -yres 720 -vxres 1280 -vyres 720
ExecStart= /bin/echo 1 > /sys/class/graphics/fb0/enable
StandardInput=tty
TTYPath=/dev/tty7
[Install]
WantedBy=graphical.target
- Enable the unit to be started at boot time:
systemctl enable fbset
- Reboot the board.
Troubleshooting
If you get a blank screen, try to fix the display with the following command:
echo 1 > /sys/class/graphics/fb0/enable
For more information regarding the display options and supported resolutions please have a look at Radxa Rock display guide.
See Also
How to adapt Tizen:Common ARM images to boot renesas rcar
Booting Linux on Radxa Rock
Boot from SD card on Radxa Rock
Linux-rockchip
Tizen-sunxi
Tizen Wiki: ARM
|