備忘録

趣味に生きるオタクの備忘録

Yocto Linux on Raspberry Pi 4 Computer ModelB

タイトル通り、YoctoでつくったLinuxをRaspi4で動かしていきます。


一応前記事はコレ→)YoctoでRaspi4向けのイメージビルド - 備忘録
の続きみたいなものになります。なお、上の記事の時とは別にもう一度ビルドしなおしているので、厳密にfetchしたソースは異なっているかもしれません。

前のにも追記しましたが、local.confに

ENABLE_UART = "1"

これを追記しないと、Kernel起動途中でコケます。

INIT: Id "s0" respawning too fast: disabled for 5 minutes

とか出る場合は、以上の追記で起動可能となります。

rpi-basic-image

まず基本のCUIですね。
ビルドした生成物のmicroSDイメージは、

rpi-basic-image-raspberrypi4-64.rpi-sdimg

となります。

Serial Consoleでログインします。


:(Kernel Message)

Poky (Yocto Project Reference Distro) 3.0.1 raspberrypi4-64 /dev/ttyS0

raspberrypi4-64 login: root
root@raspberrypi4-64:~# uname -a
Linux raspberrypi4-64 4.19.75 #1 SMP PREEMPT Wed Dec 4 15:40:52 UTC 2019 aarch64 GNU/Linux
root@raspberrypi4-64:~# cat /proc/cpuinfo
processor : 0
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3

processor : 1
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3

processor : 2
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3

processor : 3
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3

Hardware : BCM2835
Revision : c03112
Serial : XXXXXXXXXXXXXXXXX
Model : Raspberry Pi 4 Model B Rev 1.2

しっかりaarch64で動いてますね。3Bの時もでしたが、公式から出ているイメージはどうしてarmv7のままなんでしょう・・・


続いて、Walyand。

core-image-weston

ビルドした生成物のmicroSDイメージは、

core-image-weston-raspberrypi4-64.rpi-sdimg

となります。
bitbakeのTargetを書き換えるだけでビルドできます。

f:id:hu2mmc:20191208212327p:plain
Walyand Desktop on Raspberry Pi 4 (2560x1440)
シェルしか出してませんが、普通に動きます。


気になる温度。

root@raspberrypi4-64:~# cat /sys/class/thermal/thermal_zone0/temp
45764

ヒートシンクなし、室温20度、コンソールで上の処理をした程度ですが45度いってます。
GUIやその他アプリケーションを動かすのであれば確かに冷却対策は必要そうです。


今更になりますが、UARTのピンアサインはRaspi3B+と同じでした。
UART at Raspberry Pi GPIO Pinout
(一応、ちゃんとしたソースで確認したほうが良いと思います)