hotpluging a firewire disk
Christopher K. Johnson
ckjohnson at gwi.net
Tue Jul 6 22:33:21 UTC 2004
Steven R. Ringwald wrote:
> Edward wrote:
>
>>
>>
>> David Jansen wrote:
>>
>>> I ran into a problem setting up a Linux system for a co-worker. He has
>>> an external firewire disk.
>>> The problem is: when it is connected, the system detects a new device:
>>>
>>> # cat /proc/bus/ieee1394/devices
>>> Vendor ID: `Linux OHCI-1394' [0x004063]
>>> Capabilities: 0x0083c0
>>> Bus Options:
>>> IRMC(1) CMC(1) ISC(1) BMC(0) PMC(0) GEN(0)
>>> LSPD(2) MAX_REC(2048) CYC_CLK_ACC(0)
>>> Host Node Status:
>>> Host Driver : ohci1394
>>> Nodes connected : 2
>>> Nodes active : 2
>>> SelfIDs received: 2
>>> Irm ID : [0-01:1023]
>>> BusMgr ID : [0-63:1023]
>>> In Bus Reset : no
>>> Root : yes
>>> Cycle Master : yes
>>> IRM : yes
>>> Bus Manager : no
>>> Node[0-00:1023] GUID[0004da00e0014ddb]:
>>> Vendor ID: `Granite Digital' [0x0004da]
>>> Capabilities: 0x0083c0
>>> Bus Options:
>>> IRMC(0) CMC(0) ISC(0) BMC(0) PMC(0) GEN(0)
>>> LSPD(0) MAX_REC(64) CYC_CLK_ACC(255)
>>> Unit Directory 0:
>>> Vendor/Model ID: Granite Digital [0004da] / FireVue 1394-IDE
>>> Bridge LUN0 [000000]
>>> Software Specifier ID: 00609e
>>> Software Version: 010483
>>> Driver: SBP2 Driver
>>> Length (in quads): 8
>>>
>>> But what it detects is just the electronics in the enclosure, which is
>>> essentially an IDE-controller to which the actual disk (Maxtor 300 GB)
>>> is connected. So an sbp2 driver gets loaded, and nothing more.
>>>
>>> I figured out that it works to do:
>>> # echo "scsi add-single-device 1 0 0" > /proc/scsi/scsi
>>> after which /dev/sda1 exists. So basically my only remaining question
>>> is: where to add this in the scripts of hotplug or devlabel or
>>> whichever
>>> component can do such a task.
>>
Actually I have a firewire drive working on FC2 with
kernel-2.6.6-1.435.2.3 just by adding this to /etc/modprobe.conf:
alias ieee1394-controller ohci1394
This caused the drive to be detected and the primary partition as sda1
when I plugged it in and powered it on. I added it to devlabel with:
devlabel add -d /dev/sda1 -s /dev/firewire
But on subsequent hotplugging devlabel did not pick up on the added
drive and create the symbolic link which mount until I executed:
devlabel reload
I too am looking for the magic incantation to make hotplugging seamless.
BTW, among the kernel's changelog comments is this:
* Wed May 19 2004 Arjan van de Ven <arjanv at redhat.com>
- put firewire race fix in (datacorruptor)
So I presume that firewire is now safe to use.
--
-----------------------------------------------------------
"Spend less! Do more! Go Open Source..." -- Dirigo.net
Chris Johnson, RHCE #807000448202021
More information about the users
mailing list