# [solved] DMA problem on Amilo M6453G

## LiLoRoX

Hi,

I have a problem when I try to activate the DMA of my cdrom drive:

```
lilorox lilo # hdparm -d1 /dev/hdc 

/dev/hdc:

 setting using_dma to 1 (on)

 HDIO_SET_DMA failed: Operation not permitted

 using_dma    =  0 (off)
```

This may help:

```
00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 04)

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, fast devsel, latency 0

   Capabilities: [e0] Vendor Specific Information

00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 04) (prog-if 00 [Normal decode])

   Flags: bus master, fast devsel, latency 0

   Bus: primary=00, secondary=03, subordinate=03, sec-latency=0

   I/O behind bridge: 0000d000-0000dfff

   Memory behind bridge: ffd00000-ffdfffff

   Prefetchable memory behind bridge: cff00000-dfefffff

   Capabilities: [88] #0d [0000]

   Capabilities: [80] Power Management version 2

   Capabilities: [90] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-

   Capabilities: [a0] Express Root Port (Slot+) IRQ 0

   Capabilities: [100] Virtual Channel

   Capabilities: [140] Unknown (5)

00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04)

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, fast devsel, latency 0, IRQ 16

   Memory at ffef8000 (64-bit, non-prefetchable) [size=16K]

   Capabilities: [50] Power Management version 2

   Capabilities: [60] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-

   Capabilities: [70] Express Unknown type IRQ 0

   Capabilities: [100] Virtual Channel

   Capabilities: [130] Unknown (5)

00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04) (prog-if 00 [Normal decode])

   Flags: bus master, fast devsel, latency 0

   Bus: primary=00, secondary=02, subordinate=02, sec-latency=0

   Memory behind bridge: bfc00000-bfcfffff

   Prefetchable memory behind bridge: 00000000bfd00000-00000000bfd00000

   Capabilities: [40] Express Root Port (Slot+) IRQ 0

   Capabilities: [80] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-

   Capabilities: [90] #0d [0000]

   Capabilities: [a0] Power Management version 2

   Capabilities: [100] Virtual Channel

   Capabilities: [180] Unknown (5)

00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04) (prog-if 00 [UHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0, IRQ 17

   I/O ports at e480 [size=32]

00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04) (prog-if 00 [UHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0, IRQ 18

   I/O ports at e800 [size=32]

00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04) (prog-if 00 [UHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0, IRQ 19

   I/O ports at e880 [size=32]

00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04) (prog-if 00 [UHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0, IRQ 16

   I/O ports at ec00 [size=32]

00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04) (prog-if 20 [EHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0, IRQ 17

   Memory at ffeffc00 (32-bit, non-prefetchable) [size=1K]

   Capabilities: [50] Power Management version 2

   Capabilities: [58] Debug port

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4) (prog-if 01 [Subtractive decode])

   Flags: bus master, fast devsel, latency 0

   Bus: primary=00, secondary=01, subordinate=01, sec-latency=32

   I/O behind bridge: 0000c000-0000cfff

   Memory behind bridge: ffc00000-ffcfffff

   Capabilities: [50] #0d [0000]

00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 0

00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04) (prog-if 80 [Master])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 18

   I/O ports at <unassigned>

   I/O ports at <unassigned>

   I/O ports at <unassigned>

   I/O ports at <unassigned>

   I/O ports at ffa0 [size=16]

   Capabilities: [70] Power Management version 2

00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: medium devsel, IRQ 18

   I/O ports at 0400 [size=32]

01:03.0 Network controller: Intel Corporation PRO/Wireless 2200BG Network Connection (rev 05)

   Subsystem: Intel Corporation Unknown device 2702

   Flags: bus master, medium devsel, latency 64, IRQ 20

   Memory at ffcfe000 (32-bit, non-prefetchable) [size=4K]

   Capabilities: [dc] Power Management version 2

01:0a.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) (prog-if 10 [OHCI])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 64, IRQ 19

   Memory at ffcff000 (32-bit, non-prefetchable) [size=2K]

   Memory at ffcf8000 (32-bit, non-prefetchable) [size=16K]

   Capabilities: [44] Power Management version 2

01:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, medium devsel, latency 64, IRQ 18

   I/O ports at c800 [size=256]

   Memory at ffcffc00 (32-bit, non-prefetchable) [size=256]

   Capabilities: [50] Power Management version 2

03:00.0 VGA compatible controller: ATI Technologies Inc M24 [Radeon Mobility X600] (prog-if 00 [VGA])

   Subsystem: Fujitsu Siemens Computer GmbH Unknown device 1094

   Flags: bus master, fast devsel, latency 0, IRQ 16

   Memory at d0000000 (32-bit, prefetchable) [size=128M]

   I/O ports at d800 [size=256]

   Memory at ffdf0000 (32-bit, non-prefetchable) [size=64K]

   Expansion ROM at ffdc0000 [disabled] [size=128K]

   Capabilities: [50] Power Management version 2

   Capabilities: [58] Express Endpoint IRQ 0

   Capabilities: [80] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-

   Capabilities: [100] Advanced Error Reporting
```

