ZedBoardで遊んでみた - Start Guide 5 -
今日はデモ最終回
- 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パーティションになっている。
中にはいくつかファイルが入っていた
・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して終了