Manuel Bouyer | 30 Nov 22:04

AHCI driver commited

Hi,
I've just commited an ahci driver. Works fine for me on Intel 63xxESB AHCI
controller:
ahcisata0 at pci0 dev 31 function 2: Intel 63xxESB AHCI Serial ATA Controller
ahcisata0: AHCI revision 1.0, 6 ports, 32 command slots, features 0xc6226000
ahcisata0: interrupting at ioapic0 pin 19 (irq 10)
atabus0 at ahcisata0 channel 0
atabus1 at ahcisata0 channel 1
atabus2 at ahcisata0 channel 2
atabus3 at ahcisata0 channel 3
atabus4 at ahcisata0 channel 4
atabus5 at ahcisata0 channel 5
ahcisata0 port 0: device present, speed: 3.0GB/s
ahcisata0 port 2: device present, speed: 3.0GB/s
wd0 at atabus0 drive 0: <Hitachi HDS721616PLA380>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 153 GB, 319120 cyl, 16 head, 63 sec, 512 bytes/sect x 321672960 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
wd1 at atabus2 drive 0: <Hitachi HDS721616PLA380>
wd1: drive supports 16-sector PIO transfers, LBA48 addressing
wd1: 153 GB, 319120 cyl, 16 head, 63 sec, 512 bytes/sect x 321672960 sectors
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd1(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)

