ハードウェアを変更することなく、ソフトウェアを介して実装できます。
WAN部分に「ifconfigeth0:010.10.1.1netmask255.255.255.0」タイプのソースを追加するか、telnetで「ifconfigeth0:010.10.1.1netmask255.255.255.0」と入力することもできます。
サイズは2倍まで調整できます。
この部分で10240を修正してください。
../tool/genext2fs.exe -U -b 10240 -N 1024 -d root -D device_table.txt ramdisk
まず、cygwin、ツールチェーンをインストールします。 その後、ツールをインストールして別のc-fileを作成し、DOSウィンドウでコンパイルして、Lemon IDEでコンパイルできるようにします。次に、DOSPANGでftp,ftpshellを使用して、コンパイルされた実行ファイルをEddyに渡します。
実行可能ファイルをchmod777で最初に指定してから、「filename &」の形式でバックグラウンドで実行すると、Eddyで実行できます。
これは、一般的なLinuxのコンパイル方法と同じです。
[root@linuxdevlinux_2.5.1.2]#sourceEnv.sh
[root@linuxdevlinux_2.5.1.2]#makeuImage
続行すると、ulmageはOSのイメージファイルであるarch/arm/boot/に作成されます。
ファイルのうち、ramdisk/Makefileを変更してください。
以下のようにLinuxとWindowsの内容には違いがあります。
Linux:"../tool/genext2fs"windowsWindows:"../tool/genext2fs.exe"
Linux:"../tool/mkimage"windowsWindows:"../tool/mkimage.exe"
1) Linux
install:
10 #@echo "Making ramdisk image..."
11 #$(TOOL) -b 8192 -d root -D device_table.txt ramdisk
12 #../tool/genext2fs -U -b 5110 -d root -D device_table.txt ramdisk
13 #../tool/genext2fs -U -b 7158 -d root -D device_table.txt ramdisk
14 #../tool/mkcramfs -q -D device_table.txt root ramdisk
15 ../tool/genext2fs -U -b 10240 -N 1024 -d root -D device_table.txt ramdisk
16 gzip -vf9 ramdisk
17 test -f ramdisk.gz
18 ../tool/mkimage -A arm -O linux -T ramdisk -C gzip -a 0 -e 0 -n $(FW_NAME) -d ./ramdisk.gz $(FW_NAME)
19 test -f $(FW_NAME)
20 mv $(FW_NAME) $(FIRMWARE_DIR)/
2) Windows
install:
10 #@echo "Making ramdisk image…"
11 #$(TOOL) -b 8192 -d root -D device_table.txt ramdisk
12 #../tool/genext2fs -U -b 5110 -d root -D device_table.txt ramdisk
13 #../tool/genext2fs -U -b 7158 -d root -D device_table.txt ramdisk
14 #../tool/mkcramfs -q -D device_table.txt root ramdisk
15 ../tool/genext2fs.exe -U -b 10240 -N 1024 -d root -D device_table.txt ramdisk
16 gzip -vf9 ramdisk
17 test -f ramdisk.gz
18 ../tool/mkimage.exe -A arm -O linux -T ramdisk -C gzip -a 0 -e 0 -n $(FW_NAME) -d ./ramdisk.gz $(FW_NAME)
19 test -f $(FW_NAME)
20 mv $(FW_NAME) $(FIRMWARE_DIR)/
Telnetにアクセスします。
- ユーザ名:Eddy
- パスワード:9999999999
# def default :すべての設定値の出荷時リセット
# def save :保存
# reboot :Telnetからのリブート
* 設定されたIPも工場出荷時の初期化後に変更されることに注意してください(初期値:192.168.0.223)。
Telnetにアクセスします。
ユーザIDと(初期)パスワードは次のとおりです。
-ユーザー名:Eddy
-パスワード:999999999
def viewを使用して、すべての設定値を確認することができます。
確認したら、exitコマンドを使用してtelnetを終了します。
「Keep-Alive Time」は、ソケット接続後に相手機器との通信がなかった場合、割り当てられた時間が経過すると自動的にソケット接続を解除するオプションです。 設定範囲は「0~32767」で、デフォルトの設定値は「0」(秒)です。 「0」は、この機能が無効であることを意味します。
たとえば、Operation ModeがTCP Serverで、「Keep-Alive Check Time」が10に設定されている場合、TCP Serverはネットワークからの接続を待機しており、クライアントからの接続を検出すると接続されます。 最後のパケットを受信してから10秒以内に接続されたクライアントから送信されたパケットがない場合、TCPサーバは接続を終了し、初期スタンバイ状態に戻ります。
ネットワークを介して接続されているサーバまたはクライアントのいずれかで異常なシャットダウン(再起動、LANケーブルの切断などによる)が発生すると、通信の問題が発生する可能性があります。 この設定を使用して、これらの問題を解決できます。
(異常なシャットダウンが発生しても、相手側デバイスの接続は維持されます。 そのため、切断された機器はまだ接続されていると見なされ、相手側のデバイスとの再接続ができない場合があります)。
初期値が「0」に設定されている場合、この機能は実行されず、ソケット接続が維持されます。 この機能は、[Operation Mode]が[TCP Server]または[TCP Client]の場合にだけ適用できます。
cygwinでは、Windows環境でコンパイルできるのはファイルシステムだけです。 ブートローダとOSはLinux環境でコンパイルできます。
カーネルコンパイルの場合、cygwin上のLinux形式と同じですが、提供された部分の制限によりコンパイルできません。
ただし、カーネルは、VMwareにインストールされているLinuxまたは個別にインストールされているLinux上でコンパイルできます。
Lemon IDEは、Linux2.6.2.1カーネルをベースにしたARMクロスコンパイル環境に構築されており、Linux上のGUIコンパイラ環境を提供し、簡単で便利な開発環境を実現します。
8Mフラッシュメモリのうち、ファームウェアが格納されている領域を除き、ユーザが使用できる領域は1Mです。
RAMディスクの/flashフォルダにはMTD5がユーザ領域として保持されています。この領域では、ファイルを作成して書き込み/読み取りを行うことができます。 MTDパーティションを調整してユーザ領域を拡張する場合は、OSを変更する必要があり、Linux環境でのみ使用可能です。
Eddyカーネルのコンパイル手順は以下の通りです。
1.EddyのカーネルソースのトップレベルフォルダにEnv.shがあります。
Env.shファイルを開き、cross-compilerパスをツールチェーンをインストールした場所に変更します。
次のように変更されたパスを適用します。
# ソースEnv.sh
2.u-bootカーネルのイメージファイルを以下のようにコンパイルしてください。
# makeuImage
3.コンパイル後、以下の場所にulmageファイルが作成されます。
このファイルをEddyのftpまたはtftpにアップロードしてアップグレードしてください。
~/arch/arm/boot/uImage
ulmageファイル名を変更できます。
1. ブートローダコンパイル
# at91sam9260ek_configを作成します。
# source Env.sh
# make u-boot.img
2. カーネルコンパイル
# source Env.sh
# make uImage
上記の手順のように、コマンドを入力して実行することでコンパイルできます。
すべてのファームウェアバージョンは次のようにマークされます。
AAAA_XX_YYY.bin
AAAA:製品名
XX:全部で5つの画像に分かれている画像の種類
(bl=BootLoader,bs=BootStrap,os=Kernel,fs=ファイルシステム,cf=EddyConfig)
YY:バージョン番号