RE: CF flash IDE failure to attach with 2.6.20+
Does piix driver work? If so, can you post boot dmesg and the result of 'hdparm -I /dev/hdX'? Unfortunately it doesn't seem to be detected at all, although I'm not exactly sure which driver you're referring to. I have tried: New ATA drivers: Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support - is detected but fails Intel PATA MPIIX support - is not detected at all (which I think is right) Intel PATA old PIIX support (Experimental) - is not detected at all (which I think is wrong - it should be) Old ATA/IDE driver: Intel PIIXn chipsets support - is not detected at all (which is right as the bus is SATA) Thanks, - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
SATA update in 2.4, ICH8
Hi ! I have patched 2.4.34 with the following patch to allow the use of SATA drive on an ICH8 motherboard : --- linux/drivers/scsi/ata_piix.c~ 2006-12-22 17:06:45.0 -0500 +++ linux/drivers/scsi/ata_piix.c 2007-06-14 05:27:02.0 -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 */ 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, 15625 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: 82: 83: 84: 85: 86: 87: 88: 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: 15625 512-byte hdwr sectors (8 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
ide/dma not working from 2.6.19 to 2.6.21
Hi, I have a PCI Promise TX2 Ultra133 controller with a harddisk on an ARM platform (which is a barebone system with no BIOS). This setup used to work with the old linux-ide drivers on 2.6.19 but it does not work with 2.6.22-rc4, or 2.6.21. Here's the error output: PDC20269: chipset revision 2 6PDC20269: ROM enabled at 0xa021 PDC20269: ROM enabled at 0xa021 PDC20269: PLL input clock is 37736 kHz PDC20269: PLL input clock is 37736 kHz 6PDC20269: 100% native mode on irq 84 PDC20269: 100% native mode on irq 84 7PCI: Enabling bus mastering for device :07:01.0 6ide0: BM-DMA at 0x90050040-0x90050047ide0: BM-DMA at 0x90050040-0x90050047, BIOS settings : hda:pio, hdb:pio, BIOS settings: hda:pio, hdb:pio 6ide1: BM-DMA at 0x90050048-0x9005004fide1: BM-DMA at 0x90050048-0x9005004f, BIOS settings : hdc:pio, hdd:pio, BIOS settings: hdc:pio, hdd:pio 7Probing IDE interface ide0... hda: HDS728080PLAT20, hda: HDS728080PLAT20, ATA DISK drive ATA DISK drive 4Warning: Primary channel requires an 80-pin cable for operation. Warning: Primary channel requires an 80-pin cable for operation. 4hda reduced to Ultra33 mode. hda reduced to Ultra33 mode. ide0 at 0x90050050-0x90050057,0x90050062 on irq 84ide0 at 0x90050050-0x90050057,0x90050062 on irq 84 7Probing IDE interface ide1... 7Probing IDE interface ide1... 6hda: max request size: 512KiB hda: max request size: 512KiB 4hda: lost interrupt hda: lost interrupt 4hda: lost interrupt hda: lost interrupt 4hda: lost interrupt hda: lost interrupt 6hda: 160836480 sectors (82348 MB)hda: 160836480 sectors (82348 MB) w/1719KiB Cache w/1719KiB Cach e, CHS=16383/255/63, CHS=16383/255/63, UDMA(33), UDMA(33) 4hda: lost interrupt hda: lost interrupt 6hda: cache flushes supported hda: cache flushes supported 6 hda: hda:4hda: dma_timer_expiry: dma status == 0x21 4hda: dma_timer_expiry: dma status == 0x21 4hda: DMA timeout error hda: DMA timeout error hda: dma timeout error: status=0x51 { hda: dma timeout error: status=0x51 { DriveReady DriveReady Se ekComplete SeekComplete Error Error } } hda: dma timeout error: error=0x84 { hda: dma timeout error: error=0x84 { DriveStatusError DriveStat usError BadCRC BadCRC }} ide: failed opcode was: ide: failed opcode was: unknown unknown 4hda: lost interrupt hda: lost interrupt On 2.6.21 I have been using: CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDEDMA=y CONFIG_BLK_DEV_PDC202XX_NEW=y CONFIG_IDE_GENERIC=y CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_OFFBOARD=y CONFIG_BLK_DEV_GENERIC=y CONFIG_BLK_DEV_IDEDMA_PCI=y On 2.6.19 I have exactly the same but also: CONFIG_IDEDMA_PCI_AUTO=y CONFIG_IDEDMA_AUTO=y Could this have caused a problem? Does IDE support in linux depend on certain BIOS settings or any other motherboard specific details? I am asking because neither the new ata nor the old ide layer worked for the cards I tried on ARM (JMB363, IT8212, Promise TX2 133 - worked only with 2.6.19 old ide layer). Finally is there a simplest, known-to-work pci ide controller you can suggest? So that I can start looking from there. Thank you, Bahadir - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: 126X DVD drive? (odd ide-cd output)
On Wed, Jun 20 2007, Cal Peake wrote: Hello, It seems if I boot with a disc in the drive (in this case a dual fs ISO-9660/UDF DVD-R) the drive speed gets reported incorrectly: hdc: DVDRW DRW-6S160P, ATAPI CD/DVD-ROM drive hdc: ATAPI 126X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(66) normal output (w/ no disc) is: hdc: DVDRW DRW-6S160P, ATAPI CD/DVD-ROM drive hdc: ATAPI 48X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(66) Kernel is 2.6.22-rc5-gf1518a08. Harmless, but odd... Sounds like a firmware bug. From a drive with a 'DVDRW' vendor string, that's not highly surprising :-) -- Jens Axboe - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [patch 3/3] Enable Aggressive Link Power management for AHCI controllers.
On Wed, Jun 20 2007, Kristen Carlson Accardi wrote: Enable Aggressive Link Power management for AHCI controllers. This patch will set the correct bits to turn on Aggressive Link Power Management (ALPM) for the ahci driver. This will cause the controller and disk to negotiate a lower power state for the link when there is no activity (see the AHCI 1.x spec for details). This feature is mutually exclusive with Hot Plug, so when ALPM is enabled, Hot Plug is disabled. ALPM will be enabled by default, but it is settable via the scsi host syfs interface. Possible settings for this feature are: Setting Effect -- min_power ALPM is enabled, and link set to enter lowest power state (SLUMBER) when idle Hot plug not allowed. max_performance ALPM is disabled, Hot Plug is allowed medium_power ALPM is enabled, and link set to enter second lowest power state (PARTIAL) when idle. Hot plug not allowed. Signed-off-by: Kristen Carlson Accardi [EMAIL PROTECTED] A suggestion (it comes with a patch!) - default to max_power/almp off, not min_power. For two reasons: - There's such a big performance difference between the two, you really want max_power when booting. - It's a lot better to default to no change, than default to enabling something new. diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index 841cf0a..e7a2072 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c @@ -786,8 +786,7 @@ static int ahci_disable_alpm(struct ata_port *ap) return 0; } -static int ahci_enable_alpm(struct ata_port *ap, - enum scsi_host_link_pm policy) +static int ahci_enable_alpm(struct ata_port *ap, enum scsi_host_link_pm policy) { struct ahci_host_priv *hpriv = ap-host-private_data; void __iomem *port_mmio = ahci_port_base(ap); @@ -808,19 +807,19 @@ static int ahci_enable_alpm(struct ata_port *ap, return -EINVAL; } - switch(policy) { + switch (policy) { case SHOST_MAX_PERFORMANCE: - ahci_disable_alpm(ap); - ap-pm_policy = policy; - return 0; case SHOST_NOT_AVAILABLE: - case SHOST_MIN_POWER: /* * if we came here with SHOST_NOT_AVAILABLE, * it just means this is the first time we -* have tried to enable - so try to do -* min_power +* have tried to enable - default to max performance, +* and let the user go to lower power modes on request. */ + ahci_disable_alpm(ap); + ap-pm_policy = SHOST_MAX_PERFORMANCE; + return 0; + case SHOST_MIN_POWER: ap-pm_policy = SHOST_MIN_POWER; /* configure HBA to enter SLUMBER */ -- Jens Axboe - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
SATA: Is DPO and FUA ever supported?
On each and every machine out there, and on every dmesg output posted on numerous mailinglists, I see messages similar to this: scsi 0:0:0:0: Direct-Access ATA ST3250620NS 3.AE PQ: 0 ANSI: 5 SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB) SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA for SATA disk drives. And I wonder -- are those features supported at all by linux, and/or are there disk drives out there which supports it as well? For my Seagate ST3250620NS SATA drive (it's a server drive, whatever it means), I can see -- at least -- *Mandatory FLUSH_CACHE *FLUSH_CACHE_EXT reported by hdparm -I. I wonder what FLUSH CACHE EXT means, and whenever it can be used to support DPO and/or FUA... Thanks. /mjt - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: CF flash IDE failure to attach with 2.6.20+
Andrew Hall wrote: Does piix driver work? If so, can you post boot dmesg and the result of 'hdparm -I /dev/hdX'? Unfortunately it doesn't seem to be detected at all, although I'm not exactly sure which driver you're referring to. I have tried: New ATA drivers: Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support - is detected but fails Intel PATA MPIIX support - is not detected at all (which I think is right) Intel PATA old PIIX support (Experimental) - is not detected at all (which I think is wrong - it should be) Old ATA/IDE driver: Intel PIIXn chipsets support - is not detected at all (which is right as the bus is SATA) I think Tejun would like you to patch the PCI ID for your ICH8 into the Old ATA/IDE PIIXn driver, and then try that. Cheers - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: 126X DVD drive? (odd ide-cd output)
On Thu, 21 Jun 2007, Jens Axboe wrote: On Wed, Jun 20 2007, Cal Peake wrote: hdc: DVDRW DRW-6S160P, ATAPI CD/DVD-ROM drive hdc: ATAPI 126X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(66) Sounds like a firmware bug. From a drive with a 'DVDRW' vendor string, that's not highly surprising :-) Heh, yeah, it was an off-brand that didn't cost too much so that makes sense. :) thanks, -- Cal Peake - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: CF flash IDE failure to attach with 2.6.20+
I think Tejun would like you to patch the PCI ID for your ICH8 into the Old ATA/IDE PIIXn driver, and then try that. Maybe I'm a bit slow on the uptake, but how exactly do I do this patch the PCI ID into the driver? I run a monolithic kernel will all these drivers compiled in. None of them are found by the hardware except the newer libATA driver (CONFIG_ATA_PIIX) for Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA. If I have removed each driver in turn and none of the others are detected. - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: ide/dma not working from 2.6.19 to 2.6.21
Hello. Bahadir Balban wrote: I have a PCI Promise TX2 Ultra133 controller with a harddisk on an ARM platform (which is a barebone system with no BIOS). This setup used to work with the old linux-ide drivers on 2.6.19 You were very lucky then bacause actually it usually failed on anything non-x86. ;-) but it does not work with 2.6.22-rc4, or 2.6.21. Here's the error output: I guess this might be related to the driver update in 2.6.20-rc1 then -- I made the driver calibrate the chip's PLL, so that it might work for non-x86 case too (where Promise BIOS isn't available to do this). The code is basically the same as in the libata's pata_2027x driver... PDC20269: chipset revision 2 6PDC20269: ROM enabled at 0xa021 PDC20269: ROM enabled at 0xa021 Hm, why all the messages are printed twice? :-O (I'll cut out the dupes to save bandwidth). PDC20269: PLL input clock is 37736 kHz 37.736 MHz is a pretty strange PLL clock... Basically, it's the halved PCI clock, and that value signifies your PCI is probably running at 75 MHz -- which is serious overclocking... :-/ That could explain why the driver managed to work before -- the default DPLL settings fit for 66 MHz PCI but made the UltraDMA fail with CRC errors on the plain 33 MHz PCI, IIRC... I may suggest replacing #undef DEBUG by #define DEBUG in this driver, rebuilding the kernel and posting the driver's output... 6PDC20269: 100% native mode on irq 84 7PCI: Enabling bus mastering for device :07:01.0 6ide0: BM-DMA at 0x90050040-0x90050047, BIOS settings: hda:pio, hdb:pio 6ide1: BM-DMA at 0x90050048-0x9005004f, BIOS settings: hdc:pio, hdd:pio 7Probing IDE interface ide0... hda: HDS728080PLAT20, ATA DISK drive 4Warning: Primary channel requires an 80-pin cable for operation. 4hda reduced to Ultra33 mode. hda reduced to Ultra33 mode. Oh, now I understand why it used to work for you before 2.6.20 -- UltraDMA only failed with 80-conductor cable on non-x86. :-) Have you been using the 40-conductor cable all the time? ide0 at 0x90050050-0x90050057,0x90050062 on irq 84 7Probing IDE interface ide1... 6hda: max request size: 512KiB 4hda: lost interrupt 4hda: lost interrupt 4hda: lost interrupt Hm, that's interesting -- I'm not sure how the driver rewrite could have affected the interrupt delivery for PIO commands (there's no prior DMA interrupt recovery messages). Might be some other issue here... 6hda: 160836480 sectors (82348 MB) w/1719KiB Cache, CHS=16383/255/63, UDMA(33) 4hda: lost interrupt 6hda: cache flushes supported 6 hda: 4hda: dma_timer_expiry: dma status == 0x21 4hda: DMA timeout error hda: dma timeout error: status=0x51 { DriveReady SeekComplete Error } hda: dma timeout error: error=0x84 { DriveStatusError BadCRC } This is too familiar -- that's how the driver used to behave on ide: failed opcode was: unknown 4hda: lost interrupt On 2.6.21 I have been using: CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDEDMA=y CONFIG_BLK_DEV_PDC202XX_NEW=y CONFIG_IDE_GENERIC=y CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_OFFBOARD=y CONFIG_BLK_DEV_GENERIC=y CONFIG_BLK_DEV_IDEDMA_PCI=y On 2.6.19 I have exactly the same but also: CONFIG_IDEDMA_PCI_AUTO=y CONFIG_IDEDMA_AUTO=y Could this have caused a problem? No. Does IDE support in linux depend on certain BIOS settings or any other motherboard specific details? I am asking because neither the new ata nor the old ide layer worked for the cards I tried on ARM (JMB363, IT8212, Promise TX2 133 - worked only with 2.6.19 old ide layer). As for the Promise -- it used to before 2.2.20-rc1, and it shouldn't since. Finally is there a simplest, known-to-work pci ide controller you can suggest? So that I can start looking from there. Your Promise card should actually be working... Thank you, Bahadir MBR, Sergei - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: ide/dma not working from 2.6.19 to 2.6.21
On Thu, 21 Jun 2007 12:47:30 +0100, Bahadir Balban [EMAIL PROTECTED] wrote: I have a PCI Promise TX2 Ultra133 controller with a harddisk on an ARM platform (which is a barebone system with no BIOS). This setup used to work with the old linux-ide drivers on 2.6.19 but it does not work with 2.6.22-rc4, or 2.6.21. Here's the error output: PDC20269: chipset revision 2 6PDC20269: ROM enabled at 0xa021 PDC20269: ROM enabled at 0xa021 PDC20269: PLL input clock is 37736 kHz PDC20269: PLL input clock is 37736 kHz 6PDC20269: 100% native mode on irq 84 PDC20269: 100% native mode on irq 84 7PCI: Enabling bus mastering for device :07:01.0 6ide0: BM-DMA at 0x90050040-0x90050047ide0: BM-DMA at 0x90050040-0x90050047, BIOS settings : hda:pio, hdb:pio, BIOS settings: hda:pio, hdb:pio 6ide1: BM-DMA at 0x90050048-0x9005004fide1: BM-DMA at 0x90050048-0x9005004f, BIOS settings : hdc:pio, hdd:pio, BIOS settings: hdc:pio, hdd:pio 7Probing IDE interface ide0... hda: HDS728080PLAT20, hda: HDS728080PLAT20, ATA DISK drive ATA DISK drive 4Warning: Primary channel requires an 80-pin cable for operation. Warning: Primary channel requires an 80-pin cable for operation. 4hda reduced to Ultra33 mode. hda reduced to Ultra33 mode. ide0 at 0x90050050-0x90050057,0x90050062 on irq 84ide0 at 0x90050050-0x90050057,0x90050062 on irq 84 7Probing IDE interface ide1... 7Probing IDE interface ide1... 6hda: max request size: 512KiB hda: max request size: 512KiB 4hda: lost interrupt hda: lost interrupt 4hda: lost interrupt hda: lost interrupt 4hda: lost interrupt hda: lost interrupt 6hda: 160836480 sectors (82348 MB)hda: 160836480 sectors (82348 MB) w/1719KiB Cache w/1719KiB Cach e, CHS=16383/255/63, CHS=16383/255/63, UDMA(33), UDMA(33) 4hda: lost interrupt hda: lost interrupt 6hda: cache flushes supported hda: cache flushes supported 6 hda: hda:4hda: dma_timer_expiry: dma status == 0x21 4hda: dma_timer_expiry: dma status == 0x21 4hda: DMA timeout error hda: DMA timeout error hda: dma timeout error: status=0x51 { hda: dma timeout error: status=0x51 { DriveReady DriveReady Se ekComplete SeekComplete Error Error } } hda: dma timeout error: error=0x84 { hda: dma timeout error: error=0x84 { DriveStatusError DriveStat usError BadCRC BadCRC }} ide: failed opcode was: ide: failed opcode was: unknown unknown 4hda: lost interrupt hda: lost interrupt On 2.6.21 I have been using: CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDEDMA=y CONFIG_BLK_DEV_PDC202XX_NEW=y CONFIG_IDE_GENERIC=y CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_OFFBOARD=y CONFIG_BLK_DEV_GENERIC=y CONFIG_BLK_DEV_IDEDMA_PCI=y On 2.6.19 I have exactly the same but also: CONFIG_IDEDMA_PCI_AUTO=y CONFIG_IDEDMA_AUTO=y Could this have caused a problem? Does IDE support in linux depend on certain BIOS settings or any other motherboard specific details? I am asking because neither the new ata nor the old ide layer worked for the cards I tried on ARM (JMB363, IT8212, Promise TX2 133 - worked only with 2.6.19 old ide layer). Try kernel 2.6.21 or newer and the libata driver for this card instead (pata_pdc2027x). I'm using that in a PowerMac whose firmware doesn't initialise the card at boot, and it works for me. What kind of ARM board is this? /Mikael - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [2/2] 2.6.22-rc5: known regressions v2
Hi all, Here is a list of some known regressions in 2.6.22-rc5. Feel free to add new regressions/remove fixed etc. http://kernelnewbies.org/known_regressions (BTW. There is a new category called Will be fixed in 2.6.23) SATA/PATA Subject: libata IT821X driver still fails! Hard-freezes system References : http://lkml.org/lkml/2007/6/14/82 Submitter : Rodney Gordon II [EMAIL PROTECTED] Status : unknown Sparc64 Subject: random invalid instruction occourances on sparc32 (sun4c) References : http://lkml.org/lkml/2007/6/17/111 Submitter : Mark Fortescue [EMAIL PROTECTED] Status : problem is being debugged Subject: 2.6.22-rc broke X on Ultra5 References : http://lkml.org/lkml/2007/5/22/78 Submitter : Mikael Pettersson [EMAIL PROTECTED] Handled-By : David Miller [EMAIL PROTECTED] Status : problem is being debugged x86-64 Subject: x86-64 2.6.22-rc2 random segfaults References : http://lkml.org/lkml/2007/5/24/275 Submitter : Ioan Ionita [EMAIL PROTECTED] Status : Unknown Regards, Michal -- LOG http://www.stardust.webpages.pl/log/ - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 19/19] ide: use PIO/MMIO operations directly where possible
Hello. Bartlomiej Zolnierkiewicz wrote: [PATCH] ide: use PIO/MMIO operations directly where possible This results in smaller/faster/simpler code and allows future optimizations. Also remove no longer needed ide[_mm]_{inl,outl}() and ide_hwif_t.{INL,OUTL}. Signed-off-by: Bartlomiej Zolnierkiewicz [EMAIL PROTECTED] Index: a/drivers/ide/pci/hpt366.c === --- a.orig/drivers/ide/pci/hpt366.c +++ a/drivers/ide/pci/hpt366.c @@ -836,7 +836,7 @@ static int hpt374_ide_dma_test_irq(ide_d return 0; } - dma_stat = hwif-INB(hwif-dma_status); + dma_stat = inb(hwif-dma_status); /* return 1 if INTR asserted */ if (dma_stat 4) return 1; Hmm... this driver *still* has a lot more indirect I/O accessors -- I wonder why only this one had been converted then? MBR, Sergei - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 19/19] ide: use PIO/MMIO operations directly where possible
Hi Sergei, On Thursday 21 June 2007, Sergei Shtylyov wrote: Hello. Bartlomiej Zolnierkiewicz wrote: [PATCH] ide: use PIO/MMIO operations directly where possible This results in smaller/faster/simpler code and allows future optimizations. Also remove no longer needed ide[_mm]_{inl,outl}() and ide_hwif_t.{INL,OUTL}. Signed-off-by: Bartlomiej Zolnierkiewicz [EMAIL PROTECTED] Index: a/drivers/ide/pci/hpt366.c === --- a.orig/drivers/ide/pci/hpt366.c +++ a/drivers/ide/pci/hpt366.c @@ -836,7 +836,7 @@ static int hpt374_ide_dma_test_irq(ide_d return 0; } - dma_stat = hwif-INB(hwif-dma_status); + dma_stat = inb(hwif-dma_status); /* return 1 if INTR asserted */ if (dma_stat 4) return 1; Hmm... this driver *still* has a lot more indirect I/O accessors -- I wonder why only this one had been converted then? The reason for this is that my patch was done before some of your patches for HPT IDE driver and I never really got to doing follow-up patch. IIRC piix.c and and tc86c100.c may also want an update. Thanks, Bart - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: ide/dma not working from 2.6.19 to 2.6.21
I wrote: ide0 at 0x90050050-0x90050057,0x90050062 on irq 84 7Probing IDE interface ide1... 6hda: max request size: 512KiB 4hda: lost interrupt 4hda: lost interrupt 4hda: lost interrupt Hm, that's interesting -- I'm not sure how the driver rewrite could have affected the interrupt delivery for PIO commands (there's no prior DMA interrupt recovery messages). Might be some other issue here... 6hda: 160836480 sectors (82348 MB) w/1719KiB Cache, CHS=16383/255/63, UDMA(33) 4hda: lost interrupt 6hda: cache flushes supported 6 hda: 4hda: dma_timer_expiry: dma status == 0x21 4hda: DMA timeout error hda: dma timeout error: status=0x51 { DriveReady SeekComplete Error } hda: dma timeout error: error=0x84 { DriveStatusError BadCRC } This is too familiar -- that's how the driver used to behave on ...non-x86 targets before the 2.6.20-rc1 change -- although it usually exhibited it on higher speeds until the IDE core fekk back to UltraATA/33 or /44, then it started to work... Does IDE support in linux depend on certain BIOS settings or any other motherboard specific details? I am asking because neither the new ata nor the old ide layer worked for the cards I tried on ARM (JMB363, IT8212, Promise TX2 133 - worked only with 2.6.19 old ide layer). As for the Promise -- it used to before 2.2.20-rc1, and it shouldn't since. I meant used to depend on BIOS settings here. MBR, Sergei - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: SATA update in 2.4, ICH8
Hi Vincent, On Thu, Jun 21, 2007 at 09:41:58AM +0200, Vincent Bernat wrote: Hi ! I have patched 2.4.34 with the following patch to allow the use of SATA drive on an ICH8 motherboard : --- linux/drivers/scsi/ata_piix.c~2006-12-22 17:06:45.0 -0500 +++ linux/drivers/scsi/ata_piix.c 2007-06-14 05:27:02.0 -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 */ 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, 15625 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: 82: 83: 84: 85: 86: 87: 88: 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: 15625 512-byte hdwr sectors (8 MB) Jun 21 05:11:10 debian kernel: Partition check: Jun 21 05:11:10 debian
Re: [RFT] hpt366: reset DMA state machine on timeouts
On Thu, Jun 21, 2007 at 09:54:47PM +0400, Sergei Shtylyov wrote: --- Linas, here's what I've come up with -- this should apply against 2.6.21.y. Compile-tested only, not for merging. Thanks, I'll test tonight. Meanwhile, under spoearate cover, I'll post the libata debug info. --linas - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/5] ide: add short cables support
On Sunday 17 June 2007, Sergei Shtylyov wrote: [ ... ] Index: b/drivers/ide/pci/alim15x3.c === --- a/drivers/ide/pci/alim15x3.c +++ b/drivers/ide/pci/alim15x3.c @@ -594,7 +594,7 @@ out: *FIXME: frobs bits that are not defined on newer ALi devicea */ -static unsigned int __devinit ata66_ali15x3 (ide_hwif_t *hwif) +static u8 __devinit ata66_ali15x3(ide_hwif_t *hwif) { struct pci_dev *dev = hwif-pci_dev; unsigned int ata66 = 0; @@ -657,7 +657,7 @@ static unsigned int __devinit ata66_ali1 local_irq_restore(flags); - return(ata66); + return ata66 ? ATA_CBL_PATA80 : ATA_CBL_PATA40; Ahem... I'd think it was about the right time to fix the abomination which those ata66 and cable_80_pin[2] are, something like this: static unsigned int __devinit ata66_ali15x3 (ide_hwif_t *hwif) { struct pci_dev *dev = hwif-pci_dev; unsigned int cbl= ATA_CBL_PATA40; unsigned long flags; u8 tmpbyte, mask = hwif-channel ? 0x02 : 0x01; local_irq_save(flags); /* Not sure if it's necessary... */ if (m5229_revision = 0xC2) { /* * Ultra66 cable detection (from Host View) * m5229, 0x4a, bit0: primary, bit1: secondary * 0: 80 pin, 1: 40 pin */ pci_read_config_byte(dev, 0x4a, tmpbyte); /* * Allow ata66 if cable of current channel has 80 pins */ cbl = (tmpbyte mask) ? ATA_CBL_PATA40 : ATA_CBL_PATA80; } else { [Following code frankly speaking has no business being in this function] patch #3/5 already takes care of cable_80_pin[2] part, I really should have looked thru all the series but lacked the time. :- ata66 part was left as an exercise for the reader ;-) Hm, now that I've looked at that patch I saw both these things killed. What, you don't know your own code? ;-) It seems that I indeed dealt with ata66 part already... :-) However I had something different in mind while writing about code gymnastics - code unrelated to cable detection should be split off from ata66_ali15x3. Thanks, Bart - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [BUG] ide dma_timer_expiry, then hard lockup
On Wed, Jun 20, 2007 at 06:01:23PM +0100, Alan Cox wrote: Its unlikely the command got lost. The IRQ could have done but the error path tries to spot that case by reading the status register - which hangs. So in theory it could be a lost IRQ and if the reset works we'll find that out. OK, here's the libata trace info (transcribed by hand, may have typos, the numerical values should be correct). This is during the first read of the partition table, during boot. ata_scsi_dumb_cb: CDB(:1:0,0,0) 28 00 00 00 00 00 00 00 08 ata_scsi_translate: ENTER scsi_10_lba_len: ten-byte command ata_sg_setup: ENTER, ata1 ata_sg_setup: 1 sg elements mapped ata_fill_sg: PRD[0] = (0x2FEEF000, 0x1000) ata1: ata_dev_select: ENTER, device 0, wait 1 ata_tf_load: feat 0x0 nsect 0x8 lba 0x0 0x0 0x0 ata_tf_load: device 0xE0 ata_exec_command: ta1: cmd 0xc8 ata_scsi_translate: EXIT then, 30 seconds later: sd 0:0:0:0 [sda] Done: 0xeff3aba0 TIMEOUT sd 0:0:0:0 [sda] Result: host_byte=DID_OK driver_byte=DRV_OK, SUG_OK sd 0:0:0:0 [sda] CDB: Read(10): 28 00 00 ... 00 08 00 sd 0:0:0:0 [sda] scsi host busy 1 failed 0 ata_scsi_timed_out: ENTER ata_scsi_timed_out: EXIT, ret=0 ata_port_flush_task: ENTER ata_port_flush_task: flush #1 ata1: ata_port_flush_task: flush #2 ata_port_flush_task: EXIT Then a hard hang here. This was on 2.6.22-rc5-git1 Again, this disk and controller combo work spotlessly when using the ide drivers. --linas - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [BUG] ide dma_timer_expiry, then hard lockup
queue ? You are overestimating IDE ;) He's not -- there is queued commands support since ATA[PI]-5. I'm not sure why but Linux decided not to support it. Almost no hardware supports it and the functionality is really really ugly to use when it works at all - NCQ is rather more elegant. Alan - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [BUG] ide dma_timer_expiry, then hard lockup
sd 0:0:0:0 [sda] Done: 0xeff3aba0 TIMEOUT sd 0:0:0:0 [sda] Result: host_byte=DID_OK driver_byte=DRV_OK, SUG_OK sd 0:0:0:0 [sda] CDB: Read(10): 28 00 00 ... 00 08 00 sd 0:0:0:0 [sda] scsi host busy 1 failed 0 ata_scsi_timed_out: ENTER ata_scsi_timed_out: EXIT, ret=0 ata_port_flush_task: ENTER ata_port_flush_task: flush #1 ata1: ata_port_flush_task: flush #2 ata_port_flush_task: EXIT Then a hard hang here. Thanks Added to my bug collection to peer at. - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[RFC: 2.6 patch] schedule BLK_DEV_IDE_SATA for removal
Users should use the libata based drivers for SATA drives. Signed-off-by: Adrian Bunk [EMAIL PROTECTED] --- --- linux-2.6.22-rc4-mm2/Documentation/feature-removal-schedule.txt.old 2007-06-21 23:41:03.0 +0200 +++ linux-2.6.22-rc4-mm2/Documentation/feature-removal-schedule.txt 2007-06-21 23:42:03.0 +0200 @@ -347,3 +347,10 @@ Who: Jean Delvare [EMAIL PROTECTED] --- + +What: CONFIG_BLK_DEV_IDE_SATA +When: December 2007 +Why: users should use the libata based drivers for SATA +Who: Adrian Bunk [EMAIL PROTECTED] + +--- - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC: 2.6 patch] schedule BLK_DEV_IDE_SATA for removal
On Fri, 2007-06-22 at 01:52 +0200, Adrian Bunk wrote: Users should use the libata based drivers for SATA drives. NAK. Not all IDE drivers are converted yet. Not even all the relatively common ones. -- dwmw2 - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC: 2.6 patch] schedule BLK_DEV_IDE_SATA for removal
On Fri, 2007-06-22 at 11:39 +0800, David Woodhouse wrote: On Fri, 2007-06-22 at 01:52 +0200, Adrian Bunk wrote: Users should use the libata based drivers for SATA drives. NAK. Not all IDE drivers are converted yet. Not even all the relatively common ones. Ignore me. I thought you were trying to deprecate BLK_DEV_IDE. Sorry. /me wanders off in search of more caffeine -- dwmw2 - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html