アップデート用ファームウェアの作成(クロス)

“build_firm_E4xx.sh” スクリプトにより、ファームウェアファイルを作ることができます1)
スクリプトは、ダウンロード:MA-E4xxシリーズ にあります。

root@jetson:/home/kikuchi/work# ./build_firm_E4xx.sh 
MA-E4xx series Firmware build script
usage: build_firm_E4xx.sh -k kernel_dir -r rootfs dir [-o firmware_file]
root@jetson:/home/kikuchi/work# 

引数として、下記を指定します。


実行するとこのようにファームウェアが作成されます。

root@develop:/home/kikuchi/work# ./build_firm_E4xx.sh -k ../src/MAE4xx/linux-kernel -r mae4xx_xenial_rootfs -o mae4xx_xenial_v3_0_0.img
MA-E4xx series Firmware build script
* kernelrelease: 4.4.30
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: 'include/generated/mach-types.h' is up to date.
  CHK     include/generated/timeconst.h
  CHK     include/generated/bounds.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
... 中略 ...
	crontab (107)
	ssh (110)
	messagebus (111)
	staff (50)
	scanner (112)
	adm (4)
* create initramfs ...
update-initramfs: Generating /boot/initrd.img-4.4.30
  adding: kernel.img (stored 0%)
  adding: kmod.img (stored 0%)
  adding: initramfs.img (stored 0%)
  adding: rootfs.img (stored 0%)
  adding: dtb.img (deflated 75%)
  adding: .config (deflated 77%)
* Firmware filename: /home/kikuchi/work/mae4xx_xenial_v3_0_0.img
done.
please remove working directory '/home/kikuchi/work/build_1521091637' manually.
root@develop:/home/kikuchi/work# 

ファームウェアファイルは ZIP 形式になっています。

root@develop:/home/kikuchi/work# unzip -l mae4xx_xenial_v3_0_0.img
Archive:  mae4xx_xenial_v3_0_0.img
  Length      Date    Time    Name
---------  ---------- -----   ----
  3647608  2018-03-15 14:29   kernel.img
   593920  2018-03-15 14:29   kmod.img
  2864520  2018-03-15 14:30   initramfs.img
 70295552  2018-03-15 14:29   rootfs.img
    27643  2018-03-15 14:29   dtb.img
   100137  2018-03-15 14:29   .config
---------                     -------
 77529380                     6 files


1)
root 権限が必要です
2)
MA-E4xx シリーズ からダウンロードできます
3)
root 権限での作業が必要です