概要
概要
目的は次のようなものです.
対象は次のものです.
結果は次のようになりました.
注意事項
目次
FreeBSD 8.4, 10.3 においても,Talk Master (3) に記したように,SD card を挿した状態においてはうまく繋がりません.
ただ,driver のソースを変更する必要がなくなる等の進展があったので,その状況を提示いたします.
(注意) SD card を挿した状態での動作試験を行なう過程で,内蔵メモリー内のファイルがすべて消えたことがありました. ただし,毎回消えるわけではありません.
いずれにしても,この環境における動作を試す前に正常に接続することができる環境でバックアップを取って下さい.
なお,ここからは PC として自作 AT 互換機だけでなく NP25S, ST108E が加わります.
NP25S にて FreeBSD 8.4 に Talk Master II (SD card なし) を接続すると,次のような log が出ます.
uhci2: <Intel 82801G (ICH7) USB controller USB-C> port 0xd480-0xd49f irq 18 at device 29.2 on pci0 (中略) umass0: <YOUNTEL CO.LTD. YMDC-407X UMS DEVICE, class 0/0, rev 1.10/1.00, addr 2> on usbus2 umass0: SCSI over Bulk-Only; quirks = 0x4001 umass0:0:0:-1: Attached to scbus0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: < TalkMasterII > Removable Direct Access SCSI-0 device da0: 1.000MB/s transfers da0: 997MB (2042880 512 byte sectors: 64H 32S/T 997C) da1 at umass-sim0 bus 0 scbus0 target 0 lun 1 da1: < TalkMasterII > Removable Direct Access SCSI-0 device da1: 1.000MB/s transfers da1: Attempt to query device size failed: NOT READY, Medium not present
quirks の中の 0x4000 は UQ_MSC_NO_SYNC_CACHE であり,また "SCSI over Bulk-Only" であることから,これ以前にソースを修正して設定したことは,既に反映されています.
# usbconfig
(中略)
ugen2.2: <YMDC-407X UMS DEVICE YOUNTEL CO.LTD.> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
# camcontrol devlist < TalkMasterII > at scbus0 target 0 lun 0 (da0,pass0) < TalkMasterII > at scbus0 target 0 lun 1 (da1,pass1)
この状態で fdisk は成功します.
# fdisk /dev/da0 ******* Working on device /dev/da0 ******* parameters extracted from in-core disklabel are: cylinders=997 heads=64 sectors/track=32 (2048 blks/cyl) parameters to be used for BIOS calculations are: cylinders=997 heads=64 sectors/track=32 (2048 blks/cyl) Media sector size is 512 Warning: BIOS sector numbering starts with sector 1 Information from DOS bootblock is: The data for partition 1 is: sysid 6 (0x06),(Primary DOS, 16 bit FAT (>= 32MB)) start 485, size 2042395 (997 Meg), flag 80 (active) beg: cyl 0/ head 7/ sector 38; end: cyl 999/ head 31/ sector 0 The data for partition 2 is: <UNUSED> The data for partition 3 is: <UNUSED> The data for partition 4 is: <UNUSED>
また,mount も成功します.
# mount_msdosfs -o longnames -m 644 -M 755 /dev/da0s1 /mnt # env LC_ALL=C ls -l /mnt/TIMERREC/* /mnt/TIMERREC/BOX01: total 35040 -rw-rw-rw- 1 root users 7188992 Jan 1 1980 01001_160808_0700A0693I.MP3
なお,この環境においては,mkdir や file の cp などの書き込みの操作は試しておりません.
SD card のために usbconfig により以下のように設定してみました.
# usbconfig -d ugen2.2 add_quirk UQ_MSC_FLOPPY_SPEED
またはそれと同等のようですが /boot/loader.conf に以下の行を追加しました.
hw.usb.quirk.0="0x0dab 0x4100 0 0xffff UQ_MSC_FLOPPY_SPEED"
残念ながら結果は変わりませんでした.
(補足) 自作 AT 互換機においても,上記の結果は同じでした. ST180E には FreeBSD 10.3 しか入れておりません.
ST180E にて FreeBSD 10.3 に Talk Master II (SD card なし) を接続すると,次のような log が出ます.
xhci0: <XHCI (generic) USB 3.0 controller> mem 0xdf030000-0xdf03ffff irq 16 at device 20.0 on pci0 (中略) xhci0: 32 bytes context size, 64-bit DMA usbus0 on xhci0 (中略) ugen0.3: <YOUNTEL CO.LTD.> at usbus0 umass0: <YOUNTEL CO.LTD. YMDC-407X UMS DEVICE, class 0/0, rev 1.10/1.00, addr 2> on usbus0 umass0: SCSI over Bulk-Only; quirks = 0xc001 umass0:5:0:-1: Attached to scbus5 da0 at umass-sim0 bus 0 scbus5 target 0 lun 0 da0: < TalkMasterII > Removable Direct Access SCSI device da0: Serial Number 20040623-001 da0: 1.000MB/s transfers da0: 997MB (2042880 512 byte sectors) da0: quirks=0x2<NO_6_BYTE> da1 at umass-sim0 bus 0 scbus5 target 0 lun 1 da1: < TalkMasterII > Removable Direct Access SCSI device da1: Serial Number 20040623-001 da1: 1.000MB/s transfers da1: 974MB (1995777 512 byte sectors) da1: quirks=0x2<NO_6_BYTE> GEOM_PART: integrity check failed (da1, MBR) ← SD card が入っていればこの行は現われません.
こちらも同様に,ソースの変更なしに mount まで正常に動作します.
# mount_msdosfs -o longnames -m 644 -M 755 /dev/da0s1 /mnt # env LC_ALL=C ls -l /mnt/TIMERREC/* /mnt/TIMERREC/BOX01: total 35040 -rw-r--r-- 1 root wheel 7168000 Dec 30 1979 01081_160801_0700A0693I.MP3
なお,この環境においても,mkdir や file の cp などの書き込みの操作は試しておりません.
(補足) 自作 AT 互換機や NP25S には FreeBSD 8.4 しか入れておりません.
(注意) この環境にて何度か接続してきたのですが,接続を終えて USB ケーブルを抜いても「USB 接続中」または「USB 転送中」の状態のままでいることが多いです. マニュアル p.111 に記載されているようにリセットスイッチを押せば元に戻る場合もあります. それでもダメならば,p.87 の「ボタン操作によるフォーマット (初期化)」を行なうはめになります.
ちなみに,USB ポートは 3 でなく,ちゃんと 2 の方を使っております. 念のため.
NP25S + FreeBSD 8.4 の方はこのようなことが生じておりません. ただし,それが FreeBSD やその USB driver の version の差異なのか,PC の USB コントローラーの差異なのかは分かりません. 試す余裕がないのです.
NP25S にて FreeBSD 8.4 に SD card を挿した MR-A39N を接続すると,次のような log が出ます.
ugen4.2: <USB Device> at usbus4 umass0: <USB Device USB Mass Storage Device, class 0/0, rev 2.00/0.01, addr 2> on usbus4 umass0: SCSI over Bulk-Only; quirks = 0x4100 umass0:0:0:-1: Attached to scbus0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: <USB Mass Storage Device 1.00> Removable Direct Access SCSI-0 device da0: 40.000MB/s transfers da0: 974MB (1995776 512 byte sectors: 64H 32S/T 974C)
接続は成功しています.
一方,PC に MR-A39N を接続した後に SD card を挿した場合には反応しません. あらかじめ挿しておく必要があります.
fdisk や mount は内蔵メモリーと同様のやり方でできます.