I also have some errors in my dmesg:

 *Quote:*   

> @ 0x3ffd0390
> 
> ACPI: MCFG (v001 A M I  OEMMCFG  0x12000501 MSFT 0x00000097) @ 0x3ffd03f0
> 
> ACPI: OEMB (v001 A M I  AMI_OEM  0x12000501 MSFT 0x00000097) @ 0x3ffde040
> ...

 

Yerk! This is a very long post but could anyone help me please?

(It is really annoying to copy data from a cd @2MB/s :s)Last edited by LiLoRoX on Tue Mar 13, 2007 5:14 pm; edited 1 time in total

----------

## Keruskerfuerst

Try to use 

hdparm -i /dev/hdc.

----------

## LiLoRoX

Here is what it says:

```
lilorox lilo # hdparm -i /dev/hdc

/dev/hdc:

 Model=_NEC DVD+/-RW ND-6650A, FwRev=1.42, SerialNo=

 Config={ Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }

 RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0

 BuffType=unknown, BuffSize=0kB, MaxMultSect=0

 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0

 IORDY=yes, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}

 PIO modes:  pio0 pio1 pio2 pio3 pio4 

 DMA modes:  mdma0 mdma1 mdma2 

 UDMA modes: udma0 udma1 *udma2 

 AdvancedPM=no

 * signifies the current active mode

```

----------

## Keruskerfuerst

 *Quote:*   

> UDMA modes: udma0 udma1 *udma2 

 

UDMA2 mode is active. (=data transfer rate of max. 66MB/s)

P.S.: just verify the settings in the kernel: right chipset driver and DMA settings for the drives.

----------

## LiLoRoX

The kernel options are fine but the performance are really bad  :Sad: 

Is there any reason for the "HDIO_SET_DMA failed: Operation not permitted" and a DMA apparently still to off ?

----------

## LiLoRoX

This is the result of the hdparm test:

```
lilorox lilo # hdparm -tT /dev/hdc

/dev/hdc:

 Timing cached reads:   3292 MB in  2.00 seconds = 1646.84 MB/sec

BLKFLSBUF failed: Function not implemented

 Timing buffered disk reads:   10 MB in  4.13 seconds =   2.42 MB/sec

BLKFLSBUF failed: Function not implemented
```

----------

## Keruskerfuerst

```
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx

ide0: I/O resource 0x1F0-0x1F7 not free. 
```

This indicates a problem; i have no solution for that.

----------

## LiLoRoX

That's what I thought.

Thanks anyway  :Wink: 

----------

## Sixtease

Hi.

I experience the same problem with my Asus F3F AP110 laptop. cdrecord complains there's no DMA and writing DVDs is slow. (cdrecord said that average speed was 1.4 the last time I looked). Any fresh ideas?

 # dmesg | grep -iC 3 '\<ide'

Boot video device is 0000:00:02.0

PCI quirk: region 0800-087f claimed by ICH6 ACPI/GPIO/TCO

PCI quirk: region 0480-04bf claimed by ICH6 GPIO

PCI: Ignoring BAR0-3 of IDE controller 0000:00:1f.2

PCI: Transparent bridge - 0000:00:1e.0

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P5._PRT]

--

input: AT Translated Set 2 keyboard as /class/input/input0

ACPI: PCI Interrupt 0000:05:00.0[A] -> GSI 18 (level, low) -> IRQ 18

eth0: RealTek RTL8139 at 0xffffc20000054c00, 00:18:f3:f9:a3:0c, IRQ 18

eth0:  Identified 8139 chip type 'RTL-8100B/8139D'

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx

ide0: I/O resource 0x1F0-0x1F7 not free.

ide0: ports already in use, skipping probe

Probing IDE interface ide1...

Synaptics Touchpad, model: 1, fw: 6.1, id: 0xa3a0b3, caps: 0xa04713/0x10008

