Howto

Armadillo-460でPC/104接続 コンパクトフラッシュインターフェースボード(梅沢無線電機 HT3040)を使用する

梅沢無線電機製 HT3040 CompactFlashインターフェースボード(型番: HT3040-C02)を、Armadillo-460と組み合わせて利用する方法を説明します。HT3040の詳しい情報は、メーカーWebサイトをご覧ください。

本Howtoでのおおまかな手順は以下のようになります。

  1. 事前準備
  2. HT3040対応Linuxカーネルを作成
  3. 動作確認

本Howtoで使用するソフトウェアは以下の通りです。

1. 事前準備

1.1. HT3040のジャンパー設定を行う

HT3040 にはJP1 からJP6 までのジャンパーがあります。3極ポスト型ジャンパーの端子番号は、シルクで○印が付けられている端子から順に1、2、3 番ピンとなっています。なお、本Howtoで使用する設定は、メーカー出荷設定のまま利用します。

  • JP1 (3E0H/3E1Hポートを使用)

    • 未設定
  • JP2~6 (16bit バス側の信号を使用)

    ジャンパ 設定値
    JP2 2-3
    JP3 2-3
    JP4 2-3
    JP5 2-3
    JP6 2-3

2. HT3040対応Linuxカーネルを作成

2.1. カーネルのソースコードを展開してパッチを適用する

[atde3]$ wget http://download.atmark-techno.com/armadillo-460/source/kernel/linux-2.6.26-at15.tar.gz
[atde3]$ wget http://download.atmark-techno.com/armadillo-460/sample/linux-a460-ht3040.patch
[atde3]$ tar zxvf linux-2.6.26-at15.tar.gz
[atde3]$ cd linux-2.6.26-at15
[atde3]$ patch -p1 < ../linux-a460-ht3040.patch

2.2. ビルド

Armadillo-460 + HT3040用のカーネルイメージを作成します。
前項で適用したパッチには、armadillo460_ht3040_defconfigが含まれているので、
それを用いて設定を行います。

[atde3]$ make armadillo460_ht3040_defconfig
[atde3]$ make CROSS_COMPILE=arm-linux-gnueabi-
      :(ビルドには数分かかります)
[atde3]$ gzip -c arch/arm/boot/Image > linux.bin.gz
注) armadillo460_ht3040_defconfigでは、ide-csのみカードサービスを有効としています。無線LAN等の他のカードサービスを利用する場合は、適切なものを有効化してください。また、カードサービスドライバを修正する必要がある場合があります。詳しくは、ソフトウェアマニュアルをご覧ください。

ソフトウェアマニュアルを参照し、新しい Linux カーネルイメージ(linux.bin.gz)を Armadillo-460 に書き込んでください。

3. 動作確認

作成したLinuxカーネルイメージを書き込み後、再起動してください。
起動ログには、以下のようにHT3040を認識したことが表示されます。

Intel ISA PCIC probe: 
  Ricoh RF5C296/396 ISA-to-PCMCIA at port 0xf20003e0 ofs 0x00, 2 sockets
    host opts [0]: none
    host opts [1]: none
    ISA irqs (scanned) = 9 status change on irq 9

ログインして、使用するメモリ空間とI/O空間を設定します。

[root@armadillo460-0 (ttymxc1) ~]# echo "+ 0xb3000000 - 0xb307ffff" > /sys/class/pcmcia_socket/pcmcia_socket0/available_resources_mem
[root@armadillo460-0 (ttymxc1) ~]# echo "+ 0xf2000000 - 0xf20000ff" > /sys/class/pcmcia_socket/pcmcia_socket0/available_resources_io
[root@armadillo460-0 (ttymxc1) ~]# echo "yes" > /sys/class/pcmcia_socket/pcmcia_socket0/available_resources_setup_done

CFカードを接続すると、以下のようにカードを認識します。

pcmcia: registering new device pcmcia0.0
hda: Sony NCFB2G, CFA DISK drive
ide0 at 0xf2000000-0xf2000007,0xf200000e on irq 201
hda: max request size: 128KiB
hda: 4001760 sectors (2048 MB) w/1KiB Cache, CHS=3970/16/63
 hda: hda1
ide-cs: hda: Vpp = 0.0

関連するコンテンツ

FAQ : Armadillo-500でCFを認識しません