I'm running Clark Connect 0.91 (basically Red Hat Linux 7.2 plus some
updates and extra packages), RHL kernel 2.4.9-13, hdparm v4.1.
I have a VIPowER 3-fan mobile rack (see http://www.vipower.com for a
fuller explanation), part number VP-7010LS3F-66.
The device is hot-swap capable and has a switch (others have a key)
that locks the drive in and powers it up; in the other position the
drive is powered down and can be removed.
What I'd like to be able to do is insert a drive into a running system,
register it (hdparm -R), mount it, write on it, umount it, unregister
it (hdparm -U).
I have the system configured (when the drive's plugged in) thus:
hda Fujitsu 4 Gbyte hdd
hdb Vacant
hdc Fujitsu 1 Gbyte hdd
hdd 20x CD drive
Motherboard ASUS SP97-V, SiS 5598 (detects as 5513), chipset. Pentium
133 CPU.
If I boot with hdc not present, then insert the drive, the system hangs
immediately. I've configured syslogd to write kernel messages to
/dev/tty11, but no messages about the problem are displayed.
What can I do to get some messages displayed?
I presume that Linux is getting unexpected interrupts and not coping
well.
If I boot with hdc present, then hdparm -U /dev/hdc displays all the
same display it does for hdparm -h
Here is a more complete list of the hardware:
[root@clark-133 root]# lspci -v -v
00:00.0 Host bridge: Silicon Integrated Systems [SiS] 5597 [SiS5582]
(rev 02)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >
TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 32
00:01.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513 (rev
01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >
TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0
00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev
d0) (prog-if 8a [Master SecP PriP])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 32
Interrupt: pin A routed to IRQ 11
Region 0: I/O ports at <ignored>
Region 1: I/O ports at <ignored>
Region 2: I/O ports at <ignored>
Region 3: I/O ports at <ignored>
Region 4: I/O ports at d000 [size=16]
00:0b.0 Ethernet controller: Standard Microsystems Corp [SMC] 83C170QF
(rev 06)
Subsystem: Standard Microsystems Corp [SMC] EtherPower II 10/100
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 32 (2000ns min, 7000ns max)
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at b800 [size=256]
Region 1: Memory at e5800000 (32-bit, non-prefetchable)
[size=4K]
Expansion ROM at <unassigned> [disabled] [size=64K]
00:13.0 VGA compatible controller: Silicon Integrated Systems [SiS]
5597/5598 VGA (rev 65) (prog-if 00 [VGA])
Subsystem: Silicon Integrated Systems [SiS] 5597/5598 VGA
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >
TAbort- <TAbort- <MAbort- >SERR- <PERR- Region 0: Memory at
e7000000 (32-bit, prefetchable) [size=4M]
Region 1: Memory at e5000000 (32-bit, non-prefetchable)
[size=64K]
Region 2: I/O ports at b400 [size=128]
Expansion ROM at e6ff0000 [disabled] [size=32K]
[root@clark-133 root]#
I tried to register hdc (I know, it was registered at boot time) with
this result:
Mar 25 15:07:22 clarkconnect kernel: hdc: irq timeout: status=0xff {
Busy }
Mar 25 15:07:27 clarkconnect kernel: hdc: status timeout: status=0xff {
Busy }
Mar 25 15:07:27 clarkconnect kernel: hdc: drive not ready for command
Mar 25 15:07:55 clarkconnect kernel: hdc: status timeout: status=0xff {
Busy }
Mar 25 15:07:55 clarkconnect kernel: hdc: drive not ready for command
I then tried to put it to sleep (-Y)
Mar 25 15:08:00 clarkconnect kernel: hdc: status timeout: status=0xff {
Busy }
Mar 25 15:08:00 clarkconnect kernel: hdc: drive not ready for command
Mar 25 15:10:12 clarkconnect kernel: spurious 8259A interrupt: IRQ7.
Mar 25 15:32:48 clarkconnect kernel: ip_conntrack (480 buckets, 3840
max)
and in standby (-y)
Mar 25 15:33:42 clarkconnect kernel: hdc: status timeout: status=0xff {
Busy }
Mar 25 15:33:42 clarkconnect kernel: hdc: DMA disabled
Mar 25 15:33:42 clarkconnect kernel: hdc: drive not ready for command
Mar 25 15:33:42 clarkconnect kernel: ide1: reset: success
The hard drives:
[root@clark-133 root]# hdparm -i /dev/hd{a,c}
/dev/hda:
Model=FUJITSU MPB3043ATU E, FwRev=4010, SerialNo=01075314
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=8940/15/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=16
CurCHS=8940/15/63, CurSects=-382992256, LBA=yes, LBAsects=8448300
IORDY=yes, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2 udma0 udma1 *udma2
AdvancedPM=no
Drive Supports : Reserved : ATA-1 ATA-2 ATA-3
/dev/hdc:
Model=M1614TA, FwRev=8D-44-21, SerialNo=03022742
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=2114/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=DualPortCache, BuffSize=64kB, MaxMultSect=16, MultSect=16
CurCHS=2114/16/63, CurSects=-2082471904, LBA=yes, LBAsects=2131584
IORDY=yes, tPIO={min:370,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 *mdma2
AdvancedPM=no
[root@clark-133 root]#
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!
> The device is hot-swap capable and has a switch (others have a key)
> that locks the drive in and powers it up; in the other position the
> drive is powered down and can be removed.
Linux doesn't support IDE hot swap at the drive level. Its basically
waiting people to want it enough to either fund it or go write the code
On Mon, 25 Mar 2002, Alan Cox wrote:
> > The device is hot-swap capable and has a switch (others have a key)
> > that locks the drive in and powers it up; in the other position the
> > drive is powered down and can be removed.
>
> Linux doesn't support IDE hot swap at the drive level. Its basically
> waiting people to want it enough to either fund it or go write the code
The way you say that makes me think that it does support at some other
level... hot swap controller? Doesn't match MY hardware. Hot swap
partitions? While I get amusing imaginations of cutting and pasting thin
film off a platter, I guess that's not it either. Media? Unless some hot
swap were to totally duplicate the IDE-FLOPPY code, I don't see that
either.
Actually, I'm almost sure that I have booted a system with a drive in,
unregistered it, swapped it, and reregistered it. Unfortunately that
system is in a closet and hundreds of miles away, so I won't just check
right now. But it was built on a junk 486 just to allow insertion of a
pile of old 360 and 520MB drives which were being backed up to CD without
even checking the contents, just so the drives could be recycled.
Since the project was closed and I got paid, I assume that worked.
Either that or the part-timer who did the work shipped about 70 copies of
the bad music he liked and the client never looked :-(
--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.
> The way you say that makes me think that it does support at some other
> level... hot swap controller? Doesn't match MY hardware. Hot swap
Controller level hotswap works mostly (think about pcmcia ide for example)
Alan
> > The way you say that makes me think that it does support at some other
> > level... hot swap controller? Doesn't match MY hardware. Hot swap
>
> Controller level hotswap works mostly (think about pcmcia ide for example)
Just to throw this out there. Is it possible to make the ide subsystem look
like a scsi controller ? that way the scsi layer could insert/remove
devices. say: ide0/1 = scsi0 (assuming no other scsi controllers) and hda =
scsi0 channel0 id0 lun0 and hdc = scsi0 channel1 id0 lun0 ...
Personally, if it's doable, i'd like it.
--
Lab tests show that use of micro$oft causes cancer in lab animals
On Mon, 25 Mar 2002, Wakko Warner wrote:
> > > The way you say that makes me think that it does support at some other
> > > level... hot swap controller? Doesn't match MY hardware. Hot swap
> >
> > Controller level hotswap works mostly (think about pcmcia ide for example)
>
> Just to throw this out there. Is it possible to make the ide subsystem look
> like a scsi controller ? that way the scsi layer could insert/remove
> devices. say: ide0/1 = scsi0 (assuming no other scsi controllers) and hda =
> scsi0 channel0 id0 lun0 and hdc = scsi0 channel1 id0 lun0 ...
>
> Personally, if it's doable, i'd like it.
Hardware is different.
You can paint a goose yellow and call it a duck, but it is still a goose.
The electrical/electronic interface will kill you!
Cheers,
Andre Hedrick
LAD Storage Consulting Group
> > > > The way you say that makes me think that it does support at some other
> > > > level... hot swap controller? Doesn't match MY hardware. Hot swap
> > >
> > > Controller level hotswap works mostly (think about pcmcia ide for example)
> >
> > Just to throw this out there. Is it possible to make the ide subsystem look
> > like a scsi controller ? that way the scsi layer could insert/remove
> > devices. say: ide0/1 = scsi0 (assuming no other scsi controllers) and hda =
> > scsi0 channel0 id0 lun0 and hdc = scsi0 channel1 id0 lun0 ...
> >
> > Personally, if it's doable, i'd like it.
>
> Hardware is different.
> You can paint a goose yellow and call it a duck, but it is still a goose.
> The electrical/electronic interface will kill you!
how is it different than all the different scsi controllers?
What I'm saying is an ide module that talks to the ide hardware and to the
scsi subsystem.
both scsi and ide support disks, tapes, cdroms, and other removable media.
IIRC, windows nt sees ide controllers as a scsi controller (in a sence)
--
Lab tests show that use of micro$oft causes cancer in lab animals
Wakko Warner wrote:
> IIRC, windows nt sees ide controllers as a scsi controller (in a sence)
And ran into trouble with it, remember? Thus, they reinvented the
different interfaces, multi(n) and scsi(n).
Thunder
--
Thunder from the hill.
Citizen of our universe.
> > The device is hot-swap capable and has a switch (others have a key)
> > that locks the drive in and powers it up; in the other position the
> > drive is powered down and can be removed.
>
> Linux doesn't support IDE hot swap at the drive level. Its basically
> waiting people to want it enough to either fund it or go write the code
>
What needs to be done? How extensive is the surgery needed?
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!
Well, what you tried at first is very close,
and could be made to work for you with some debugging.
But ideally, I think the driver should just rescan the interface
anytime a raw drive (minor number == 0) access is performed..
More or less. With a bit of debounce logic.
Cheers
--
Mark Lord
Real-Time Remedies Inc.
[email protected]
John Summerfield wrote:
>
> > > The device is hot-swap capable and has a switch (others have a key)
> > > that locks the drive in and powers it up; in the other position the
> > > drive is powered down and can be removed.
> >
> > Linux doesn't support IDE hot swap at the drive level. Its basically
> > waiting people to want it enough to either fund it or go write the code
> >
>
> What needs to be done? How extensive is the surgery needed?
>
> --
> Cheers
> John Summerfield
>
> Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
>
> Note: mail delivered to me is deemed to be intended for me, for my
> disposition.
>
> ==============================
> If you don't like being told you're wrong,
> be right!
At the interface level, there is some support.
Look at hdparm's -b option to tristate the bus.
But that's the whole bus. If the controller implements
master/slave on one cable, you're hosed, electrically.
It's the whole interface. 95% of controlers are like this.
Intel's PIIX can do master/slave on separate ports, but
then you loose one bus. Laptops with bays also do things
like this, but that's special hardware, hard to get programming
specs for.
I think if you add the drive *after* boot, it doesn't
have the benefit of the BIOS setting up PIO/UDMA modes,
so I would try the hdparm -X speed settings also.
Jeremy
----- Original Message -----
From: "John Summerfield" <[email protected]>
Sent: Monday, March 25, 2002 3:16 PM
Subject: Re: IDE and hot-swap disk caddies
> > > The device is hot-swap capable and has a switch (others have a key)
> > > that locks the drive in and powers it up; in the other position the
> > > drive is powered down and can be removed.
> >
> > Linux doesn't support IDE hot swap at the drive level. Its basically
> > waiting people to want it enough to either fund it or go write the code
> >
>
> What needs to be done? How extensive is the surgery needed?
On Mon, Mar 25, 2002 at 09:28:21PM -0800, Jeremy Jackson wrote:
> At the interface level, there is some support.
> Look at hdparm's -b option to tristate the bus.
> But that's the whole bus. If the controller implements
> master/slave on one cable, you're hosed, electrically.
> It's the whole interface. 95% of controlers are like this.
>
> Intel's PIIX can do master/slave on separate ports, but
> then you loose one bus. Laptops with bays also do things
> like this, but that's special hardware, hard to get programming
> specs for.
>
> I think if you add the drive *after* boot, it doesn't
> have the benefit of the BIOS setting up PIO/UDMA modes,
> so I would try the hdparm -X speed settings also.
>
> Jeremy
>
> ----- Original Message -----
> From: "John Summerfield" <[email protected]>
> Sent: Monday, March 25, 2002 3:16 PM
> Subject: Re: IDE and hot-swap disk caddies
>
> > > > The device is hot-swap capable and has a switch (others have a key)
> > > > that locks the drive in and powers it up; in the other position the
> > > > drive is powered down and can be removed.
> > >
> > > Linux doesn't support IDE hot swap at the drive level. Its basically
> > > waiting people to want it enough to either fund it or go write the code
> > >
> >
> > What needs to be done? How extensive is the surgery needed?
>
IDE isn't really meant to allow hot swap but it can be done.
As Jeremy says, electrically it is difficult to do it with a
master+slave on one cable because you really must power down
the interface (cable) and that would mean downing both devices.
As Alan and others have indicated the IDE drivers are a little
untested at doing this as well.
The big issue is powering down the interface. You need a
card that can do so selectively. I gather the 3Ware cards
can do this, i don't have one yet so don't go by me on this.
Perhaps someone else can confirm it. They also have the
advantage here in that they present the drives (in JBOD
mode) as SCSI devices or luns and SCSI has handled hot
(un)plug pretty well since at least the 1.2 kernel.
--
________________________________________________________________
J.W. Schultz Pegasystems Technologies
email address: [email protected]
Remember Cernan and Schmitt
> At the interface level, there is some support.
> Look at hdparm's -b option to tristate the bus.
There is no mention of -b in hdparm's help screen, and in the man page
it's only mentioned in the description of -L.
Is there a newer version of hdparm I need?
> But that's the whole bus. If the controller implements
IDE1? That's okay for me, I can control the hardware configuration to
that extent. If the other device is a CD reader, I'm not going to
corrupt anything. If necessary, I'll make sure it's unmounted.
> master/slave on one cable, you're hosed, electrically.
> It's the whole interface. 95% of controlers are like this.
>
> Intel's PIIX can do master/slave on separate ports, but
> then you loose one bus. Laptops with bays also do things
> like this, but that's special hardware, hard to get programming
> specs for.
>
> I think if you add the drive *after* boot, it doesn't
> have the benefit of the BIOS setting up PIO/UDMA modes,
> so I would try the hdparm -X speed settings also.
At present the system hangs if I add a master when the primary's
present, before I get to do anything.
I've not tried adding a slave to an existing master.
As to the BIOS settings, I only configure drives required for booting.
I've been doing that for years, before I ever used Linux, when I
discovered that OS/2 wasn't paying attention to them. (A good thing in
the case of OS/2 as the instructions for one of my drives gave the
wrong geometry;-().
>
> Jeremy
>
> ----- Original Message -----
> From: "John Summerfield" <[email protected]>
> Sent: Monday, March 25, 2002 3:16 PM
> Subject: Re: IDE and hot-swap disk caddies
>
> > > > The device is hot-swap capable and has a switch (others have a key)
> > > > that locks the drive in and powers it up; in the other position the
> > > > drive is powered down and can be removed.
> > >
> > > Linux doesn't support IDE hot swap at the drive level. Its basically
> > > waiting people to want it enough to either fund it or go write the code
> > >
> >
> > What needs to be done? How extensive is the surgery needed?
>
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!
> > > > The device is hot-swap capable and has a switch (others have a key)
> > >
> > > true ide hotswap requires a lot more than a caddy w/switch...
> >
> > I don't understand. Please clarify.
>
> the controller has to high-z the bus; naturally, all devices
> on the bus have to either high-z or be turned off.
>
> > > syslog, of course, is user-space. the real question is where does
> > > your (raw, kernel-level) console go. serial console?
> >
> > What do I need to do to get them on tty11?
>
> kernel-level logging can't be configured like that: it logs
> to physical devices.
What are my options to get to a position I'm sure to see the kernel
messages as they appear?
> > Can I play games with modules? Perhaps by defining the 5513 driver as a
> > module and loading it separately for each IDE channel?
>
> I don't believe so.
What would happen I boot with ide1=noprobe and then load ide.o
(extracted from a modularised compile)?
On this system, it does not matter if I destroy filesystems while
testing, though I don't wish to fry any hardware.
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!
Hi!
> > > > Linux doesn't support IDE hot swap at the drive level. Its basically
> > > > waiting people to want it enough to either fund it or go write the code
> > > >
> > >
> > > What needs to be done? How extensive is the surgery needed?
> >
>
> IDE isn't really meant to allow hot swap but it can be done.
>
> As Jeremy says, electrically it is difficult to do it with a
> master+slave on one cable because you really must power down
> the interface (cable) and that would mean downing both devices.
But that's not a problem most times, right? Downing device on same
channel for 10 second it takes to plug it in should not be a problem.
Pavel
--
Philips Velo 1: 1"x4"x8", 300gram, 60, 12MB, 40bogomips, linux, mutt,
details at http://atrey.karlin.mff.cuni.cz/~pavel/velo/index.html.
Hi!
> > > > The way you say that makes me think that it does support at some other
> > > > level... hot swap controller? Doesn't match MY hardware. Hot swap
> > >
> > > Controller level hotswap works mostly (think about pcmcia ide for example)
> >
> > Just to throw this out there. Is it possible to make the ide subsystem look
> > like a scsi controller ? that way the scsi layer could insert/remove
> > devices. say: ide0/1 = scsi0 (assuming no other scsi controllers) and hda =
> > scsi0 channel0 id0 lun0 and hdc = scsi0 channel1 id0 lun0 ...
> >
> > Personally, if it's doable, i'd like it.
>
> Hardware is different.
> You can paint a goose yellow and call it a duck, but it is still a goose.
> The electrical/electronic interface will kill you!
We already have support for SCSI-(raid)controllers which use IDE disks for
storage, so...
USB mass storage is not SCSI (in some cases), either. [Ouch, and some
usb-storage devices *are* IDE.]
So it makes sense to view IDE as very odd SCSI controllers.
Pavel
--
Philips Velo 1: 1"x4"x8", 300gram, 60, 12MB, 40bogomips, linux, mutt,
details at http://atrey.karlin.mff.cuni.cz/~pavel/velo/index.html.
> > You can paint a goose yellow and call it a duck, but it is still a goose.
> > The electrical/electronic interface will kill you!
>
> USB mass storage is not SCSI (in some cases), either. [Ouch, and some
> usb-storage devices *are* IDE.]
>
> So it makes sense to view IDE as very odd SCSI controllers.
IDE is very different. Its like calling NFS Netware. The upper layer
behaviour is fairly similar, and both ATAPI and USB mass storage is SCSI
alike (note if its not SCSI like its not USB mass storage its something else
eg a vendor specific driver).
Making other drivers appear to be scsi is coming from two things -
#1 to avoid the Linus idiocy with major numbers
#2 its the sane way to do it on NT
For the 2.5 tree once the devicefs stuff is in this gets less and less sane.
With the high performance block layer work Jens has done going via scsi
emulation becomes a really dumb performance choice.
Alan
Hi!
> > > You can paint a goose yellow and call it a duck, but it is still a goose.
> > > The electrical/electronic interface will kill you!
> >
> > USB mass storage is not SCSI (in some cases), either. [Ouch, and some
> > usb-storage devices *are* IDE.]
> >
> > So it makes sense to view IDE as very odd SCSI controllers.
>
> IDE is very different. Its like calling NFS Netware. The upper layer
> behaviour is fairly similar, and both ATAPI and USB mass storage is SCSI
> alike (note if its not SCSI like its not USB mass storage its something else
> eg a vendor specific driver).
I have seen USB mass storage devices with ide connector on them, so it
is certainly possible to translate between scsi and ide. If it makes
sense from performance standpoint.... I don't know.
Pavel
--
Casualities in World Trade Center: ~3k dead inside the building,
cryptography in U.S.A. and free speech in Czech Republic.
On Tue, Mar 26, 2002 at 07:01:18PM +0000, Pavel Machek wrote:
> Hi!
>
> > > > > Linux doesn't support IDE hot swap at the drive level. Its basically
> > > > > waiting people to want it enough to either fund it or go write the code
> > > > >
> > > >
> > > > What needs to be done? How extensive is the surgery needed?
> > >
> >
> > IDE isn't really meant to allow hot swap but it can be done.
> >
> > As Jeremy says, electrically it is difficult to do it with a
> > master+slave on one cable because you really must power down
> > the interface (cable) and that would mean downing both devices.
>
> But that's not a problem most times, right? Downing device on same
> channel for 10 second it takes to plug it in should not be a problem.
> Pavel
Sure, just be sure you POWER down the device(s) and the
interface. IDE is no more designed to be hot-swap than the
ISA buss. It was originally a buss level emulation of a
specific Western Digital controller for ST506 drives. Talk
to an EE familiar with the spec and implementations and make
sure that your card can either power down or go buffered
tristate. Smoking can be hazardous to your computer's
health.
Disclaimer: I am not an Electronics Engineer, nor an expert
on IDE/ATA/ATAPI yadda, yadda, yadda. I wrote because this
thread, while useful for the future was on a tangent that
wasn't telling John Summerfield how he might actually do
what he wants, today.
--
________________________________________________________________
J.W. Schultz Pegasystems Technologies
email address: [email protected]
Remember Cernan and Schmitt
> I have seen USB mass storage devices with ide connector on them, so it
> is certainly possible to translate between scsi and ide. If it makes
> sense from performance standpoint.... I don't know.
SCSI->IDE command translation isnt too hard providing you stick to simple
stuff and blindly ignore things like ATAPI, SMART, and all the control
stuff. The moment you get into the complex stuff its deeply unfunny.
On the read/write side SCSI->IDE command mapping generally works out. Its
not pretty on the corner cases (like error mapping) and it does mean you
have a lot of excess overhead and potentially serious problems with performance
because IDE (well ATA technically) is very very sensitive to round trip time
You can. Acard for instance makes devices for that. They plug at
the end of an ide cdrom or harddisk, and interface with scsi. They
have two models, a 20MB/s one, and an UltraWide model that goes
up to 40MB/s. It has a small risc cpu and you can even upgrade their
firmware. A friend of mine ordered one to plug a dvd reader in an
external scsi box he had lying around - he had all his computer drive
bays used. He said it worked fine and didn't notice any performance
hit even when playing dvd's.
/Pedro
On 27 Mar 2002 at 23:29, Pavel Machek wrote:
> I have seen USB mass storage devices with ide connector on them, so it
> is certainly possible to translate between scsi and ide. If it makes
> sense from performance standpoint.... I don't know.
> Pavel
>
On Wed, 27 Mar 2002, Pedro M. Rodrigues wrote:
> You can. Acard for instance makes devices for that. They plug at
> the end of an ide cdrom or harddisk, and interface with scsi. They
> have two models, a 20MB/s one, and an UltraWide model that goes
> up to 40MB/s. It has a small risc cpu and you can even upgrade their
> firmware. A friend of mine ordered one to plug a dvd reader in an
> external scsi box he had lying around - he had all his computer drive
> bays used. He said it worked fine and didn't notice any performance
> hit even when playing dvd's.
Indeed you can... But you disconnect from a SCSI bus then, which is in
fact off topic :) I'm willing to assume those devices are hot-pluggable,
but it is not what we want. Besides, I wonder if it isn't cheaper to buy a
decent SCSI device than an IDE device with converter.
Jos
On Wed, 27 Mar 2002, jw schultz wrote:
> On Tue, Mar 26, 2002 at 07:01:18PM +0000, Pavel Machek wrote:
> > > IDE isn't really meant to allow hot swap but it can be done.
> > >
> > > As Jeremy says, electrically it is difficult to do it with a
> > > master+slave on one cable because you really must power down
> > > the interface (cable) and that would mean downing both devices.
> >
> > But that's not a problem most times, right? Downing device on same
> > channel for 10 second it takes to plug it in should not be a problem.
> > Pavel
>
> Sure, just be sure you POWER down the device(s) and the
> interface. IDE is no more designed to be hot-swap than the
> ISA buss. It was originally a buss level emulation of a
> specific Western Digital controller for ST506 drives. Talk
> to an EE familiar with the spec and implementations and make
> sure that your card can either power down or go buffered
> tristate. Smoking can be hazardous to your computer's
> health.
Hi, here your EE :)
IDE indeed never was ment to be hot pluggable. With SCSI, you can tell a
hard disk to shut down and disconnect from the bus. With IDE, your
controller has to shut down completely. You can tell your disk to
spin down, but in any case, your disk will remain powered. In shutdown
mode, your disk will not consume much power anymore, but the electronics
are NOT in a "feel free to disconnect now" state. The disk is still
listening to the bus.
This means that unplugging one device can have undetermined results for
both that device and the complementary device on the bus. As an EE, I must
admit the chances are VERY, VERY odd that it will actually affect data,
but personally, I'm one of those guys who say: In theory, it's possible,
so this is a "don't".
There are controllers who say they can shut down completely, but I have
never seen an IDE disk which can do it. The fact you can bring any disk
back alive after a sleep command (part of the latest ATA standards), means
the disk isn't suitable for hot-swapping.
If you really want to build in IDE hot swap support, I demand it comes
with a warning: Enabling this option will probably destroy your harddisks
and your chipset. Feel free to continue, but don't blame us.
> Disclaimer: I am not an Electronics Engineer, nor an expert
> on IDE/ATA/ATAPI yadda, yadda, yadda. I wrote because this
> thread, while useful for the future was on a tangent that
> wasn't telling John Summerfield how he might actually do
> what he wants, today.
Disclaimer: I am an EE, well known with IDE/ATA. I wrote this because my
opinion is Linus should block any attempts of hot pluggable IDE devices,
for Linux will be the only OS that supports it and destroys your harddisks
thanks to the fact it supports it (If other OSes support it, please let
me know, I'll guarantee you there are lots of warnings involved). Hot
plugging might work, when you are lucky. Luck is not something that should
be the base of a decent OS. If hot IDE plugging makes its way in, don't
blame me...
Jos
On Wed, Mar 27, 2002 at 11:29:00PM +0100, Pavel Machek wrote:
> Hi!
>
>
> > > > You can paint a goose yellow and call it a duck, but it is still a goose.
> > > > The electrical/electronic interface will kill you!
> > >
> > > USB mass storage is not SCSI (in some cases), either. [Ouch, and some
> > > usb-storage devices *are* IDE.]
> > >
> > > So it makes sense to view IDE as very odd SCSI controllers.
> >
> > IDE is very different. Its like calling NFS Netware. The upper layer
> > behaviour is fairly similar, and both ATAPI and USB mass storage is SCSI
> > alike (note if its not SCSI like its not USB mass storage its something else
> > eg a vendor specific driver).
>
> I have seen USB mass storage devices with ide connector on them, so it
> is certainly possible to translate between scsi and ide. If it makes
> sense from performance standpoint.... I don't know.
That's between SCSI and ATAPI, which are mostly the same on command
level. ATA (IDE), which is used for harddrives is older, and different.
--
Vojtech Pavlik
SuSE Labs
On Thu, 28 Mar 2002, Jos Hulzink wrote:
>
> Hi, here your EE :)
>
> IDE indeed never was ment to be hot pluggable. With SCSI, you can tell a
> hard disk to shut down and disconnect from the bus. With IDE, your
> controller has to shut down completely. You can tell your disk to
> spin down, but in any case, your disk will remain powered. In shutdown
> mode, your disk will not consume much power anymore, but the electronics
> are NOT in a "feel free to disconnect now" state. The disk is still
> listening to the bus.
>
> This means that unplugging one device can have undetermined results for
> both that device and the complementary device on the bus. As an EE, I must
> admit the chances are VERY, VERY odd that it will actually affect data,
> but personally, I'm one of those guys who say: In theory, it's possible,
> so this is a "don't".
>
> There are controllers who say they can shut down completely, but I have
> never seen an IDE disk which can do it. The fact you can bring any disk
> back alive after a sleep command (part of the latest ATA standards), means
> the disk isn't suitable for hot-swapping.
>
> If you really want to build in IDE hot swap support, I demand it comes
> with a warning: Enabling this option will probably destroy your harddisks
> and your chipset. Feel free to continue, but don't blame us.
FYI, there was almost a witch hunt when I went into T13 with a SCA4ATA
proposal. You understand the issue and I am glad it was you and not me to
have to bang this drum. Thanks.
> > Disclaimer: I am not an Electronics Engineer, nor an expert
> > on IDE/ATA/ATAPI yadda, yadda, yadda. I wrote because this
> > thread, while useful for the future was on a tangent that
> > wasn't telling John Summerfield how he might actually do
> > what he wants, today.
>
> Disclaimer: I am an EE, well known with IDE/ATA. I wrote this because my
> opinion is Linus should block any attempts of hot pluggable IDE devices,
> for Linux will be the only OS that supports it and destroys your harddisks
> thanks to the fact it supports it (If other OSes support it, please let
> me know, I'll guarantee you there are lots of warnings involved). Hot
> plugging might work, when you are lucky. Luck is not something that should
> be the base of a decent OS. If hot IDE plugging makes its way in, don't
> blame me...
Yep and I have melted a pile of silicon on mistakes.
I have about 500GB in drives that are paper weights.
The difference is I could use a few extra bricks as book ends.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Thursday 28 March 2002 00:51 am, Alan Cox wrote:
> > I have seen USB mass storage devices with ide connector on them, so it
> > is certainly possible to translate between scsi and ide. If it makes
> > sense from performance standpoint.... I don't know.
I have one of these. The performance that I get is really poor and there
are some quirks but it is still useful. I will be _very happy_ when I will be
able to use it for system installation/upgrade (which did not happen yet).
>
> SCSI->IDE command translation isnt too hard providing you stick to simple
> stuff and blindly ignore things like ATAPI, SMART, and all the control
> stuff. The moment you get into the complex stuff its deeply unfunny.
>
What are the prospects of seeing SCSI and IDE code (and internal
programming interface) unified? How much can be unified until
performace considerations and code complexity mandates a separation?
-- Itai
On Thu, 28 Mar 2002, Itai Nahshon wrote:
> On Thursday 28 March 2002 00:51 am, Alan Cox wrote:
> > > I have seen USB mass storage devices with ide connector on them, so it
> > > is certainly possible to translate between scsi and ide. If it makes
> > > sense from performance standpoint.... I don't know.
>
> I have one of these. The performance that I get is really poor and there
> are some quirks but it is still useful. I will be _very happy_ when I will be
> able to use it for system installation/upgrade (which did not happen yet).
>
> >
> > SCSI->IDE command translation isnt too hard providing you stick to simple
> > stuff and blindly ignore things like ATAPI, SMART, and all the control
> > stuff. The moment you get into the complex stuff its deeply unfunny.
> >
>
> What are the prospects of seeing SCSI and IDE code (and internal
> programming interface) unified? How much can be unified until
> performace considerations and code complexity mandates a separation?
Very easy if several issues are fixed, and that is the stumbling point.
I would require strict compliance to the standards, faking all the missing
parts of each transport layer, and abstraction of the all capabilties to a
comman caller/interface.
Oh and make every transport protocol support their own error recovery.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Wed Mar 27, 2002 at 03:57:48PM -0800, Andre Hedrick wrote:
> > If you really want to build in IDE hot swap support, I demand it comes
> > with a warning: Enabling this option will probably destroy your harddisks
> > and your chipset. Feel free to continue, but don't blame us.
>
> FYI, there was almost a witch hunt when I went into T13 with a SCA4ATA
> proposal. You understand the issue and I am glad it was you and not me to
> have to bang this drum. Thanks.
Ok. How about my laptop? I have an ATAPI zip drive I can plug
in instead of a second battery. It is the only device on the
second IDE bus (hdc). In windows there is a little hotplug
utility thing one runs before unplugging the zip drive. In Linux
I currently have to reboot if I want the ide-floppy driver to see
the device... I'm willing to bet that Dell has done mysterious
stuff to make the electrical part work. It would sure be nice if
I could ask the ide driver to kindly re-scan for /dev/hdc now.
Is whatever windows is doing when I hotplug my zip drive somehow
unsafe, such that supporting the same functionality on Linux is
somehow a Bad Thing(tm)?
-Erik
--
Erik B. Andersen http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--
> Ok. How about my laptop? I have an ATAPI zip drive I can plug
> in instead of a second battery. It is the only device on the
> second IDE bus (hdc). In windows there is a little hotplug
> utility thing one runs before unplugging the zip drive. In Linux
> I currently have to reboot if I want the ide-floppy driver to see
> the device... I'm willing to bet that Dell has done mysterious
> stuff to make the electrical part work. It would sure be nice if
> I could ask the ide driver to kindly re-scan for /dev/hdc now.
I would imagine Dell have stuff there to do electrical isolation, or that
they have parts of the IDE controller built into the actually removable drive
unit itself. With additional electronics you can safely do IDE hot plugging,
but you do need the electronics and the host co-operation.
On Wed, 27 Mar 2002, Erik Andersen wrote:
> On Wed Mar 27, 2002 at 03:57:48PM -0800, Andre Hedrick wrote:
> > > If you really want to build in IDE hot swap support, I demand it comes
> > > with a warning: Enabling this option will probably destroy your harddisks
> > > and your chipset. Feel free to continue, but don't blame us.
> >
> > FYI, there was almost a witch hunt when I went into T13 with a SCA4ATA
> > proposal. You understand the issue and I am glad it was you and not me to
> > have to bang this drum. Thanks.
>
> Ok. How about my laptop? I have an ATAPI zip drive I can plug
> in instead of a second battery. It is the only device on the
> second IDE bus (hdc). In windows there is a little hotplug
> utility thing one runs before unplugging the zip drive. In Linux
> I currently have to reboot if I want the ide-floppy driver to see
> the device... I'm willing to bet that Dell has done mysterious
> stuff to make the electrical part work. It would sure be nice if
> I could ask the ide driver to kindly re-scan for /dev/hdc now.
>
> Is whatever windows is doing when I hotplug my zip drive somehow
> unsafe, such that supporting the same functionality on Linux is
> somehow a Bad Thing(tm)?
That is not an ATA interface, it is Media Bay transport.
I will bet you they have not on a native 40-pin header that a ribbon
connects. Everyone is thinking it is easy, but it is not.
There was one company how got it correct, but I do not know if they are
still around. The solution is not CHEAP, it requires total HOST vender
unique callers and special state diagrams. Also this was a true
Master/Slave pair solution, the hook was it broke the timing skews on the
buss. Thus Ultra33 or mode 2 as the limit.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Thu, 28 Mar 2002, Alan Cox wrote:
> I would imagine Dell have stuff there to do electrical isolation, or that
> they have parts of the IDE controller built into the actually removable drive
> unit itself. With additional electronics you can safely do IDE hot plugging,
> but you do need the electronics and the host co-operation.
You are on the money now!
It requires more than what the average joe OS can do on its own.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Wed, Mar 27, 2002 at 04:23:34PM -0800, Andre Hedrick wrote:
> There was one company how got it correct, but I do not know if they are
> still around. The solution is not CHEAP, it requires total HOST vender
> unique callers and special state diagrams. Also this was a true
> Master/Slave pair solution, the hook was it broke the timing skews on the
> buss. Thus Ultra33 or mode 2 as the limit.
What about the hot swap bays I've picked up that properly handle power
up/down? If that is the only device on the bus and the interface is
properly tristated, what prevents hot swap?
-ben
--
"A man with a bass just walked in,
and he's putting it down
on the floor."
On Wed, 27 Mar 2002, Benjamin LaHaise wrote:
> On Wed, Mar 27, 2002 at 04:23:34PM -0800, Andre Hedrick wrote:
> > There was one company how got it correct, but I do not know if they are
> > still around. The solution is not CHEAP, it requires total HOST vender
> > unique callers and special state diagrams. Also this was a true
> > Master/Slave pair solution, the hook was it broke the timing skews on the
> > buss. Thus Ultra33 or mode 2 as the limit.
>
> What about the hot swap bays I've picked up that properly handle power
> up/down? If that is the only device on the bus and the interface is
> properly tristated, what prevents hot swap?
Power is one issue and another is shock on the buss, there are more.
Get the power wrong (grounding order) and you pull current off the ribbon.
Pull current of the ribbon, you blue-smoke the other device and or the
host. Fail to invoke a tristate block at the device in a master/slave and
you introduce shock and and data corrution.
Have I made it work in linux in the past safely yes, did it take special
hardware you bet. Can you get it OTC, no. Is is still findable not sure.
Is there a proper demand that I could go back to the known chip maker and
board maker to get them to bring it off the shelf, I doubt it.
All the users in Linux (to date) are not a big enough customer base.
If you think it is big enough, look at the shipping numbers.
I did this once back in earlier 2000 and got burned as did two companies.
Regards,
Andre Hedrick
LAD Storage Consulting Group
This has been an interesting thread. A few observations:
-the hdparm utility source dist includes a utility to activate the
Special Hardware in an ? laptop. So there's the electrical
end taken care of. The success of it the rest of the way
is made possible by (Linux) OS IDE hotswap support.
Having the OS part working well is a prerequisite for other
hardware/vendor specific magic utilities. My compaq
laptop docs with a base station, which has the electrical
stuff for hot dock. I sure wish I could use the IDE in the
base station under Linux after I dock...
-some very cheap IDE swap bays have a mechanical interlock
with the power switch. Your turn the key, and the drive shuts
off, before you can pull it out. power sequencing solved? don't
know about ATA133 on something this cheap though. Stll,
*very* useful for cloning drives, backup, sysadmin type stuff.
Just don't forget to tristate before you power off. The expensive
stuff lets the OS control those two steps. Kind of like the
difference between Mac/Sparc floppy power eject and PC
manual eject. I'll still use the manual method, and save myself
hours doing workstation backup and cloning; as long as it exists :)
-PCMCIA has electrical hot swap support...?
Lots of reasons to support it, with a warning.
Jeremy
----- Original Message -----
From: "Andre Hedrick" <[email protected]>
> Power is one issue and another is shock on the buss, there are more.
> Get the power wrong (grounding order) and you pull current off the ribbon.
> Pull current of the ribbon, you blue-smoke the other device and or the
> host. Fail to invoke a tristate block at the device in a master/slave and
> you introduce shock and and data corrution.
>
> Have I made it work in linux in the past safely yes, did it take special
> hardware you bet. Can you get it OTC, no. Is is still findable not sure.
> Is there a proper demand that I could go back to the known chip maker and
> board maker to get them to bring it off the shelf, I doubt it.
>
> All the users in Linux (to date) are not a big enough customer base.
> If you think it is big enough, look at the shipping numbers.
> I did this once back in earlier 2000 and got burned as did two companies.
On Wed, Mar 27, 2002 at 04:27:18PM -0800, Andre Hedrick wrote:
>
> It requires more than what the average joe OS can do on its own.
>
Not to be a nay-sayer, or even argue, I jsut wonder what the present
hot swappable IDE raid devices are doing?
Are these built with all the necessary electronics, or are they just
rolling the dice?
I realise the OS only knows about the scsi interface to these, but they
would appear to provide hot swappable IDE disks, albeit, using a scsi
communication to the controller.
-chuck
--
ACCEL Services, Inc.| Specialists in Gravity, Magnetics | 1(713)993-0671 ph.
1900 West Loop S. | and Integrated Interpretation | 1(713)993-0608 fax
Suite 900 | |
Houston, TX, 77027 | Chuck Campbell | [email protected]
| President & Senior Geoscientist |
Hi Chuck,
You have me laughing and I love it, your signature!
What you are referring to is an bridge to a backplane, here is the voodoo
electronics. If you check, I suspect that each drive is master mode, and
the tailgate generates the ID; where as the interface is more or less
SCA-SCSI. SCA is an interface w/ all the tristating buffers intergrated.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Wed, 27 Mar 2002, Chuck Campbell wrote:
> On Wed, Mar 27, 2002 at 04:27:18PM -0800, Andre Hedrick wrote:
> >
> > It requires more than what the average joe OS can do on its own.
> >
> Not to be a nay-sayer, or even argue, I jsut wonder what the present
> hot swappable IDE raid devices are doing?
>
> Are these built with all the necessary electronics, or are they just
> rolling the dice?
>
> I realise the OS only knows about the scsi interface to these, but they
> would appear to provide hot swappable IDE disks, albeit, using a scsi
> communication to the controller.
>
> -chuck
>
> --
> ACCEL Services, Inc.| Specialists in Gravity, Magnetics | 1(713)993-0671 ph.
> 1900 West Loop S. | and Integrated Interpretation | 1(713)993-0608 fax
> Suite 900 | |
> Houston, TX, 77027 | Chuck Campbell | [email protected]
> | President & Senior Geoscientist |
>
Alan Cox wrote:
>>Ok. How about my laptop? I have an ATAPI zip drive I can plug
>>in instead of a second battery. It is the only device on the
>>second IDE bus (hdc). In windows there is a little hotplug
>>utility thing one runs before unplugging the zip drive. In Linux
>>I currently have to reboot if I want the ide-floppy driver to see
>>the device... I'm willing to bet that Dell has done mysterious
>>stuff to make the electrical part work. It would sure be nice if
>>I could ask the ide driver to kindly re-scan for /dev/hdc now.
>
>
> I would imagine Dell have stuff there to do electrical isolation, or that
> they have parts of the IDE controller built into the actually removable drive
> unit itself. With additional electronics you can safely do IDE hot plugging,
> but you do need the electronics and the host co-operation.
OK set's sheed a light on the issue:
Contrary to popular beleve the SCSI termination stuff wasn't
introduced for the pain of system administrators but just
to meet the simple rule of physics that an stripe of copper
with a dangling end can act as a nice antenna of Bluetooth like
radio networking called signal transfer by changing current in it ;-).
ATA is using a much much cheaper and simpler aproach to the
same problem: it's called pathetically "distributed termination".
In reality this means that the master drive contains half
of a proper passive termination resistor bridge and the
slave the other half. Additionally they just specified that
the cable can't become too long to make the whole thing non
functional if there is only one drive on the cable - which
means half the therminating resistance at the end. As an added
bonus they didn't care becouse they never expected too high
transfer rates (read signal frequencies) for this interface.
Did you ever wonder why ATA cables can't be as long as SCSI?
This is the reason wy.
Now with the higher transfer rates the host chips simple started
to adjust they output drivers to the presence of one or two
devices on the cable (bus). Did you ever wonder why the CMD640
was sporadically corrupting data - well they did get this
adjustment barely right on the primary channel and
seriously wrong on the secondary. It's not cheap to
implement diode cascades in CMOS for on chip resistors with
adequate accuracy and CMD tryed to get away the cheap way...
and it was all about bus termination.
If you now suddenly remove one
device the termination will be improper and you will not
be able anylonger to provide acceptable transfer rates and you can
get some voltage spikes which can destroy the output drivers
of the involved controllers. However this is *very unlikely*,
becouse they can usually sustain quite reasonable currents -
but it's still possible. The simplest guard against this
kind of disaster is a zener diode around the output lines drivers -
this is a *very* common practice on electronics those days now,
so still the chances of a phyical desaster on recent hardware
are *very low*. Reconnecting is more interresting becouse
the gorund level differences between the devices can be
arbitrary and due to electrostatics there can be voltage
spikes which can indeed destroy you hardware...
Then there is this talking around about the "tristate of some" device.
I'm really a bit sick of it. Becouse there is no such a state
like a tri-state. We have just bus drivers on both ends.
They are implemented usually as Schmidt triggers. They have three
possible states on output: low voltage, high voltage, high resistance.
If you put the disk's and the host chip's output drivers
into the *high resistance state* or in other words if
you de-select them (not an ominous "tristate")
and then there is only a single one disk on the channel,
then it *is* electrically just safe to disconnect it thereafter.
Many modern disks support this in esp. for example PCMCIA
card adapter based pseudo disks.
If there is a simple gate chip (74HC255 or similar comes to mind)
between the host chip and the external connector - which is possible
controlled by some spare controll line on the south brigde
- it can all be easly handled by the BIOS. However to support
OS which don't have special interacting drivers you will
most likely make this small gate chip pass-through as default...
This is what all the whole "docking station" stuff is about.
(Ehmmm.... let's possible just see whatever there is actually any current
on the external ATA interface of my notebook even when the CD-ROM
is disconnected...)
But there is not really any special magic involved!
Open collector ~= a Tri-State or a float.
It does exist for the "DATA" lines, and those are not setup to float until
there is a referrence ground to set the buffer on the ATA drive.
ATAPI (best known by me is HP-Colorado 8GB tape) will suck power off the
ribbon if there is no line voltage applied to the Molex connector.
I hate to say of you are core developing on a laptop, you are not playing
w/ native hardware. Laptops to special things, period.
ATA does not goe the distance because they did not put line drivers of any
strength, the the $5.00 difference in the controllor on the bottom of the
drive. Also I have cables which are 3 feet and run in mode 5 or Ultra100,
but you can be sure that it is a special HOST to provide the push and
power to make the distance. It has 80c headers on the HOST side but 40c
IDC's on the device side.
There is majic and it gets released if you do it wrong and form bricks.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
On Thu, 28 Mar 2002, Martin Dalecki wrote:
> OK set's sheed a light on the issue:
>
> Contrary to popular beleve the SCSI termination stuff wasn't
> introduced for the pain of system administrators but just
> to meet the simple rule of physics that an stripe of copper
> with a dangling end can act as a nice antenna of Bluetooth like
> radio networking called signal transfer by changing current in it ;-).
>
> ATA is using a much much cheaper and simpler aproach to the
> same problem: it's called pathetically "distributed termination".
> In reality this means that the master drive contains half
> of a proper passive termination resistor bridge and the
> slave the other half. Additionally they just specified that
> the cable can't become too long to make the whole thing non
> functional if there is only one drive on the cable - which
> means half the therminating resistance at the end. As an added
> bonus they didn't care becouse they never expected too high
> transfer rates (read signal frequencies) for this interface.
>
> Did you ever wonder why ATA cables can't be as long as SCSI?
> This is the reason wy.
>
> Now with the higher transfer rates the host chips simple started
> to adjust they output drivers to the presence of one or two
> devices on the cable (bus). Did you ever wonder why the CMD640
> was sporadically corrupting data - well they did get this
> adjustment barely right on the primary channel and
> seriously wrong on the secondary. It's not cheap to
> implement diode cascades in CMOS for on chip resistors with
> adequate accuracy and CMD tryed to get away the cheap way...
> and it was all about bus termination.
>
> If you now suddenly remove one
> device the termination will be improper and you will not
> be able anylonger to provide acceptable transfer rates and you can
> get some voltage spikes which can destroy the output drivers
> of the involved controllers. However this is *very unlikely*,
> becouse they can usually sustain quite reasonable currents -
> but it's still possible. The simplest guard against this
> kind of disaster is a zener diode around the output lines drivers -
> this is a *very* common practice on electronics those days now,
> so still the chances of a phyical desaster on recent hardware
> are *very low*. Reconnecting is more interresting becouse
> the gorund level differences between the devices can be
> arbitrary and due to electrostatics there can be voltage
> spikes which can indeed destroy you hardware...
>
> Then there is this talking around about the "tristate of some" device.
> I'm really a bit sick of it. Becouse there is no such a state
> like a tri-state. We have just bus drivers on both ends.
> They are implemented usually as Schmidt triggers. They have three
> possible states on output: low voltage, high voltage, high resistance.
>
> If you put the disk's and the host chip's output drivers
> into the *high resistance state* or in other words if
> you de-select them (not an ominous "tristate")
> and then there is only a single one disk on the channel,
> then it *is* electrically just safe to disconnect it thereafter.
> Many modern disks support this in esp. for example PCMCIA
> card adapter based pseudo disks.
>
> If there is a simple gate chip (74HC255 or similar comes to mind)
> between the host chip and the external connector - which is possible
> controlled by some spare controll line on the south brigde
> - it can all be easly handled by the BIOS. However to support
> OS which don't have special interacting drivers you will
> most likely make this small gate chip pass-through as default...
> This is what all the whole "docking station" stuff is about.
>
> (Ehmmm.... let's possible just see whatever there is actually any current
> on the external ATA interface of my notebook even when the CD-ROM
> is disconnected...)
>
> But there is not really any special magic involved!
>
Andre Hedrick wrote:
> Open collector ~= a Tri-State or a float.
TTL logics based on bipolar diffusion transistors?
Certainly *not*. We are in CMOS land here where
the term open collector even doesn't apply at all.
Only the DASP (master slave selection pin) is OC and thus
most propably implemented by a bipolar transitor, which seems
logical, since this line has to have a big fan-out current to
basically enable quite a few gates.
> It does exist for the "DATA" lines, and those are not setup to float until
> there is a referrence ground to set the buffer on the ATA drive.
> ATAPI (best known by me is HP-Colorado 8GB tape) will suck power off the
> ribbon if there is no line voltage applied to the Molex connector.
This is most possibly the hard wired resistor bridge used for termination
which you see "sucking the power".
> I hate to say of you are core developing on a laptop, you are not playing
> w/ native hardware. Laptops to special things, period.
Not at all. (BTW. I don't do my main developement on a notebook. Never
said that.)
> ATA does not goe the distance because they did not put line drivers of any
> strength, the the $5.00 difference in the controllor on the bottom of the
Did I say it was cheap CMOS and not TTL? Do you still wonder
why the output drivers are not able to provide strong output currents?
> drive. Also I have cables which are 3 feet and run in mode 5 or Ultra100,
> but you can be sure that it is a special HOST to provide the push and
> power to make the distance. It has 80c headers on the HOST side but 40c
> IDC's on the device side.
It is most likely that the special "host" provides only special
partial termination. And the ribbons you use are most propably of
low resistance (possibly silver plated copper cores).
Otherwise the signals from the disks wouldn't be able to travel back.
> -some very cheap IDE swap bays have a mechanical interlock
> with the power switch. Your turn the key, and the drive shuts
> off, before you can pull it out. power sequencing solved? don't
No - you also have to isolate the IDE bus
> -PCMCIA has electrical hot swap support...?
Yes - but PCMCIA is effectively hot swap ISA bus, the controller is on
the pcmcia card - different ball game
> Then there is this talking around about the "tristate of some" device.
> I'm really a bit sick of it. Becouse there is no such a state
> like a tri-state. We have just bus drivers on both ends.
> They are implemented usually as Schmidt triggers. They have three
> possible states on output: low voltage, high voltage, high resistance.
Which is one, two, three states -> tri-state.
Electronics terminology then abuses that to mean the high impedance state (not
high resistance please if we are going to be picky).
Alan
On Thu, 28 Mar 2002, Alan Cox wrote:
> > -PCMCIA has electrical hot swap support...?
> Yes - but PCMCIA is effectively hot swap ISA bus, the controller is on
> the pcmcia card - different ball game
It would be cool if that were unified. The Amiga people use 1:1 adaptors
for CD-ROMs (besides, the PCMCIA port in the Amiga is the second IDE
channel)...
Simon
--
GPG public key available from http://phobos.fs.tum.de/pgp/Simon.Richter.asc
Fingerprint: 040E B5F7 84F1 4FBC CEAD ADC6 18A0 CC8D 5706 A4B4
Hi! I'm a .signature virus! Copy me into your ~/.signature to help me spread!
On Wed, 27 Mar 2002, Erik Andersen wrote:
> Ok. How about my laptop? I have an ATAPI zip drive I can plug
> in instead of a second battery. It is the only device on the
> second IDE bus (hdc). In windows there is a little hotplug
> utility thing one runs before unplugging the zip drive. In Linux
> I currently have to reboot if I want the ide-floppy driver to see
> the device... I'm willing to bet that Dell has done mysterious
> stuff to make the electrical part work. It would sure be nice if
> I could ask the ide driver to kindly re-scan for /dev/hdc now.
>
> Is whatever windows is doing when I hotplug my zip drive somehow
> unsafe, such that supporting the same functionality on Linux is
> somehow a Bad Thing(tm)?
Erik,
I can't say from here. My guess is that the chipset has an extension to
the ATA standard that allows hot plugging. Your CDrom behaves like a
normal IDE device, which doesn't mean it is one :) For your hotpluggable
device support, we'll need info about the chipset your laptop uses, and
the cdrom drive. Maybe Dell is willing to help us out here.
Jos
On Wed, 27 Mar 2002, Benjamin LaHaise wrote:
> What about the hot swap bays I've picked up that properly handle power
> up/down? If that is the only device on the bus and the interface is
> properly tristated, what prevents hot swap?
>
The fact it MIGHT work. I don't want to have to do anything with an OS
that tells me:
It might now be safe to unplug your IDE device and if you are lucky your
mainboard and drive are still alive.
When you need hotplug capability buy decent hardware.
Jos
On Thu, 28 Mar 2002, Alan Cox wrote:
> > Then there is this talking around about the "tristate of some" device.
> > I'm really a bit sick of it. Becouse there is no such a state
> > like a tri-state. We have just bus drivers on both ends.
> > They are implemented usually as Schmidt triggers. They have three
> > possible states on output: low voltage, high voltage, high resistance.
>
> Which is one, two, three states -> tri-state.
Eeks, a Linux developper who can count ;-)
> Electronics terminology then abuses that to mean the high impedance state (not
> high resistance please if we are going to be picky).
Correct, though I hope in most cases the impedance is almost equal to the
resistance, otherwise there would be problems at the current high speeds.
For those who don't know the difference:
Resistance is only a part of impedance. Inpedance also contains a
frequency-dependant part, caused by induction in, and capacity between
wires and electronic devices.
The idea in formula:
Induction = Resistance +
frequency * Induction +
1 / (frequency * Capacity)
For an accurate formula, see any book about EE.
Jos
Jos Hulzink wrote:
> On Thu, 28 Mar 2002, Alan Cox wrote:
>
>
>>>Then there is this talking around about the "tristate of some" device.
>>>I'm really a bit sick of it. Becouse there is no such a state
>>>like a tri-state. We have just bus drivers on both ends.
>>>They are implemented usually as Schmidt triggers. They have three
>>>possible states on output: low voltage, high voltage, high resistance.
>>
>>Which is one, two, three states -> tri-state.
>
>
> Eeks, a Linux developper who can count ;-)
>
>
>>Electronics terminology then abuses that to mean the high impedance state (not
>>high resistance please if we are going to be picky).
>
>
> Correct, though I hope in most cases the impedance is almost equal to the
> resistance, otherwise there would be problems at the current high speeds.
>
> For those who don't know the difference:
>
> Resistance is only a part of impedance. Inpedance also contains a
> frequency-dependant part, caused by induction in, and capacity between
> wires and electronic devices.
>
> The idea in formula:
>
> Induction = Resistance +
> frequency * Induction +
> 1 / (frequency * Capacity)
>
> For an accurate formula, see any book about EE.
Ehmmm... it was a just too direct translation of the german term hochohmig ;-).
And indeed the correct english term is high-impedance.
To get everything clear, regarding the hot-swapping laptops:
ATA is the standard that tells how to communicate with a harddisk. You
just can stop communicating, easy as it is. Finish the last command like
ATA says you to, and the communication is idle.
IDE is one implementation of the communication channel. This specific
implementation is not designed with hot swappable capabilities in mind.
Laptops use their own communication channel. As long as the channel is
capable of communicating ATA-compatible, the designer is free in designing
this channel. So, designers are free to implement neat tristate buffers,
real powerdown modes in their harddisks, etcetera. Usually, to prevent
problems, these communication channels present theirselves to the outer
world as generic IDE compliant.
Maybe a clear example is the Serial-ATA bus (http://www.serialata.com). This is a
serial communication channel for ATA communication. This channel has
nothing to do with IDE anymore, but is still completely ATA compliant.
The problem is that ATA and IDE were just made for each other, so they are
mixed up many times. In fact, the part that is often called the IDE
driver, is actually the ATA driver. The IDE driver is the code that sets
up your chipset for Ultra-DMA etcetera.
Jos
I was suggesting that there are common cases where
the electrical parts at the drive (single drive) end are
taken care of.
what comes before is an hdparm -b 2 (tristate),
then power off drive, then yank it out. (if the
PCI chipset supports it, and the driver supplies a
control method)
The parts that are still rough are when you put it back
in, it doesn't have the benefit of the BIOS transfer
speed/type initialization, or the ide driver's bus scan.
Bottom line for me, I think there's enough merit to this
(although not 100% - you can only dress up frankenstein
so much) , and I'm working on cleanups, so please don't
remove the code from the next version, and anyone else
working on it, please continue, that's all.
Jeremy
----- Original Message -----
From: "Alan Cox" <[email protected]>
To: "Jeremy Jackson" <[email protected]>
Sent: Thursday, March 28, 2002 1:33 AM
Subject: Re: IDE and hot-swap disk caddies
> > -some very cheap IDE swap bays have a mechanical interlock
> > with the power switch. Your turn the key, and the drive shuts
> > off, before you can pull it out. power sequencing solved? don't
>
> No - you also have to isolate the IDE bus
>
> > -PCMCIA has electrical hot swap support...?
>
> Yes - but PCMCIA is effectively hot swap ISA bus, the controller is on
> the pcmcia card - different ball game
>
On Wed, 27 Mar 2002, John Summerfield wrote:
> > At the interface level, there is some support.
> > Look at hdparm's -b option to tristate the bus.
>
> There is no mention of -b in hdparm's help screen, and in the man page
> it's only mentioned in the description of -L.
>
> Is there a newer version of hdparm I need?
I think he meant -x.
--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.
hdparm - get/set hard disk parameters - version v4.6
Usage: hdparm [options] [device] ..
Options:
-a get/set fs readahead
-A set drive read-lookahead flag (0/1)
-b get/set bus state (0 == off, 1 == on, 2 == tristate)
-B get Advanced Power Management setting (1-255)
-c get/set IDE 32-bit IO setting
-C check IDE power mode status
-d get/set using_dma flag
-D enable/disable drive defect-mgmt
-E set cd-rom drive speed
-f flush buffer cache for device on exit
-g display drive geometry
-h display terse usage information
-i display drive identification
-I detailed/current information directly from drive
-k get/set keep_settings_over_reset flag (0/1)
-K set drive keep_features_over_reset flag (0/1)
-L set drive doorlock (0/1) (removable harddisks only)
-m get/set multiple sector count
-n get/set ignore-write-errors flag (0/1)
-p set PIO mode on IDE interface chipset (0,1,2,3,4,...)
-P set drive prefetch count
-q change next setting quietly
-r get/set readonly flag (DANGEROUS to set)
-R register an IDE interface (DANGEROUS)
-S set standby (spindown) timeout
-t perform device read timings
-T perform cache read timings
-u get/set unmaskirq flag (0/1)
-U un-register an IDE interface (DANGEROUS)
-v default; same as -acdgkmnru (-gr for SCSI, -adgr for XT)
-V display program version and exit immediately
-w perform device reset (DANGEROUS)
-W set drive write-caching flag (0/1) (DANGEROUS)
-x perform device for hotswap flag (0/1) (DANGEROUS)
-X set IDE xfer mode (DANGEROUS)
-y put IDE drive in standby mode
-Y put IDE drive to sleep
--
Mark Lord
Real-Time Remedies Inc.
[email protected]
> > > possible states on output: low voltage, high voltage, high resistance.
> > Which is one, two, three states -> tri-state.
Yeah well, what an EE means when she speaks of putting a buffer into
tri-state, is that she put it into its 3rd state, which means its high
impedance state. All EEs understand it that way, though it is not
necessarily grammatically correct, so just get used to it... ;-)
--
Herman Oosthuysen
[email protected]
Suite 300, #3016, 5th Ave NE,
Calgary, Alberta, T2A 6K4, Canada
Phone: (403) 569-5687, Fax: (403) 235-3965
[email protected] said:
> -x perform device for hotswap flag (0/1) (DANGEROUS)
I got 4.6 from rawhide; -x isn't in the man page.
[summer@numbat summer]$ man hdparm | grep -w x
[summer@numbat summer]$ man hdparm | grep -w X
good idea to use the appropriate -X option in com-
-X Set the IDE transfer mode for newer (E)IDE/ATA2
drives which support alternate transfer modes, -X
[summer@numbat summer]$
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!
Not knowing a lot about how it all works, but also not willing to give
up without trying, ....
> > > > > syslog, of course, is user-space. the real question is where does
> > > > > your (raw, kernel-level) console go. serial console?
> > > >
> > > > What do I need to do to get them on tty11?
> > >
> > > kernel-level logging can't be configured like that: it logs
> > > to physical devices.
> >
> > What are my options to get to a position I'm sure to see the kernel
> > messages as they appear?
>
> serial console. or work in text mode. or parallel console.
> the point is that panic-level kernel messages cannot possibly
> go through the regular device infrastructure, and therefore
> cannot be tidily tucked away on some other VC, etc. the serial
> and parallel console code is used directly by printk to frob
> the hardware.
I'm working in runlevel 3 (no GUI) at the console.
>
> > > > Can I play games with modules? Perhaps by defining the 5513 driver as a
> > > > module and loading it separately for each IDE channel?
> > >
> > > I don't believe so.
> >
> > What would happen I boot with ide1=noprobe and then load ide.o
> > (extracted from a modularised compile)?
>
> if you could boot with no ide, then insmod the ide, that would work.
I booted with ide1=noprobe and that came up with no IDE1 which is what
I want.
Except that, when I installed the IDE modules built from the same
source (so the versions match), this happens:
Linux version 2.4.9-31 ([email protected]) (gcc version
2.96 20000731 (Red Hat Linux 7.1 2.96-98)) #1 Tue Feb 26 06:25:35 EST
2002
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 0000000003c00000 (usable)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
On node 0 totalpages: 15360
zone(0): 4096 pages.
zone(1): 11264 pages.
zone(2): 0 pages.
Kernel command line: ro root=/dev/hda2 vga=6 ide1=noprobe
ide_setup: ide1=noprobe
Initializing CPU#0
Detected 133.160 MHz processor.
<snip>
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz PCI bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller on PCI bus 00 dev 09
PCI: Found IRQ 11 for device 00:01.1
SIS5513: chipset revision 208
SIS5513: not 100% native mode: will probe irqs later
SiS5597
ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:pio
ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio
hda: FUJITSU MPB3043ATU E, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: 8448300 sectors (4326 MB), CHS=525/255/63, UDMA(33)
Partition check:
hda: hda1 hda2 hda3
Floppy drive(s): fd0 is 1.44M
Doesn't my 'noprobe" mean don't probe IDE1?
and then this:
Freeing initrd memory: 414k freed
VFS: Mounted root (ext2 filesystem).
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz PCI bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller on PCI bus 00 dev 09
PCI: Found IRQ 11 for device 00:01.1
SIS5513: chipset revision 208
SIS5513: not 100% native mode: will probe irqs later
SiS5597
ide0: BM-DMA at 0xd000-0xd007 -- ERROR, PORT ADDRESSES ALREADY IN
USE
ide1: BM-DMA at 0xd008-0xd00f -- ERROR, PORT ADDRESSES ALREADY IN
USE
Journalled Block Device driver loaded
(the drive's turned off at present).
When I turned the drive on, the system instantly rebooted. If there
were any messages, there was no time to read them.
=====================================
If I boot with the drive turned on, then this happens:
The same as before for the builtin IDE driver, then ....
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 414k freed
VFS: Mounted root (ext2 filesystem).
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz PCI bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller on PCI bus 00 dev 09
PCI: Found IRQ 11 for device 00:01.1
SIS5513: chipset revision 208
SIS5513: not 100% native mode: will probe irqs later
SiS5597
ide0: BM-DMA at 0xd000-0xd007 -- ERROR, PORT ADDRESSES ALREADY IN
USE
ide1: BM-DMA at 0xd008-0xd00f -- ERROR, PORT ADDRESSES ALREADY IN
USE
hdc: M1614TA, ATA DISK drive
ide1 at 0x170-0x177,0x376 on irq 15
hdc: 2131584 sectors (1091 MB) w/64KiB Cache, CHS=2114/16/63
hdc: hdc1 hdc2 hdc3
Journalled Block Device driver loaded
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
On the screen, there's a message (I guess from modprobe) about loading
the three modules.
These are the modules loaded:
Module Size Used by Not tainted
parport_pc 14692 1 (autoclean)
lp 6400 0 (autoclean)
parport 25568 1 (autoclean) [parport_pc lp]
appletalk 20972 12
iptable_filter 2176 0 (autoclean) (unused)
ip_tables 11712 1 [iptable_filter]
epic100 12260 1
ne 7136 0 (unused)
8390 6624 0 [ne]
ext3 62512 2
jbd 40320 2 [ext3]
ide-disk 7152 0
ide-probe-mod 8416 0
ide-mod 144128 0 [ide-disk ide-probe-mod]
The only entries in /etc/modules.conf pertain to the printer and
network interfaces.
How do I control when these modules load?
fwiw it seems that I can unload/reload those modules as I like, until I
cycle power on the drive.
>
> > On this system, it does not matter if I destroy filesystems while
> > testing, though I don't wish to fry any hardware.
>
> the risk of frying hardware is *inherent* to ide hotplug,
> since the hardware doesn't support HP.
>
--
Cheers
John Summerfield
Microsoft's most solid OS: http://www.geocities.com/rcwoolley/
Note: mail delivered to me is deemed to be intended for me, for my
disposition.
==============================
If you don't like being told you're wrong,
be right!