hdc: HL-DT-ST DVDRAM GSA-T10N, ATAPI CD/DVD-ROM drive

input: SynPS/2 Synaptics TouchPad as /class/input/input1

ieee1394: Host added: ID:BUS[0-00:1023]  GUID[00e01800037a8fab]

ide1 at 0x170-0x177,0x376 on irq 15

hdc: ATAPI 24X DVD-ROM DVD-R-RAM CD-R/RW drive, 2048kB Cache

Uniform CD-ROM driver Revision: 3.20

megaraid cmm: 2.20.2.7 (Release Date: Sun Jul 16 00:01:03 EST 2006)

megaraid: 2.20.4.9 (Release Date: Sun Jul 16 12:27:22 EST 2006)

megasas: 00.00.03.05 Mon Oct 02 11:21:32 PDT 2006

ata_piix 0000:00:1f.2: version 2.00ac6

ata_piix 0000:00:1f.2: MAP [ P0 P2 IDE IDE ]

ACPI: PCI Interrupt 0000:00:1f.2 -> GSI 19 (level, low) -> IRQ 19

[b]ata: 0x170 IDE port busy

ata: conflict with ide1

PCI: Setting latency timer of device 0000:00:1f.2 to 64

ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xFFA0 irq 14

ata2: DUMMY

---

 # hdparm /dev/hdc

/dev/hdc:

 IO_support   =  0 (default 16-bit)

 unmaskirq    =  0 (off)

 using_dma    =  0 (off)

 keepsettings =  0 (off)

 readonly     =  0 (off)

 readahead    = 256 (on)

 HDIO_GETGEO failed: Inappropriate ioctl for device

---

 # hdparm -tT /dev/hdc

/dev/hdc:

read() failed: Input/output error

 Timing buffered disk reads:  read() failed: Input/output error

BLKFLSBUF failed: Function not implemented

---

 # hdparm -X -d1 /dev/hdc

/dev/hdc:

 setting using_dma to 1 (on)

 HDIO_SET_DMA failed: Operation not permitted

 setting xfermode to 0 (default PIO mode)

 using_dma    =  0 (off)

---

 # hdparm -i /dev/hdc

/dev/hdc:

 Model=HL-DT-ST DVDRAM GSA-T10N, FwRev=PR03, SerialNo=K0F6B7I4130

 Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }

 RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0

 BuffType=unknown, BuffSize=0kB, MaxMultSect=0

 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0

 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}

 PIO modes:  pio0 pio1 pio2 pio3 pio4

 DMA modes:  mdma0 mdma1 mdma2

 UDMA modes: udma0 udma1 *udma2

 AdvancedPM=no

 Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3:  ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5

 * signifies the current active mode

---

 # lspci

00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)

00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)

00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)

00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)

00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)

00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)

00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)

02:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)

05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

05:01.0 FireWire (IEEE 1394): Ricoh Co Ltd Unknown device 0832

05:01.1 Class 0805: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)

05:01.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01)

05:01.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a)

---

 # uname -a

Linux horizon 2.6.19-suspend2-r1-sixtease #8 SMP PREEMPT Mon Jan 22 23:58:29 CET 2007 x86_64 Intel(R) Core(TM)2 CPU         T5600  @ 1.83GHz GenuineIntel GNU/Linux

----------

## cybrjackle

SATA dvd:

See what it is currently set at (hdc for example)

```

# dmesg |grep -i dvd

hdc: TSSTcorp DVD+/-RW TS-L632D, ATAPI CD/DVD-ROM drive

hdc: ATAPI 63X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache

```

Add noprobe=/dev/hdc to the end of your kernel line.

```

# vi /boot/grub/grub.conf

```

Example:

 *Quote:*   

> 
> 
> title=Gentoo Linux 2.6.19-ck2-r4
> 
> root (hd0,1)
> ...

 

----------

## LiLoRoX

This a weir result from the mesg :

```
lilorox lilo # dmesg |grep -i dvd 

scsi 1:0:0:0: CD-ROM            _NEC     DVD+-RW ND-6650A 1.42 PQ: 0 ANSI: 5
```

PS: this is what I get after unchecking the "< > generic/default IDE chipset support" opton (in ATA/ATAPI/MFM/RLL support) in my kernel configuration

Maybe I should check it but this is apparently not helping...  :Sad: 

----------

## olger901

I experienced the same problem with my notebook (a Dell Inspiron 6400). The problem is that it seems to detect your drive as a PATA drive for some odd reason, while it's in fact a SATA drive.

