Strawberry Linux で、公開しているファイルで、 秋月電子 3068Fネットワークボード(20MHz)を動かしてみた。 メモリのアクセス速度が遅いせいか、H8MAXと比較して かなり遅い(H8MAXは、16bit アクセス) redboot tar jxvf ecos-2.0.i386linux.tar.bz2 export PATH=$PATH:/root/ecos-2.0/tools/bin export ECOS_REPOSITORY=/root/ecos-2.0/packages cd ecos-2.0 ecosconfig new aki3068net redboot ecosconfig add CYGPKG_IO_ETH_DRIVERS ecosconfig add CYGPKG_DEVS_ETH_NS_DP83902A ecos-2.0/ecos.ecc を編集(console と、=ttySC1 は続けて1行にすること) cdl_option CYGDAT_REDBOOT_DEFAULT_BOOT_SCRIPT { user_value 1 "\"load -r -b 0x400000 h8max.bin;exec -c \\\"console =ttySC1,38400n81 nfsroot=192.168.1.1:/tftpboot\\\"\\n\"" ecosconfig check ecosconfig tree ecos-2.0/packages/hal/h8300/aki3068net/current/include/platform.inc を編集 (CSCR の値を 0x1f -> 0xff) INIT_REGS_DATA(CYGARC_CSCR ,0xff) make h8300-elf-objcopy -O srec install/bin/redboot.elf ../redboot1.mot なぜか、load/exec の boot script が実行されなかったが、 ecos-2.0 を rm -rf で一度消したらよくなった(H8MAXのゴミが残っていた?)。 カーネルのソースよりカーネルを作成 make xconfig その後、出てくるダイアログで以下の操作を行う [Target Platform Selection]ボタンを押すと出てくるダイアログで、 [SecureEdge/SecureEdgeVPN]ボタンをドラッグし、一覧の中の [Akizuki/AE3068]を選択する。 [Default all settings(lose changes){HELP}]の左の[y]にチェックを入れる [Main Menu]をクリックする [Save and Exit]をクリックする IPアドレスの設定と、httpd と、telnetsrv を実行するようにする。 ~/uClinux-dist-h8300/vendors/Akizuki/AE3068/rc に、以下の3行を追加する ifconfig eth0 192.168.1.12 netmask 255.255.255.0 httpd & telnetsrv & カーネル作成 uClinux-dist-h8300ディレクトリで、make。 (これで、/tftpboot/h8max-image.bin というカーネルが作成された) /tftpboot/に、作成したカーネルをコピー cp /tftpboot/aki3068net-image.bin /tftpboot/h8max.bin 基本的には動く。次は、NFS 上での開発環境を整備してみる ------------- 参考 ----------------------- http://www.nishimoto-site.net/~h8max/?%5B%5BAE-3068%A4%CEDRAM%C4%C9%B2%C3%5D%5D DRAM 増設 eCosのソースを調べたら以下2点を修正したら動きそうな気がする。 RedBoot側 * DRAM設定は ecos-2.0/packages/hal/h8300/aki3068net/current/include/platform.incの INIT_REGS_DATA(CYGARC_DRCRA,0x3c)//fastpageに対応しているDRAM INIT_REGS_DATA(CYGARC_DRCRA,0x38)//OKI-M5117805D //(fastpageアクセスに対応していない) * eCos-Linux間のカーネルパラメータ受け渡し ecosconfig new.. したディレクトリにあるecos.eccの   CYGDAT_REDBOOT_H8300_LINUX_COMMAND_START を設定 0x005FFE00~ → 0x007FFE00~ uClinux側 linux-2.4.x/arch/h8300/platform/h8300h/aki3068net/ram.ld を以下の様に修正 ram : ORIGIN = 0x400000, LENGTH = 0x800000-0x400000 eram : ORIGIN = 0x800000, LENGTH = 0 ecos-2.0/packages/hal/h8300/aki3068net/current/include/platform.inc を編集 (CSCR の値を 0x1f -> 0xff) INIT_REGS_DATA(CYGARC_CSCR ,0xff) 20MHz で動作 C:/download/ecos-2.0/packages/hal/h8300/aki3068net/current/cdl/ cdl_option CYGHWR_HAL_H8300_CPG_INPUT { display "OSC/Clock Freqency" flavor data default_value 20000000 } 内蔵ROM書込み時 ON ↑↑↓↑ 1 2 3 4 OFF 内蔵ROM実行時(mode5) ON ↑↓↑↓ 1 2 3 4 OFF ./h8write -3068 -f20 redboot1.mot /dev/ttyUSB0