目前Tizen项目是发行公司的图片,所以让我向您介绍如何使用它们在其他Armv7l硬件。 对于本教程 瑞萨RCAR_M2评估板 就会被使用。 Tizen硬件适应Tizen:新rcarm2提供 Damian Hobson Garcia/达米安霍布森加西亚 ,现在让我向您展示如何使用目前可用的代码 Tizen:常见 。
在我们进入技术细节之前,让我提醒你的两个地址,您可以使用入口点 Tizen:常见 硬件适应ARM架构的设备。 https://wiki.tizen.org/wiki/ARM
其他CPU也欢迎 Tizen:常见 目标是不可知论者和多架构。 这一次而不是共享存档我只会解释如何创建您自己的,但是你仍然可以请求它如果你想要的。
1 /构建平台的Linux内核
如果你的机器支持主流内核,那么您可以使用kernel-common并尝试优化配置(使用平台旗帜在规范文件),如果不是你要重建内核来源,在这种情况下,你可以使用指令来重建达米安的回购设置工具链等。
https://github.com/dhobsong/rcar-m2-tizen-kernel
但是你也可以重建它Tizen方式使用gbs(它使用qemu binfmt内部)
首先你需要安装gbs工具和设置您的“~ / .gbs.conf”
(你可以把它换成这个文件:
https://gitorious.org/tizen/tizen-helper/raw/master:config/gbs.conf )
就构建RPM使用:
- <font size="3">git clone -b sandbox/pcoval/rcar-m2 review.tizen.org:/profile/common/kernel-common
- gbs build -P "profile.tizen_mobile_armv7l" --arch armv7l</font>
复制代码
RPM不会使用,中间文件将在稍后使用。
2 /下载臂的形象
分区方案可以取决于你使用的是什么机器,这意味着没有“通用图像”的手臂只有2个分区(引导和rootfs)。
这个瑞萨机uboot已经包括并存储在闪存,所以很容易但为别人可能不同(即:sunxi设备之前必须转储U-Boot形象第一分区所以我设置通用抵消)。
在这里我使用的命令行用一个8 gb SD卡(它可以减少~ 2 gb):
- <font size="3">udo parted /dev/sdX -a optimal -s unit b mklabel msdos mkpart primary fat16 0,64,0 1000MB toggle 1 boot print unit mb print
- sudo parted /dev/sdX -a optimal -s mkpart primary ext3 1000MB 100% print
- Model: Generic- USB3.0 CRW -0 (scsi)
- Disk /dev/sdX: 7969MB
- Sector size (logical/physical): 512B/512B
- Partition Table: msdos
- Number Start End Size Type File system Flags
- 1 2064kB 1000MB 998MB primary fat16 boot, lba
- 2 1000MB 7969MB 6969MB primary ext4</font>
复制代码
3 /转储分区
下载tizen-common_20140904.1_common-qa-unsafe-wayland-2parts-armv7l.tar。 广州或晚:
http://download.tizen.org/snapshots/tizen/common/latest/images/arm-wayland/common-qa-unsafe-wayland-2parts-armv7l
然后你就可以挂载和rsync内容或如果懒惰只是转储的分区上新创建的分区sdcard设备(由实际的一个替代sdX):
- <font size="3">sudo dd if=TZBOOT.img of=/dev/sdX1 bs=8M oflag=sync
- sudo dd if=tizen-common.img of=/dev/sdX2 bs=8M oflag=sync</font>
复制代码
注意现在的引导就包含了内核qemu-system-arm为例,所以您可以跳过它。
使文件系统正常:
sudo fsck /dev/sdX1
sudo fsck /dev/sdX2
4 /安装内核
现在内核和设备树文件应该安装的分区1:
- <font size="3">
- srcdir=${HOME}/tmp-GBS-tizen_common_armv7l/local/BUILD-ROOTS/scratch.armv7l.0/home/abuild/rpmbuild/BUILD/kernel-*/
- destdir=/tmp/tmp-root.tmp/mnt/dev/sdX1
- sudo mkdir -p $destdir && sudo mount /dev/sdX1/ $destdir
- sudo cp -v ${srcdir}/arch/arm/boot/uImage $destdir/
- sudo cp -v ${srcdir}/arch/arm/boot/dts/*.dtb $destdir/</font>
复制代码
4 /使用uboot引导内核
你需要登录到串行控制台使用“调试串口0”有线电视和显示U-Boot引导装载程序:
- <font size="3">sudo screen /dev/ttyUSB0 38400
- KOELSCH SPI_LOADER(DDR3L) V0.12 2014.03.14
- DEVICE S25FL512
- U-Boot 2013.01.01-g1568d0f (May 28 2014 - 16:18:49)
- CPU: Renesas Electronics R8A7791 rev 2.0
- Board: Koelsch Board
- DRAM: 1 GiB
- MMC: sh-sdhi: 0, sh-sdhi: 1, sh-sdhi: 2
- SF: Detected S25FL512S with page size 256 KiB, total 64 MiB
- In: serial
- Out: serial
- Err: serial
- Net: sh_eth
- =></font>
复制代码
然后沿着devicetree只是内核命令行加载文件和引导在指定地址:
- <font size="3">
- => setenv bootargs console=ttySC6,38400 root=/dev/mmcblk0p2 rw earlyprintk earlycon=ttySC6.38400 ignore_loglevel rootwait
- => fatload mmc 0 40007fc0 uImage
- reading uImage
- 3363632 bytes read in 312 ms (10.3 MiB/s)
- => fatload mmc 0 40f00000 r8a7791-koelsch.dtb
- reading r8a7791-koelsch.dtb
- 26451 bytes read in 15 ms (1.7 MiB/s)
- bootm 40007fc0 - 40f00000
- ## Booting kernel from Legacy Image at 40007fc0 ...
- Image Name: Linux-3.10.31-20140905.140990676
- Image Type: ARM Linux Kernel Image (uncompressed)
- Data Size: 3363568 Bytes = 3.2 MiB
- Load Address: 40008000
- Entry Point: 40008000
- Verifying Checksum ... OK
- ## Flattened Device Tree blob at 40f00000
- Booting using the fdt blob at 0x40f00000
- XIP Kernel Image ... OK
- OK
- Loading Device Tree to 40ef6000, end 40eff752 ... OK
- Booting Linux on physical CPU 0x0
- Linux version 3.10.31-20140905.1409906765pcoval-common-arm-rcar-m2 (dhcp@pcl) (gcc version 4.8.2 (Tizen) ) #1 SMP PREEMPT Fri Sep 5 09:02:19 UTC 2014
- CPU: ARMv7 Processor [413fc0f2] revision 2 (ARMv7), cr=30c73c7d
- CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
- Machine: koelsch, model: Koelsch
- (...)</font>
复制代码
到目前为止,好让我们使用“tizen”登录密码:
- <font size="3">localhost login: root
- Password:
- Welcome to Tizen
- root@localhost:~# cat /etc/os-release
- NAME=Tizen
- VERSION="3.0.0 (Tizen Next)"
- ID=tizen
- VERSION_ID=3.0.0
- PRETTY_NAME="Tizen 3.0.0 (Tizen Next)"
- ANSI_COLOR="0;36"
- CPE_NAME="cpe:/o:tizen:tizen:3.0.0"
- BUILD_ID=tizen-common_20140904.1_common-qa-unsafe-wayland-2parts-armv7l</font>
复制代码
心不在焉的像我这样的注意,确保你不添加一个额外的报价,否则你就会面临一个错误即:山
- <font size="3">Kernel command line: "console=ttySC6,38400 root=/dev/mmcblk0p2 rootdelay=13 rootwait rw earlyprintk earlycon=ttySC6.38400 ignore_loglevel"
- Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)</font>
复制代码
5 /解决一些显示问题
自Tizen:常见不船闭源的二进制文件blob,没有GPU的支持这一形象,直到添加在这个时候,我们可以解决方案和使用后备解决方案使用显示。
如果没有可用DRI,将后备帧缓冲,但是如果你有DRI可用但不设置错误将在这个文件:
- <font size="3">cat /run/display/weston.log
- [16:00:11.098] failed to initialize egl</font>
复制代码
期望的韦兰后台可以设置通过改变这个文件:
- <font size="3">grep ExecStart /usr/lib/systemd/system/display-Manager-run.service
- ExecStart=/usr/bin/weston --backend=fbdev-backend.so -i0 --log=%h/weston.log</font>
复制代码
注意这也应该改变英语工具包:
- <font size="3">grep -r egl /etc/profile.d/
- /etc/profile.d/weston.sh:export ELM_ENGINE=wayland_egl
- /etc/profile.d/weston.sh:export ECORE_EVAS_ENGINE=wayland_egl
- /etc/profile.d/elm.sh:[ ! -d /dev/dri ] || ELM_ENGINE=wayland_egl
- sudo sed -e 's|egl|shm|g' -i /etc/profile.d/*.sh
- </font>
复制代码
诀窍,让你能够运行英语应用程序:
- <font size="3">/bin/elementary_test # elementary-tools-1.9.3-8.4.armv7l
- /usr/apps/org.tizen.calculator/bin/calculator # from org.tizen.calculator-0.1.31-8.2.armv7l</font>
复制代码
1是纯英语2使用Tizen的应用框架。
更多的来:
https://bugs.tizen.org/jira/browse/tc - 1464
来源: https://dockr.eurogiciel.fr/blogs/embedded/author/pcl/
如何适应Tizen:常见的手臂图像引导瑞萨rcar吗
版权:[url=https://wiki.tizen.org/wiki/Usercoval]CC-BY-SA ~ pcl[/url]
|