Solution (for the 2.6.19 kernel):

1. Go to /usr/src/linux and run make menuconfig

2. Go to Device Drivers -> IDE Support, disable EVERYTHING here!

3. Go to SATA & Experimental PATA drivers, enable the SATA driver for your device (probaly the Intel one)

4. Recompile your kernel using make && make modules_install

5. Copy over your kernel to your /boot folder (or partition).

6. Restart, do a little prair and your problem should be solved.

If you are using Gnome or KDE it should detect the drive automatically (if dbus and hal are installed and started) otherwise you should be able to access your drive through /dev/sr0

----------

## LiLoRoX

Ok thanks I try it right now and tell you  :Wink: 

----------

## LiLoRoX

Hmm I didn't try yet, but my drive is an IDE drive it's sure :s

See http://www.de.nec.de/productdetail.php?id=1239

----------

## LiLoRoX

Well that does not help actually  :Sad: 

That's what dmesg says:

```
ata_piix 0000:00:1f.2: version 2.00ac6

ata_piix 0000:00:1f.2: MAP [ P0 P2 IDE IDE ]

ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 17

PCI: Setting latency timer of device 0000:00:1f.2 to 64

ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xFFA0 irq 14

ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xFFA8 irq 15

scsi0 : ata_piix

ata1.00: ATA-7, max UDMA/100, 156301488 sectors: LBA48 NCQ (depth 0/32)

ata1.00: ata1: dev 0 multi count 16

ata1.00: configured for UDMA/100

scsi1 : ata_piix

ata2.00: ATAPI, max UDMA/33

ata2.00: configured for UDMA/33

scsi 0:0:0:0: Direct-Access     ATA      FUJITSU MHV2080B 0000 PQ: 0 ANSI: 5

SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)

sda: Write Protect is off

sda: Mode Sense: 00 3a 00 00

SCSI device sda: drive cache: write back

SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)

sda: Write Protect is off

sda: Mode Sense: 00 3a 00 00

SCSI device sda: drive cache: write back

 sda: sda1 sda2 sda3 sda4

sd 0:0:0:0: Attached scsi disk sda

sd 0:0:0:0: Attached scsi generic sg0 type 0

scsi 1:0:0:0: CD-ROM            _NEC     DVD+-RW ND-6650A 1.42 PQ: 0 ANSI: 5

scsi 1:0:0:0: Attached scsi generic sg1 type 5
```

----------

## cybrjackle

Here is what I did that works fine on my laptop (sata dvd)

Kernel:

Completely removed ata from it.

```

Device Drivers --->

ATA/ATAPI/MFM/RLL support --->

< > ATA/ATAPI/MFM/RLL support

```

Added the following to grub: noprobe=/dev/hdc libata.atapi_enabled=1

```

title=Gentoo Linux 2.6.19-ck2-r4

root (hd0,1)

kernel /boot/kernel-genkernel-x86_64-2.6.19-ck2-r4 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev noprobe=/dev/hdc libata.atapi_enabled=1

initrd /boot/initramfs-genkernel-x86_64-2.6.19-ck2-r4

```

DVD's are playing fine.

oh, and my dvd is dmesg now shows scsi

```

# dmesg |grep -i dvd

scsi 1:0:0:0: CD-ROM            TSSTcorp DVD+-RW TS-L632D DE03 PQ: 0 ANSI: 5

```

In VLC the dvd drive shows up as /dev/sr0

ciao,

----------

## LiLoRoX

Do you have good perfs and do you get error message with hdparm (the not implemented message or stuf like that)?

----------

## cybrjackle

 *LiLoRoX wrote:*   

> Do you have good perfs and do you get error message with hdparm (the not implemented message or stuf like that)?

 

I don't believe hdparm works on it because that is for PATA, check out sdparm.

----------

## LiLoRoX

Hmmm don't know but first sdparm doesn't seem to allow you to run tests and then my drive is not SATA at all.

----------

## cfriedt

I believe that I've experienced the exact same problem. It's actually a missing definition in ther kernel, which should have been added in <2.6.16. 

Here's a couple of tests you can do to see if it's the same issue: 

1) see if you get the same results with this command:

```
 # lspci | grep "82801"

00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04)

00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)

00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)

00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)

00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)

00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)

00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)

00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)

00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)

00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)
```

2) run the hdparm tests: 

