CAT845_内蔵ROM初期化手順

必要なもの

ハードウェア

  • CAT845 基板
  • 電源 5V 2A (EK845に付属する)
  • USB シリアルコンソールケーブル(EK845に付属する)
  • microSDメモリカード(最低2Gバイト、4Gバイト以上を推奨)
  • LANケーブル
  • USB メモリカードリーダ (microSD対応の物)

ソフトウェア

  • シリアルポートが使用できる端末ソフト(TeraTerm推奨)

microSD メモリカード

ここから

CAT845_JESSIE_2G_20210527.bin.gz

をダウンロードし適当な展開ソフトで .gz を展開する。

展開後 CAT845_JESSIE_2G_20210527.ddi 約1.7Gバイトになるので 2Gバイト以上の microSD にイメージを書き込む

イメージの書き込みには DDforWindows や Raspi公式のインストーラが使用できる。

DDWin.exe を使用するときの注意点

  • 旧バージョンの最新 Ver.0.9.9.8 を推奨
  • 「右クリック=>管理者として実行」 を使用すること

CAT845の立ち上げ

pica4.jpg

microSDをCN7ソケットに挿入する。

pica5.jpg pica6.jpg

CN7 microSD図示のようにLANコネクタ方向にスライドさせると開き、CPU側へスライドさせると閉じる。microSDソケットを操作するときは必ず電源を抜くこと。通電中にソケットを操作すると金属のシールドが電源端子に接触し、最悪の場合は基板が故障する。ソケットのふた側にmicroSDメモリカードを挿入する。
CN10 シリアルコンソール付属のUART-USB変換ケーブルでPCと接続する
SW1 (4つのDIPSW)全てoff
SW3R26側 … 通常はこちら / R25側 … JTAG ICE使用時
SW2Reset SW

CAT845 CN10 が 3.3V UARTシリアルコンソール入出力である。EK845付属のシリアルUSB変換ケーブルを接続すること。その他のケーブルを使用する場合は次のピン配置を参考のこと

CN10B6B PH-K (日圧 PHコネクタ)
1GND
2RxD 3.3V TTL入力
3TxD 3.3V TTL出力
4GND
5#RESET リセットLow入力(4-5pin短絡でリセット)

TeraTermを開き、シリアルコンソール(COM x)を開く。
ボーレートは115200bpsとし、電源を投入する。

microSD を rootfs として起動する

電源を投入し

Hit any key to stop autoboot:  3.. 2.. 1.. 

の3秒間のカウントダウン中に何かキーを押すと u-boot のプロンプトで停止する

pica7.png

トラブルシュート
TeraTerm画面が文字化けしたときは コントロール=>端末のリセット で復旧する

u-bootにて

=> run boot_from_sd
=> reset

このときに

## Error: "boot_from_sd" not defined

エラーが出るときは uboot が古いので CAT845_uboot更新手順 に従い ubootを更新してください。

microSDからLinuxが起動する

トラブルシュート
u-bootで停止してしまいエラーもないのに Linuxが起動起動しないときは
=> setenv bootdelay 3
=> saveenv
=> reset
とする
トラブルシュート
LANケーブルは必須ではないが初期状態だとdhcpでアドレスを取得しに行くのでLANケーブルが接続されていないと
起動中に数分間待たされる。LANケーブルを接続しdhcpでアドレスが取得できる状態であればスムースに進む。

Linux起動後に FlashRomのイレースセクタサイズを調べる

cat845 login: root
Password:root     (パスワードは画面に表示されない)

root@cat845:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00080000 00010000 "loader"
mtd1: 00580000 00010000 "uboot"
mtd2: 00600000 00010000 "kernel"
mtd3: 03400000 00010000 "flash"

erasesize  が 00010000  であれば 64Kバイト/セクタ
erasesize  が 00040000  であれば 256Kバイト/セクタ(CAT845初期ロット品のみ)

内蔵ROMのイレースと書き換え

root@cat845:~# mount /boot/ -o ro
root@cat845:~# flash_erase /dev/mtd3 0 0
root@cat845:~# cp /boot/mtd2_uImage+dtb_cat845_20190924 /dev/mtdblock2
root@cat845:~# cp /boot/mtd3_jffs2_cat845_20200131_64k.bin /dev/mtdblock3  (ただし 256Kバイト/セクタ品の場合ファイル名の末尾 _256k.bin を使うこと)
root@cat845:~# umount /boot
再起動
root@cat845:~# reboot

内蔵ROM を rootfs として起動する

u-bootにて

=> run boot_from_mtd
=> reset

関連