ブログ

ifconfigで設定したIPアドレスが自動的に変更される

Armadilloを標準イメージで起動すると、
/etc/network/interfaces
の
 auto lo eth0
 iface eth0 inet dhcp
に基づきDHCPでアドレスを取得するようにネットワーク設定される。 上記の設定でArmadilloを起動後、固定IPアドレスに変更するには、下記のようにifconfigコマンドで設定できる。
[armadillo ~]# ifconfig eth0 192.168.10.0 up
ただし、長時間たつとIPアドレスが変更されることがある。 これは、DHCPクライアントのプロセス  atmark-distを使用している場合、udhcpc  Debianを使用している場合、dhclient3 が動作していることが要因のようなので、DHCPクライアントを止める。

Armadillo-800シリーズのUSBシリアル変換アダプタドライバ(FTDI FT232RL)

Armadillo-840/810開発セットに付属しているUSBシリアル変換アダプタ(FTDI 社製FT232RL内臓)をPCに接続しても、
自動でドライバが認識しない場合は、以下のサイトからダウンロードしてください。

http://www.ftdichip.com/Drivers/VCP.htm
 「Currently Supported VCP Drivers」のx86(32bit) OR x64(64bit)

お使いのPCに合わせたOS/アーキテクチャのものをダウンロードしてください。

Armadillo-400シリーズにLEDを追加する

Armadillo-400シリーズのドライバにはLEDクラスが用意されています。
http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_software_manual_ja-1.9.1/ch09.html#sec-led-class

Armadillo-420/440に標準で用意されている red / yellow / green のLED以外に、
新しいLEDを追加する際の手順です。

今回は、例としてCON9_28ピンをLEDクラスに割り当てます。
また諸事情により、kernel2.6.35に対する修正方法を記載していますが、2.6.26でも大きな違いはないと思います。

まずは以下のソースを編集します。

Armadillo-800シリーズ: ATDEでArmadilloのDebian(armhfアーキテクチャ)を動かしてみる

ユーザーモードqemuを使うと、amd64もしくはi386アーキテクチャのLinux上で、armアーキテクチャのバイナリが動かせます。

この仕組みを使って、ATDE上でArmadillo-800シリーズ用のDebian(armhfアーキテクチャ)を動かす方法を紹介します。

Armadilllo-400シリーズで、CAN1を有効にする


Armadillo-400シリーズのSoCであるi.MX257には、CANコントローラは2つ(CAN1、CAN2)あります。
しかし、現在のカーネルソースでは、CON14のCAN2のみを有効にできるようになっています。

CON11にマルチプレクサされているCAN1を有効化する手順を紹介します。
(*注意*) こちらはハードウェアを接続しての検証はしておりません。
             またCAN2を有効化している環境を想定しています。CAN2を有効化するには以下を参照してください。
             http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_software_manual_ja-1.9.1/ch09.html#sec-CAN

環境: linux-2.6.26-at20

Kconfigを修正

CAN1はCON11の48,49pinにアサインされていますが、デフォルトではI2C3が

ifconfigはIPアドレス以外も設定できる

ifconfigコマンドを使えば、IPアドレスを簡単に設定できる
[armadillo ~]# ifconfig eth0 192.168.11.36 up
helpを読むと他にも設定できることがわかった。 broadcastは
[armadillo ~]# ifconfig eth0 broadcast 0.0.0.0 up
netmaskは
[armadillo ~]# ifconfig eth0 netmask 255.255.255.0 up
などなど。

実行結果を標準出力とファイルの両方に出力

実行結果を標準出力とファイルの両方に出力する必要があった。
(ファイルにログを残しつつも、コンソールでリアルタイムにログを確認したかった。)

teeコマンドを使えばよかった。
例えば、psコマンドの出力を標準出力とtemp.txtに出力したい場合は、
[armadillo ~]# ps | tee temp.txt
例えば、makeのログを標準出力とtemp.txtに出力したい場合は、
[armadillo ~/atmark-dist]# make 2>&1 | tee temp.txt

プロセスの物理メモリ使用量を調べる

Armadillo上で動作しているプロセスの物理メモリ使用量を調べてみます。

Armadillo-440の標準イメージで自動起動されるfunctesterの場合、まずは
[root@armadillo440-0 (ttymxc1) ~]# ps | grep functester
  PID  Uid     VmSize Stat Command
 1358 root       6352 S   functester
でPIDを確認します。
/proc/[プロセスのID]/status
をcatで確認します。 上記のfunctesterの場合は、プロセスIDは1358なので、

Armadillo-400シリーズのUART2のハードフロー制御を無効にする

Armadillo-400シリーズのUART2は、標準のカーネルコンフィギュレーションでは
ハードフロー制御が有効になっており、make menuconfigからは設定変更できない。

そこで、ハードフロー制御を無効にできるようにする。

備考)以下の説明において、、ディレクトリ構成は、
Armadillo実践開発ガイド第1部7.2. Atmark Distを使ったルートファイルシステムの作成に基づいて環境構築しているものとする。

1. Kconfigの編集

atmark-dist/linux-2.6.x/arch/arm/mach-mx25のKconfig内で、Armadillo-410/420/440については、 デフォルトでUART2のハードフロー制御が有効になるように設定されているので、その設定を削除する。

Armadillo-840でgpioctrlを使う


Armadillo-400シリーズで使用可能であった、gpioctrlをArmadillo-840でも使用できるようにしてみたいと思います。
(*注意*)
実際にハードウェアを接続しての検証はしておりません。
あくまでソフトウェア的に移植をしたところまでですので、ご了承ください。

[9.9.2. Armadillo-200 シリーズ互換 GPIO ドライバー]
http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_software_manual_ja-1.9.1/ch09.html#sec-armadillo-200-series-gpio-driver

1) ユーザーランドとカーネルを展開します

ページ

Subscribe to RSS - ブログ