イメージファイル
以下の手順に従ってビルドした諸々をイメージファイルにまとめた。
1GB以上のSDカードにddとかで書いて起動、U-bootの設定が全くされてないのでスペースキーでブート止めた後以下のコマンド投入してブート
https://blog.oomurosakura.co/files/aki-nazo.img.xz
load mmc 0:1 0x82000000 /boot/vmlinuz-4.19.232-bone75
load mmc 0:1 0x88000000 /boot/dtbs/4.19.232-bone75/am335x-boneblack-uboot.dtb
setenv bootargs console=ttyO0,115200n8 loglevel=8 console=tty0 root=/dev/mmcblk0p1 rootfstype=ext4
bootz 0x82000000 - 0x88000000
上手く起動したらroot:rootでログインする。debianの方だとログインは出来るけどホームにcdできないとか言われてshellが上がってこないのでrootで
Debian GNU/Linux 10 arm ttyS0
default username:password is [debian:temppwd]
arm login: # root:rootでログイン
root@arm:~# uname -a
Linux arm 4.19.232-bone75 #1 SMP PREEMPT Sun Mar 19 00:46:01 JST 2023 armv7l GNU/Linux
root@arm:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether f4:e1:1e:41:8b:fa brd ff:ff:ff:ff:ff:ff
3: usb0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether f4:e1:1e:41:8b:fc brd ff:ff:ff:ff:ff:ff
4: usb1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether f4:e1:1e:41:8b:ff brd ff:ff:ff:ff:ff:ff
inet 192.168.6.2/30 brd 192.168.6.3 scope global usb1
valid_lft forever preferred_lft forever
TODO:
- u-bootの設定永続化する
- Wi-SUNモジュール調査
ビルド手順
間違ってたらすまん
gcc
コンパイラは gcc-linaro-7.5.0-2019.12 使った
よくわかってないけどUbuntuのaptで入る gcc-arm-linux-gnueabihf
とかだとダメだった
u-boot
ここの手順をパクってv2018.01をビルド
u-boot-spl.binとu-boot.imgをXMODEM/YMODEMで送り込んでU-Boot起動できたら次へ
起動SDカードの作成
ここの手順をパクる
https://lightning-brains.blogspot.com/2019/08/beaglebone-black-sd.html
準備
sudo dd if=/dev/zero of=/dev/sdX bs=512 count=8192
sudo fdisk /dev/sdX
## First sector = 8192でプライマリパーティション作る
mkfs.ext4 /dev/sdX1
mkdir /mnt/disk
mount /dev/sdX1 /mnt/disk
U-Boot書き込み
cd u-boot/
dd if=MLO of=/dev/sdX count=1 seek=1 bs=128k
dd if=u-boot.img of=/dev/sdX count=2 seek=1 bs=384k
rootfs
wget -c https://rcn-ee.com/rootfs/eewiki/minfs/debian-10.0-minimal-armhf-2019-08-05.tar.xz
tar xf debian-10.0-minimal-armhf-2019-08-05.tar.xz
cd debian-10.0-minimal-armhf-2019-08-05
tar xf armhf-rootfs-debian-buster.tar -C /mnt/disk/
echo "/dev/mmcblk0p1 / ext4 noatime,errors=remount-ro 0 1" > /mnt/disk/fstab
カーネルビルド & 書き込み
ここの手順をパクる
https://longervision.github.io/2018/01/10/SBCs/ARM/beaglebone-black-uboot-kernel/
sudo apt update
sudo apt-get install bc lzma bison flex libmpc-dev u-boot-tools
git clone https://github.com/RobertCNelson/bb-kernel
cd bb-kernel/
git checkout am33x-v4.19
./build_kernel.sh
## menuconfigは何もせずexit
## 死ぬほど時間掛かるが待つ
sudo cp deploy/4.19.232-bone75.zImage /mnt/disk/boot/vmlinuz-4.19.232-bone75
mkdir -p /mnt/disk/boot/dtbs/4.19.232-bone75
sudo tar xfv deploy/4.19.232-bone75-dtbs.tar.gz -C /mnt/disk/boot/dtbs/4.19.232-bone75
sudo tar xfv deploy/4.19.232-bone75-modules.tar.gz -C /mnt/disk
sync
sync
sync
sudo umount /mnt/disk
起動
SDカードを謎ボードに差し込み、シリアルでスペースキー連打しながら電源投入でブート止める
uEnv.txtとかよくわかんないのでU-Bootシェルで以下を打ち込む
load mmc 0:1 0x82000000 /boot/vmlinuz-4.19.232-bone75
load mmc 0:1 0x88000000 /boot/dtbs/4.19.232-bone75/am335x-boneblack-uboot.dtb
setenv bootargs console=ttyO0,115200n8 loglevel=8 console=tty0 root=/dev/mmcblk0p1 rootfstype=ext4
bootz 0x82000000 - 0x88000000
感謝
参考にしたツイートなど
https://twitter.com/bakueikozo/status/1636903403598286848