Note that this driver will only attach if the controller is in AHCI mode
(there's usually a BIOS option for this); if it's in compat mode it'll
be handled by piixide as before.

--

-- 
(Continue reading)

Greg Troxel | 6 Dec 02:30
Picon

Re: AHCI driver commited

Thanks - on a dual-core Thinkpad T60 the new code boots and runs fine.

piixide0 at pci0 dev 31 function 1
piixide0: Intel 82801GB/GR IDE Controller (ICH7) (rev. 0x02)
piixide0: bus-master DMA support present
piixide0: primary channel configured to compatibility mode
piixide0: primary channel interrupting at ioapic0 pin 14 (irq 14)
atabus0 at piixide0 channel 0
piixide0: secondary channel configured to compatibility mode
piixide0: secondary channel ignored (disabled)
ahcisata0 at pci0 dev 31 function 2: Intel 82801GBM AHCI SATA Controller
ahcisata0: AHCI revision 1.0, 4 ports, 32 command slots, features 0xc710e000
ahcisata0: interrupting at ioapic0 pin 16 (irq 11)
atabus1 at ahcisata0 channel 0
[other stuff]
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <MATSHITADVD-RAM UJ-842, , RB01> cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
cd0(piixide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
ahcisata0 port 0: device present, speed: 1.5Gb/s
wd0 at atabus1 drive 0: <HTS541010G9SA00>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 95396 MB, 193821 cyl, 16 head, 63 sec, 512 bytes/sect x 195371568 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100) (using DMA)

--

-- 
    Greg Troxel <gdt <at> ir.bbn.com>

(Continue reading)

Pierrick Brossin | 2 Dec 12:43

Re: AHCI driver commited

On Thu, Nov 30, 2006 at 10:04:37PM +0100, Manuel Bouyer wrote:
> Hi,
> I've just commited an ahci driver. Works fine for me on Intel 63xxESB AHCI
> controller:

Yay thanks !

ahcisata0 at pci0 dev 31 function 2: Intel 82801H AHCI SATA Controller
with 4 ports
ahcisata0: AHCI revision 1.0, 4 ports, 32 command slots, features
0xff22e0c0
ahcisata0: interrupting at ioapic0 pin 19, event channel 7
atabus2 at ahcisata0 channel 0
atabus3 at ahcisata0 channel 1
atabus4 at ahcisata0 channel 4
atabus5 at ahcisata0 channel 5
ahcisata0 port 0: device present, speed: 3.0Gb/s
wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6
(Ultra/133) (using DMA)

Does it give any improvement ?

Thanks!

-Pierrick Brossin

Manuel Bouyer | 2 Dec 13:13

Re: AHCI driver commited

On Sat, Dec 02, 2006 at 12:43:29PM +0100, Pierrick Brossin wrote:
> On Thu, Nov 30, 2006 at 10:04:37PM +0100, Manuel Bouyer wrote:
> > Hi,
> > I've just commited an ahci driver. Works fine for me on Intel 63xxESB AHCI
> > controller:
> 
> Yay thanks !
> 
> ahcisata0 at pci0 dev 31 function 2: Intel 82801H AHCI SATA Controller
> with 4 ports
> ahcisata0: AHCI revision 1.0, 4 ports, 32 command slots, features
> 0xff22e0c0
> ahcisata0: interrupting at ioapic0 pin 19, event channel 7
> atabus2 at ahcisata0 channel 0
> atabus3 at ahcisata0 channel 1
> atabus4 at ahcisata0 channel 4
> atabus5 at ahcisata0 channel 5
> ahcisata0 port 0: device present, speed: 3.0Gb/s
> wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6
> (Ultra/133) (using DMA)
> 
> Does it give any improvement ?

With more than 2 drives, yes. Also there will be NCQ support in the
future.

--

-- 
Manuel Bouyer <bouyer <at> antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--
(Continue reading)

Christos Zoulas | 1 Dec 17:16

Re: AHCI driver commited

In article <20061130210437.GA1601 <at> antioche.eu.org>,
Manuel Bouyer  <bouyer <at> antioche.eu.org> wrote:
>Hi,
>I've just commited an ahci driver. Works fine for me on Intel 63xxESB AHCI
>controller:
>ahcisata0 at pci0 dev 31 function 2: Intel 63xxESB AHCI Serial ATA Controller
>ahcisata0: AHCI revision 1.0, 6 ports, 32 command slots, features 0xc6226000
>ahcisata0: interrupting at ioapic0 pin 19 (irq 10)
>atabus0 at ahcisata0 channel 0
>atabus1 at ahcisata0 channel 1
>atabus2 at ahcisata0 channel 2
>atabus3 at ahcisata0 channel 3
>atabus4 at ahcisata0 channel 4
>atabus5 at ahcisata0 channel 5
>ahcisata0 port 0: device present, speed: 3.0GB/s
>ahcisata0 port 2: device present, speed: 3.0GB/s
>wd0 at atabus0 drive 0: <Hitachi HDS721616PLA380>
>wd0: drive supports 16-sector PIO transfers, LBA48 addressing
>wd0: 153 GB, 319120 cyl, 16 head, 63 sec, 512 bytes/sect x 321672960 sectors
>wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
>wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6
>(Ultra/133) (using DMA)
>wd1 at atabus2 drive 0: <Hitachi HDS721616PLA380>
>wd1: drive supports 16-sector PIO transfers, LBA48 addressing
>wd1: 153 GB, 319120 cyl, 16 head, 63 sec, 512 bytes/sect x 321672960 sectors
>wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
>wd1(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6
>(Ultra/133) (using DMA)
>
>Note that this driver will only attach if the controller is in AHCI mode
(Continue reading)

Chavdar Ivanov | 1 Dec 01:08
Picon

Re: AHCI driver commited

On 11/30/06, Manuel Bouyer <bouyer <at> antioche.eu.org> wrote:
> Hi,
> I've just commited an ahci driver. Works fine for me on Intel 63xxESB AHCI
> controller:
> ahcisata0 at pci0 dev 31 function 2: Intel 63xxESB AHCI Serial ATA Controller
> ahcisata0: AHCI revision 1.0, 6 ports, 32 command slots, features 0xc6226000
> ahcisata0: interrupting at ioapic0 pin 19 (irq 10)

Seems to be working fine:

ahcisata0 at pci0 dev 31 function 2: Intel 82801GBM AHCI SATA Controller
ahcisata0: AHCI revision 1.0, 4 ports, 32 command slots, features 0xdf12e000
ahcisata0: interrupting at ioapic0 pin 17 (irq 10)
atabus1 at ahcisata0 channel 0

(this is an HP nx6310 laptop - I have put a few questions about it earlier).

> atabus0 at ahcisata0 channel 0
> atabus1 at ahcisata0 channel 1
> atabus2 at ahcisata0 channel 2
> atabus3 at ahcisata0 channel 3
> atabus4 at ahcisata0 channel 4
> atabus5 at ahcisata0 channel 5
> ahcisata0 port 0: device present, speed: 3.0GB/s
> ahcisata0 port 2: device present, speed: 3.0GB/s
> wd0 at atabus0 drive 0: <Hitachi HDS721616PLA380>
> wd0: drive supports 16-sector PIO transfers, LBA48 addressing
> wd0: 153 GB, 319120 cyl, 16 head, 63 sec, 512 bytes/sect x 321672960 sectors
> wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
> wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
(Continue reading)

Thomas E. Spanjaard | 30 Nov 23:30

Re: AHCI driver commited

Manuel Bouyer wrote:
> ahcisata0 port 0: device present, speed: 3.0GB/s
> ahcisata0 port 2: device present, speed: 3.0GB/s

Ofcourse, that should be either 3Gbps (raw), 2.4Gbps (10B/8B encoding), 
375MB/s (raw) or 300MB/s (10B/8B encoding).

Otherwise, very nice :).

Cheers,
--

-- 
         Thomas E. Spanjaard
         tgen <at> netphreax.net
Manuel Bouyer | 1 Dec 00:07

Re: AHCI driver commited

On Thu, Nov 30, 2006 at 10:30:05PM +0000, Thomas E. Spanjaard wrote:
> Manuel Bouyer wrote:
> >ahcisata0 port 0: device present, speed: 3.0GB/s
> >ahcisata0 port 2: device present, speed: 3.0GB/s
> 
> Ofcourse, that should be either 3Gbps (raw), 2.4Gbps (10B/8B encoding), 
> 375MB/s (raw) or 300MB/s (10B/8B encoding).

Fixed, thanks !

--

-- 
Manuel Bouyer <bouyer <at> antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Gmane