Linux Driver Setup Guide for REX-CF03 for Linux kernel 2.4.x 04/Feb./2002 RATOC Systems,Inc. ------------------------------------------------------------------ This document is written in the Japanese character. ■はじめに 本ドキュメントでは、USB CompactFlash Reader/Writer REX-CF03 を Linux上で使用するための手順について説明しています。 ここでは、RedHat Linux 7.1環境でのSetup手順を例に説明していき ます。 RedHat7.1 の Kernel Version は 2.4.2-2 となっています。 この環境で REX-CF03を使用するためのドライバはUSBのMassStorage用 ドライバ usb-storage.o です。ただし、REX-CF03用に若干修正を行う 必要があります。 このドライバの作成および登録の手順について以下で説明していきます。 あらかじめ ROOT ユーザでログインしてください。 ここでは、/root ディレクトリにダウンロードしたファイルが解凍され ていることを前提に説明しています。 ファイルを解凍すると、[cf03] というディレクトリの下に[ patch ] [ samples ] というディレクトリができます。 [ patch ] にはドライバモジュールを作成するために必要なパッチファイル が格納されています。 [ samples ] には、ドライバモジュールを作成するために編集する各種 ファイルの記述サンプルが格納されています。 ■ RedHat7.1 でのREX-CF03用ドライバ登録手順 【 Step1 】Patch の実行 usb/storage ディレクトリにある unusual_devs.h, transport.c の2つのファイルに Patch を行います。 (1) usb/storage ディレクトリへ移動します。 # cd /usr/src/linux-2.4/drivers/usb/storage (2) sma03/patch/redha-7-1 ディレクトリの unusual_devs.patch を実行します。 # patch -p1 Support for USBを選択し、スペースキーを押して Support for USBに変更すると USB に関する詳細項目が表示 されます。 Support for USB [ ] USB verbose debug messages --- Miscellaneous USB device filesystem [ ] Preliminary USB device filesystem --- USB Controllers <*> UHCI Alternate Driver (JE) support < > OHCI (Compaq, iMacs, Opti, Sis, Ali, ...) support .... <*> USB Mass Storage support .... 上記設定が終ったら を選択して最初の画面まで戻ります。 そして、 を選択すると Do you wish to save your new kernel configuration ? と表示されるので、 を選択します。 次に、以下のコマンドを実行します。 # make dep 【 Step3 】kernel の再構築 make を実行して kernel を再構築します。 # make bzImage 【 Step4 】module の作成 make を実行して usb のモジュールを作成します。 # make modules modules_install 【 Step5 】kernel の変更 作成された kernel から起動するように設定します。 # cp arch/i386/boot/bzImage /boot/. Systems.map を新しい kernel 用に入れ替えます。 # cp System.map /boot/System.map-usb # cd /boot # rm System.map # ln -s System.map-usb System.map 【 Step6 】lilo の変更と reboot /etc/lilo/conf に usb用の kernel のエントリを追加します。 ここでは、例としてエントリを linux-usb とすることとします。 lilo を実行します。 # lilo Added linux Added linux-usb* Added dos 更新した情報を有効にするため、システムを再起動します。 # reboot LILO boot: loading linux-usb.... システム起動後、depmod を1回だけ実行します。 # depmod -av ■ USB モジュール起動の確認 REX-CF03 は、kernel 2.4 からカーネルに新しく追加された Hotplug という機能により認識されます。 USBストレージデバイスは、scsi ドライブとして認識されます。 以下の作業は、X-Window を起動する前のコンソール画面で確認して ください。 (1) REX-CF03 の認識の確認 CompactFlashを装着したREX-SMA03FをUSBポートに接続すると、CF03の 緑のLEDが点灯し、赤のLEDもしばらく点灯します。 そして、画面に以下のメッセージが表示されます。 Vendor: RATOC Model: CompactFlash R/W Rev: 0102 Type: Direct-Access ANSI SCSI revision: 02 Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0 SCSI device sda: 128512 512-byte hdwr sectors (66 MB) sda: Write Protect is off ドライブが正常に認識されない場合、画面に何も表示されません。 /var/log/messages にエラー内容が表示されるので確認してください。 * X-Window のコンソール画面の場合もメッセージは表示されません。 以下のコマンドを入力して CF用をマウントポイントを作成し、mount を 実行します。 # mkdir /mnt/cf0 # mount -t msdos /dev/sda1 /mnt/cf0 これで、CFメディアを通常のストレージデバイスと同様にアクセス可能と なります。 ■ メディアの交換 メディアを交換する場合は、以下のメディアを取り外す前に以下コマンド を実行します。 # umount /mnt/cf0 # eject /dev/sda ここで、メディアを取り外して、交換後に以下のコマンドを実行します。 # mount -t msdos /dev/sda1 /mnt/cf0 I/O error:dev08:00, sector 0 FAT bread failed 交換直後の mount コマンドでは、エラーが表示されるので、再度 mount コマンドを実行します。 # mount -t msdos /dev/sda1 /mnt/cf0 これで、交換したCFメディアにアクセス可能となります。 以上 /END