読者です 読者をやめる 読者になる 読者になる

日曜技術者のメモ

趣味でやった事のメモ書きです。

ZedBoardで遊んでみた - Start Guide 5 -

FPGA ZedBoard

今日はデモ最終回

  • Demo 6 USB-OTG
    • ホストPCの設定。

 ・ジャンバピンのJP2とJP3をショートさせる。
   USB-OTGの上下についています。
   JP2はUSBへ5Vの供給切り替え
   JP3はUSB電源に120uFのコンデンサ接続の切り替えをしています。
   ショートさせるとホストモード、開放するとOTGモードだそうです。
USBとFPGA間にはTUSB1210というICが入っています。
   こちらはdatasheetがありました。
 ・USBケーブルを接続し、適当なUSBメモリを接続する。
 ・Zedboard電源ON

zynq> [    3.870000] usb 1-1: new high-speed USB device number 2 using xusbps-ehci
[    4.020000] scsi0 : usb-storage 1-1:1.0
[    5.020000] scsi 0:0:0:0: Direct-Access     BUFFALO  USB Flash Disk   1.00 PQ: 0 ANSI: 6
[    5.030000] sd 0:0:0:0: [sda] 30167040 512-byte logical blocks: (15.4 GB/14.3 GiB)
[    5.030000] sd 0:0:0:0: Attached scsi generic sg0 type 0
[    5.040000] sd 0:0:0:0: [sda] Write Protect is off
[    5.040000] sd 0:0:0:0: [sda] Write cache: disabled, read cache: disabled, doesn't support DPO or FUA
[    5.060000]  sda: sda1 < sda5 >
[    5.060000] sd 0:0:0:0: [sda] Attached SCSI removable disk

 ちゃんと認識している様です。
 マウントして中身を確認しましょう。

zynq> mount /dev/sda1 /mnt
[  214.180000] attempt to access beyond end of device
[  214.180000] sda1: rw=0, want=4, limit=2
[  214.180000] EXT4-fs (sda1): unable to read superblock
[  214.240000] attempt to access beyond end of device
[  214.240000] sda1: rw=0, want=4, limit=2
[  214.240000] EXT4-fs (sda1): unable to read superblock
[  214.290000] attempt to access beyond end of device
[  214.290000] sda1: rw=0, want=4, limit=2
[  214.290000] EXT4-fs (sda1): unable to read superblock
mount: mounting /dev/sda1 on /mnt failed: Invalid argument

ありゃりゃUbuntuブート用のUSBメモリがまずかった様です。
FAT32のUSBメモリに交換。ちょうど X-fest 2012でもらった2GのUSBメモリがあったのでそれにしてみた。

zynq> [  326.630000] usb 1-1: USB disconnect, device number 2
[  449.690000] usb 1-1: new high-speed USB device number 3 using xusbps-ehci
[  449.850000] scsi1 : usb-storage 1-1:1.0
[  451.130000] scsi 1:0:0:0: Direct-Access     General  USB Flash Disk   1100 PQ: 0 ANSI: 0 CCS
[  451.140000] sd 1:0:0:0: [sda] 3913728 512-byte logical blocks: (2.00 GB/1.86 GiB)
[  451.150000] sd 1:0:0:0: Attached scsi generic sg0 type 0
[  451.150000] sd 1:0:0:0: [sda] Write Protect is off
[  451.160000] sd 1:0:0:0: [sda] No Caching mode page present
[  451.160000] sd 1:0:0:0: [sda] Assuming drive cache: write through
[  451.170000] sd 1:0:0:0: [sda] No Caching mode page present
[  451.170000] sd 1:0:0:0: [sda] Assuming drive cache: write through
[  451.180000]  sda: sda1
[  451.180000] sd 1:0:0:0: [sda] No Caching mode page present
[  451.190000] sd 1:0:0:0: [sda] Assuming drive cache: write through
[  451.190000] sd 1:0:0:0: [sda] Attached SCSI removable disk

一番上のログは一旦USBメモリを抜いたログ
で、再度マウント

zynq> mount /dev/sda1 /mnt
zynq> cd /mnt
zynq> df -h .
Filesystem                Size      Used Available Use% Mounted on
/dev/sda1                 1.9G     32.0K      1.9G   0% /mnt

マウントが確認できたので、umountして取り外し

zynq> cd ../
zynq> umount /dev/sda1
zynq> [  846.500000] usb 1-1: USB disconnect, device number 3

umount時は/mntから移動しないとumountできないので注意

  • Demo 7 SD Card

ちょっとデモから脱線するが先にSDの中がどうなっているのかPCで確認してみた。
まず、SDのパーティションだが、以下の通りすべてFAT32の1パーティションになっている。
f:id:ginnyu-tei:20120915085325j:plain
中にはいくつかファイルが入っていた
・BOOT.BIN
・devicetree_ramdisk.dtb
・ramdisk8M.image.gz
・README
・zImage

ここで、念のためSDの中身をバックアップしてからデモに戻る。

ZedBoardを起動してターミナルからSDを確認してみる。

zynq> ls -al /dev/mmcblk0*
brw-rw----    1 root     0         179,   0 Jan  1 00:00 /dev/mmcblk0
brw-rw----    1 root     0         179,   1 Jan  1 00:00 /dev/mmcblk0p1
zynq>

/dev/mmcblk0がSD本体で、/dev/mmcblk0p1はプライマリ領域(さっきPCで確認した領域)
これもmountしてみる。

zynq> mount /dev/mmcblk0p1 /mnt
zynq> cd /mnt
zynq> ls
BOOT.BIN                devicetree_ramdisk.dtb  zImage
README                  ramdisk8M.image.gz
zynq>

ファイルがあるのを確認したらまたcdしてumount

zynq> cd ../
zynq> umount /mnt

poweroffして終了