Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Mar 2008 02:17:10 -0800
From:      "Ted Mittelstaedt" <tedm@toybox.placo.com>
To:        "Dane Miller" <dane@greatschools.net>, <freebsd-questions@freebsd.org>
Subject:   RE: sata slave on intel ICH7
Message-ID:  <BMEDLGAENEKCJFGODFOCAEHJCFAA.tedm@toybox.placo.com>
In-Reply-To: <1204848703.19550.4.camel@danedesk.greatschools.net>

next in thread | previous in thread | raw e-mail | index | archive | help

> I thought SATA did away with the master/slave ugliness of PATA. 

no.

SATA and PATA both present the same ATA interface to the
system, the only difference is how the chips are connected
to the hard drive.

The ATA interface is backwards compatible all the way back
to the original IBM x86 BIOS that supported only 1 MFM
controller with a maximum of 2 drives on it that used the
Task File interface.  When the PC architecture went to 
IDE drives from MFM, they didn't want to rewrite their
motherboard BIOS code because MS-DOS was what everyone ran,
and DOS depended on the BIOS code for accessing the disks.

This is why today you can still boot MS-DOS on a SATA
motherboard.

All of the newer stuff like DMA transfers and such, are a
superset laid on top of the original IDE interface, but
that software interface is still present in ATA.

If you don't like it, buy a SATA RAID card.

It would be possible for a SATA chip to be designed to
use separate controllers and unique busses to each SATA
disk.  For example that is how the HP Proliant servers
work, every SATA port is a Master. Each
SATA port comes up as a separate atapci, ie atapci0,
atapci1, atapci2, etc.  And, although each atapci has
2 channels on it, the second channel has no port on it
and cannot have anything plugged into it.

Your

> -----Original Message-----
> From: owner-freebsd-questions@freebsd.org
> [mailto:owner-freebsd-questions@freebsd.org]On Behalf Of Dane Miller
> Sent: Thursday, March 06, 2008 4:12 PM
> To: freebsd-questions@freebsd.org
> Subject: Re: sata slave on intel ICH7
> 
> 
> Anyone have thoughts on this?  If I'm missing salient details or posting
> to the wrong list, please point me in the right direction.
> 
> On Wed, 2008-03-05 at 13:54 -0800, Dane Miller wrote:
> > Hi,
> > 
> > FreeBSD 6.3-RELEASE detects one of my three SATA disks as "ata2-slave".
> > I thought SATA did away with the master/slave ugliness of PATA. 
> > 
> > Thinking maybe this was misleading output from FreeBSD, I did some
> > concurrent writes using dd.  Sure enough, I see poor performance on
> > concurrent writes to ad4 and ad5 (ata2-master and ata2-slave), while I
> > see good performance on concurrent writes to ad4 and ad6 (ata2-master,
> > ata3-master).  I can provide more details on the write tests I
> > performed, but I'm more interested in *why* FreeBSD detects one of my
> > SATA disks as a slave...
> > 
> > Here are some details:
> > 
> > 6.3-RELEASE FreeBSD 6.3-RELEASE #0 i386
> > Motherboard: Intel S3000AH
> > BIOS: SATA Mode is set to "Enhanced" (as opposed to "Legacy")
> > 
> > # atacontrol list
> > ATA channel 0:
> >     Master:      no device present
> >     Slave:       no device present
> > ATA channel 1:
> >     Master:      no device present
> >     Slave:       no device present
> > ATA channel 2:
> >     Master:  ad4 <WDC WD2500KS-00MJB0/02.01C03> Serial ATA II
> >     Slave:   ad5 <WDC WD2500KS-00MJB0/02.01C03> Serial ATA II
> > ATA channel 3:
> >     Master:  ad6 <WDC WD2500KS-00MJB0/02.01C03> Serial ATA II
> >     Slave:       no device present
> > 
> > # grep -i ata /var/run/dmesg.boot 
> > atapci0: <Intel ICH7 UDMA100 controller> port
> > 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x30b0-0x30bf irq 18 at device 31.1
> > on pci0
> > ata0: <ATA channel 0> on atapci0
> > ata1: <ATA channel 1> on atapci0
> > atapci1: <Intel ICH7 SATA300 controller> port
> > 0x30c8-0x30cf,0x30e4-0x30e7,0x30c0-0x30c7,0x30e0-0x30e3,0x30a0-0x30af
> > mem 0x88200000-0x882003ff irq 19 at device 31.2 on pci0
> > ata2: <ATA channel 0> on atapci1
> > ata3: <ATA channel 1> on atapci1
> > ad4: 238475MB <WDC WD2500KS-00MJB0 02.01C03> at ata2-master SATA150
> > ad5: 238475MB <WDC WD2500KS-00MJB0 02.01C03> at ata2-slave SATA150
> > ad6: 238475MB <WDC WD2500KS-00MJB0 02.01C03> at ata3-master SATA150
> > 
> > Any guidance on this would be greatly appreciated.  Thanks,
> > Dane
> > 
> 
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to 
> "freebsd-questions-unsubscribe@freebsd.org"
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BMEDLGAENEKCJFGODFOCAEHJCFAA.tedm>