```
 # hdparm -t -T /dev/hdc 

/dev/hdc:

 Timing cached reads:   3260 MB in  2.00 seconds = 1629.28 MB/sec

 Timing buffered disk reads:  112 MB in  3.00 seconds =  37.29 MB/sec
```

if your timed buffered disk reads is 'low', or nowhere near as high as 37.29 MB/sec , then the following solution will work for you:

1) go into /usr/src/linux and edit /usr/src/linux/include/pci_ids.h . Look for the string "PCI_DEVICE_ID_INTEL_ICH6_2". The value right beside it should read 0x2642. Now on a line __directly__under__

insert:

#define PCI_DEVICE_ID_INTEL_ICH6_5    0x2653

2) similarly, edit drivers/ide/pci/piix.c . Look for the string "case PCI_DEVICE_ID_INTEL_ICH6_19"

a) insert this directly __above__ it:

case PCI_DEVICE_ID_INTEL_ICH6_5:

b) look for the string "case PCI_DEVICE_ID_INTEL_ICH6_19:" one more time, but further down the file, and insert the same directly __above__ it:

case PCI_DEVICE_ID_INTEL_ICH6_5:

c) look for the string "DECLARE_PIIX_DEV("ICH8M")," . Insert the following directly __below__ it:

/* 25 */ DECLARE_PIIX_DEV("ICH6M"),

d) look for the string "PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_6, PCI_ANY_ID", insert the following directly __below__ it:

{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_5, PCI_ANY_ID, PCI_ANY_I

D, 0, 0, 25},

That should do it. Now just re-compile your kernel and perform the same hdparm test above, and you should have something along the lines of 25-38 MB/sec with DMA.

I really wish the gentoo-sources people would push this patch upstream, because I've been patching all of the kernels i've had since 2.6.16 with this (to have dma, sound, etc enabled.). Otherwise, disk reads happen ad something like 2MB per second, and it's completely dreadful.  Today I just checked out gentoo-sources-2.6.19-r5 and was shocked that this patch hasn't been applied yet by anybody! wow!

~/Chris

----------

## cfriedt

I originally read this patch here:

http://marc.theaimsgroup.com/?l=linux-ide&m=114317385718285&w=2

----------

## LiLoRoX

I tried your solution and even though I have the same hardware, I got a kernel panic :s (kernel 2.6.19-gentoo-r5)

```
lilorox lilo # lspci | grep 82801

00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04)

00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)

00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)

00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)

00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)

00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)

00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)

00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)

00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)

00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)
```

----------

## cfriedt

The best thing to do is post the kernel panic (or at least write down the last few relevent lines) so that we can help debug everything. 

Also, it's a very wise idea to always back up the bzImage from your previous kernel. If you're using grub, then as soon as grub comes up with a menu, you can hit up/down to prevent it from automatically loading, and then 'e' to edit the 'exec' command.

Just specify your backup kernel's name instead of the new one.

I'm interested to see where the bug falls during the linux boot process. 

Also, maybe post your machine make & model. 

Check out the original patch available at

http://marc.theaimsgroup.com/?l=linux-ide&m=114317385718285&w=2

It has line number references and a bit more 'context' so you may see a place where your patch wasn't correct. 

I have been using this patch for a year without any problems whatsoever, on a 'Eurocom M560A', which in my opinion is a total piece of garbage, but it runs.

~/Chris

----------

## cfriedt

I just realized that I should probably also add my kernel exec line:

here it is:

kernel /bzImage pci=assign-busses root=/dev/hdc6 quiet CONSOLE=/dev/tty1

The pci=assign-busses was necessary to have sound working with ALSA (OSS?), do not ask my why

----------

## menschmeier

Hi,

I think I had the same problem. The solution was simple.

You should disable everything under ATA/ATAPI/MFM/RLL in your kernel config. Your optical device will be /dev/sr0 or so. You have to enable the SATA and SCSI stuff. (SATA device support -AHCI SATA support -Intel PIIX/ICH SATA support - Intel PATA MPIIX support )

Test it, but do not believe in hdparm in this point. Forget about UDMA on SATA. Try to copy a big file from dvd to hd. This shows a good improvement in my case. High transfer rate, low i/o waits, no freeze when accessing the dvd.

Give it a shot. 

menschmeier

----------

## LiLoRoX

Yes thanks  :Smile: 

That's what olger901 said just above and it seems to work !

I made some ISOs from CDs and even if I didn't watch the time, it seemed to take less time than before.

Thanks everyone for the help  :Wink: 

----------

## sajo_raftman

The solution given by olger901 also worked for me! Thanks

----------

