All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vincent Bernat <Vincent.Bernat@wallix.com>
To: Willy Tarreau <w@1wt.eu>, linux-ide@vger.kernel.org
Cc: JF Taltavull <jean-francois.taltavull@wallix.com>
Subject: SATA update in 2.4, ICH8
Date: Thu, 21 Jun 2007 09:41:58 +0200	[thread overview]
Message-ID: <87y7idiwjd.fsf@naruto.ifr.lan> (raw)

[-- Attachment #1: Type: text/plain, Size: 111 bytes --]

Hi !

I have patched 2.4.34 with the  following patch to allow the use of SATA
drive on an ICH8 motherboard :


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 571 bytes --]

--- linux/drivers/scsi/ata_piix.c~	2006-12-22 17:06:45.000000000 -0500
+++ linux/drivers/scsi/ata_piix.c	2007-06-14 05:27:02.000000000 -0400
@@ -115,6 +115,8 @@
 	{ 0x8086, 0x2653, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata_rm },
 	{ 0x8086, 0x27c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich7_sata },
 	{ 0x8086, 0x27c4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich7_sata },
+	{ 0x8086, 0x2820, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich7_sata },
+	{ 0x8086, 0x2825, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich7_sata },
 	{ 0x8086, 0x2680, PCI_ANY_ID, PCI_ANY_ID, 0, 0, esb2_sata },
 
 	{ }	/* terminate list */

