目次

NFS root での起動

PC上に開発環境を導入したクロスの root filesystem(ARM用) を用意し、PCでコンパイルしたプログラムを
実機で即1)確認したい場合などには、NFS rootでの起動が便利です。

ブートデバイスの選択およびコンソールの切替 (DIPSW 設定)』による方法では選択できませんが、
bootloader のメニューから選択し、起動することができます。


サーバ側の設定

NFSサーバ、DHCPサーバを導入し、設定を行います。

NFSサーバの設定

NFS root のファイルシステムを提供するサーバの設定を行います。

“/home/exports/ARM_trusty” というディレクトリを提供する場合の例です。
NFS-serverをインストールし、/etc/exports に下記のようなエントリを追加します。

exports
/home/exports/ARM_trusty 	   192.168.253.0/255.255.255.0(rw,no_root_squash,insecure,async,subtree_check)


追加したエントリを有効化します。

# exportfs -a

export されているか確認しておきます。

# exportfs |grep trusty
/home/exports/ARM_trusty


DHCPサーバの設定

ISC DHCP の例です。
/etc/dhcp/dhcpd.conf を設定します。

dhcpd.conf
default-lease-time 86400;
max-lease-time 86400;
allow bootp;
#ddns-update-style ad-hoc;
 
subnet 192.168.253.0 netmask 255.255.255.0 {
  option subnet-mask 255.255.255.0;
  option broadcast-address 192.168.253.255;
  option routers 192.168.253.5;
  option ntp-servers 192.168.253.5;
  option domain-name-servers 192.168.253.5;
 
  range 192.168.253.200 192.168.253.249;
 
  group {
    host mae3xx {
      hardware ethernet 00:80:6d:xx:xx:xx;
      fixed-address 192.168.253.47;
      option root-path "192.168.253.5:/home/exports/ARM_trusty";
    }
  }
}


NFS root での起動

MA-E3xx のコンソールで、起動時にキーを入力し自動起動を停止させます。

barebox 2013.12.0-gc51c3f4 #3 Tue Mar 11 18:24:49 JST 2014


Board: plum-ma[512MiB]
m25p80 m25p800: m25p16 (2048 Kbytes)
booting from SPI


barebox 2013.12.0-00373-g5307ee1-dirty #706 Tue Jan 12 10:16:15 JST 2016


Board: plum-ma[512MiB]
nand: ONFI param page 0 valid
nand: ONFI flash detected
nand: NAND device: Manufacturer ID: 0x01, Chip ID: 0xda (AMD/Spansion S34ML02G1), 256MiB, page size: 2048, OOB
 size: 64
omap-hsmmc omap4-hsmmc0: registered as omap4-hsmmc0
m25p80 m25p800: m25p16 (2048 Kbytes)
i2c-omap i2c-am33xx0: bus 0 rev0.11 at 100 kHz
cpsw cpsw0: detected phy mask 0xc
mdio_bus: miibus0: probed
eth0: got preset MAC address: D0:39:72:3D:75:08
malloc space: 0x8e000000 -> 0x9dffffff (size 256 MiB)
Reset is caused by "PowerOnReset" (0x00000001).
envfs: wrong magic on /dev/env0
no valid environment found on /dev/env0. Using default environment
running /env/bin/init...
filetype: No such file or directory
UBI: attaching mtd0 to ubi0
UBI: scanning is finished
registering /dev/ubi0
registering kernel.0 as /dev/ubi0.kernel.0
registering kernel.1 as /dev/ubi0.kernel.1
registering initramfs.0 as /dev/ubi0.initramfs.0
registering initramfs.1 as /dev/ubi0.initramfs.1
registering kmod.0 as /dev/ubi0.kmod.0
registering kmod.1 as /dev/ubi0.kmod.1
registering rootfs.0 as /dev/ubi0.rootfs.0
registering rootfs.1 as /dev/ubi0.rootfs.1
registering opt as /dev/ubi0.opt
registering overlay as /dev/ubi0.overlay
UBI: attached mtd0 (name "nand0.UBI", size 255 MiB) to ubi0
UBI: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 512
UBI: VID header offset: 512 (aligned 512), data offset: 2048
UBI: good PEBs: 2040, bad PEBs: 0, corrupted PEBs: 0
UBI: user volume: 10, internal volumes: 1, max. volumes count: 128
UBI: max/mean erase counter: 9/6, WL threshold: 4096, image sequence number: 4024
UBI: available PEBs: 0, total reserved PEBs: 2040, PEBs reserved for bad PEB handling: 40

Hit m for menu or any other key to stop autoboot:  1

type exit to get to the menu
barebox@plum-ma[512MiB]:/ 


“exit” と入力することで、bootloader のメニューを表示させます。

type exit to get to the menu
barebox@plum-ma[512MiB]:/ exit

bootloader MENU


カーソルの上下で “3: Boot: NFS root (Kernel, dtb on Flash)” を選択し、Enter で実行します。

select NFS root


起動しました。

boot with NFS root

1)
プログラムを転送せずに