[-- Attachment #3: Type: text/plain, Size: 5680 bytes --]


This works fine for the disk but  this does not work for the CDROM. Here
is lspci:

00:00.0 Host bridge: Intel Corporation Q963/Q965 Memory Controller Hub (rev 02)
00:01.0 PCI bridge: Intel Corporation Q963/Q965 PCI Express Root Port (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Q963/Q965 Integrated Graphics Controller (rev 02)
00:02.1 Display controller: Intel Corporation Q963/Q965 Integrated Graphics Controller (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #5 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 02)
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev f2)
00:1f.0 ISA bridge: Intel Corporation 82801HB/HR (ICH8/R) LPC Interface Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801H (ICH8 Family) 4 port SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)
00:1f.5 IDE interface: Intel Corporation 82801H (ICH8 Family) 2 port SATA IDE Controller (rev 02)
03:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5754 Gigabit Ethernet PCI Express (rev 02)

An excerpt of dmesg :

Jun 21 05:11:10 debian kernel: libata version 1.20 loaded.
Jun 21 05:11:10 debian kernel: PCI(00:1f.2): version 1.05
Jun 21 05:11:10 debian kernel: PCI: Setting latency timer of device 00:1f.2 to 64
Jun 21 05:11:10 debian kernel: PCI: Setting latency timer of device 00:1f.5 to 64
Jun 21 05:11:10 debian kernel: ata1: SATA max UDMA/133 cmd 0xFE00 ctl 0xFE12 bmdma 0xFEC0 irq 20
Jun 21 05:11:10 debian kernel: ata2: SATA max UDMA/133 cmd 0xFE20 ctl 0xFE32 bmdma 0xFEC8 irq 20
Jun 21 05:11:10 debian kernel: ata1: dev 0 cfg 49:2f00 82:346b 83:7701 84:4023 85:3469 86:3601 87:4023 88:207f
Jun 21 05:11:10 debian kernel: ata1: dev 0 ATA-7, max UDMA/133, 156250000 sectors: LBA48
Jun 21 05:11:10 debian kernel: ata1: dev 0 configured for UDMA/133
Jun 21 05:11:10 debian kernel: ata2: dev 0 cfg 49:0f00 82:4210 83:5000 84:4000 85:0210 86:1000 87:4000 88:203f
Jun 21 05:11:10 debian kernel: ata2: dev 0 ATAPI, max UDMA/100
Jun 21 05:11:10 debian kernel: ata2: PIO error
Jun 21 05:11:10 debian kernel: ata2: dev 1 cfg 49:0000 82:0000 83:0000 84:0000 85:0000 86:0000 87:0000 88:0000
Jun 21 05:11:10 debian kernel: ata2: no dma
Jun 21 05:11:10 debian kernel: ata2: dev 1 not supported, ignoring
Jun 21 05:11:10 debian kernel: ata2: dev 0 configured for UDMA/100
Jun 21 05:11:10 debian kernel: ata3: SATA max UDMA/133 cmd 0xFE40 ctl 0xFE52 bmdma 0xFED0 irq 20
Jun 21 05:11:10 debian kernel: ata4: SATA max UDMA/133 cmd 0xFE60 ctl 0xFE72 bmdma 0xFED8 irq 20
Jun 21 05:11:10 debian kernel: ata3: SATA port has no device.
Jun 21 05:11:10 debian kernel: ata4: SATA port has no device.
Jun 21 05:11:10 debian kernel: scsi0 : ata_piix
Jun 21 05:11:10 debian kernel: scsi1 : ata_piix
Jun 21 05:11:10 debian kernel: scsi2 : ata_piix
Jun 21 05:11:10 debian kernel: scsi3 : ata_piix
Jun 21 05:11:10 debian kernel:   Vendor: ATA       Model: ST3808110AS       Rev: 3.AD
Jun 21 05:11:10 debian kernel:   Type:   Direct-Access                      ANSI SCSI revision: 05
Jun 21 05:11:10 debian kernel: Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Jun 21 05:11:10 debian kernel: SCSI device sda: 156250000 512-byte hdwr sectors (80000 MB)
Jun 21 05:11:10 debian kernel: Partition check:
Jun 21 05:11:10 debian kernel:  sda: sda1 sda2 < sda5 >

I suppose the problem is "dev  1 not supported". From source, I see that
it is because, no DMA support was available.
With a 2.6.18, I get :

Jun 11 07:44:27 debian kernel: ata1.00: ATA-7, max UDMA/133, 156250000 sectors: LBA48 NCQ (depth 0/32)
Jun 11 07:44:27 debian kernel: ata1.00: ata1: dev 0 multi count 8
Jun 11 07:44:27 debian kernel: ata1.00: configured for UDMA/133
Jun 11 07:44:27 debian kernel:   Vendor: ATA       Model: ST3808110AS       Rev: 3.AD
Jun 11 07:44:27 debian kernel:   Type:   Direct-Access                      ANSI SCSI revision: 05
Jun 11 07:44:27 debian kernel: ata2: SATA max UDMA/133 cmd 0x170 ctl 0x376 bmdma 0xFEC8 irq 15
Jun 11 07:44:27 debian kernel: scsi1 : ata_piix
Jun 11 07:44:27 debian kernel: ata2.00: ATAPI, max UDMA/100
Jun 11 07:44:27 debian kernel: ata2.00: configured for UDMA/100
Jun 11 07:44:27 debian kernel:   Vendor: SONY      Model: CDRWDVD CRX310S   Rev: VDK2
Jun 11 07:44:27 debian kernel:   Type:   CD-ROM                             ANSI SCSI revision: 05
Jun 11 07:44:27 debian kernel: ata_piix 0000:00:1f.5: MAP [ P0 -- P1 -- ]

Of course, I have compiled CDROM support :
CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SR_VENDOR is not set

If I try AHCI driver instead (and add PCI ID into ahci.c), I get an oops
(libata-compat.h, line 141).

Now,  back  with   ata_piix,  it  seems  that  because   of  PIO  error,
all capabilities  are set to  0. In 2.6,  PIO error seems to  be handled
differently.

Any hint on how to fix this ?

Thanks.
-- 
Vincent Bernat
118 rue de Tocqueville, 75017 Paris
Tel: +33 1 53 42 12 86
http://www.wallix.com

             reply	other threads:[~2007-06-21  8:12 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-21  7:41 Vincent Bernat [this message]
2007-06-21 18:21 ` SATA update in 2.4, ICH8 Willy Tarreau
2007-06-22  6:29   ` Vincent Bernat
2007-06-22 19:13     ` Willy Tarreau
2007-06-25  8:06       ` Vincent Bernat
2007-06-26 12:09         ` Willy Tarreau
2007-06-26 13:37           ` Jeff Garzik
2007-06-26 14:02             ` Willy Tarreau
2007-06-22  7:51   ` Vincent Bernat

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y7idiwjd.fsf@naruto.ifr.lan \
    --to=vincent.bernat@wallix.com \
    --cc=jean-francois.taltavull@wallix.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=w@1wt.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.