DMA not works in Linux 2.6.12, but in Windows works fine.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Problem descrition:

DMA not works in Linux 2.6.12, but in Windows works fine.

DMA not works with HDD and CD drives connected by 80-conductor
cable to secondary IDE port (ide1).


Hardware description:

  1) Motherboard has chipset Intel, Giga-byte
  2) HDD Seagate ST3160023AS (Serial ATA)
  3) HDD Seagate ST3200822A (IDE ATA)
  4) SONY CD-RW CRX320E, IDE ATAPI CD/DVD-ROM


Hardware connections:

ST3160023AS ---> SATA0 ---> BIOS mapping ---> ide0 Pri master (hda)
                   SATA1 ---> BIOS mapping ---> ide0 Pri slave
CRX320E --------------------------------> ide1 Sec master (hdc) ST3200822A --------------------------------> ide1 Sec slave (hdd)


==============================================================================
=== hdparm output ============================================================

# hdparm -V
hdparm v5.5

# hdparm -d1 /dev/hdd
/dev/hdd:
  setting using_dma to 1 (on)
  HDIO_SET_DMA failed: Operation not permitted
  using_dma    =  0 (off)

# hdparm -d1 /dev/hdc
/dev/hdd:
  setting using_dma to 1 (on)
  HDIO_SET_DMA failed: Operation not permitted
  using_dma    =  0 (off)

# hdparm -I /dev/hdd

/dev/hdd:

ATA device, with non-removable media
        Model Number:       ST3200822A
        Serial Number:      5LJ1JK9L
        Firmware Revision:  3.01
Standards:
        Used: ATA/ATAPI-6 T13 1410D revision 2
        Supported: 6 5 4 3
Configuration:
        Logical         max     current
        cylinders       16383   65535
        heads           16      1
        sectors/track   63      63
        --
        CHS current addressable sectors:    4128705
        LBA    user addressable sectors:  268435455
        LBA48  user addressable sectors:  390721968
        device size with M = 1024*1024:      190782 MBytes
        device size with M = 1000*1000:      200049 MBytes (200 GB)
Capabilities:
        LBA, IORDY(can be disabled)
        bytes avail on r/w long: 4      Queue depth: 1
Standby timer values: spec'd by Standard, no device specific minimum
        R/W multiple sector transfer: Max = 16  Current = 16
        Recommended acoustic management value: 128, current value: 0
        DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5
             Cycle time: min=120ns recommended=120ns
        PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=240ns IORDY flow control=120ns
Commands/features:
        Enabled Supported:
           *    READ BUFFER cmd
           *    WRITE BUFFER cmd
           *    Host Protected Area feature set
           *    Look-ahead
           *    Write cache
           *    Power Management feature set
                Security Mode feature set
                SMART feature set
           *    FLUSH CACHE EXT command
           *    Mandatory FLUSH CACHE command
           *    Device Configuration Overlay feature set
           *    48-bit Address feature set
                SET MAX security extension
           *    DOWNLOAD MICROCODE cmd
           *    SMART self-test
           *    SMART error logging
Security:
        Master password revision code = 65534
                supported
        not     enabled
        not     locked
        not     frozen
        not     expired: security count
        not     supported: enhanced erase
HW reset results:
        CBLID- above Vih
        Device num = 1 determined by CSEL
Checksum: correct


==============================================================================
=== some lines from .config ==================================================

CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set

CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y


==============================================================================
=== Some lines from `lspci -v` output ========================================

0000:00:00.0 Host bridge: Intel Corp. 82865G/PE/P Processor to I/O Controller (rev 02)
        Subsystem: Giga-byte Technology: Unknown device 2570
        Flags: bus master, fast devsel, latency 0
        Memory at e0000000 (32-bit, prefetchable)
        Capabilities: [e4] #09 [1106]

0000:00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB PCI Bridge (rev c2) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
        I/O behind bridge: 0000a000-0000afff
        Memory behind bridge: f8000000-f80fffff

0000:00:1f.0 ISA bridge: Intel Corp. 82801EB LPC Interface Controller (rev 02)
        Flags: bus master, medium devsel, latency 0

0000:00:1f.2 IDE interface: Intel Corp. 82801EB Ultra ATA Storage Controller (rev 02) (prog-if 8a [Master SecP PriP])
        Subsystem: Giga-byte Technology: Unknown device 24d1
        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 f000 [size=16]

0000:00:1f.3 SMBus: Intel Corp. 82801EB SMBus Controller (rev 02)
        Subsystem: Giga-byte Technology: Unknown device 24d2
        Flags: medium devsel, IRQ 9
        I/O ports at 1400 [size=32]


==============================================================================
=== Some lines of kernel-bool messages =======================================

Linux version 2.6.12-rc2 (root@wcm-5) (gcc version 3.3.3 (SuSE Linux)) #1 SMP Mon May 23 11:05:23 EEST 2005 Kernel command line: BOOT_IMAGE=Linux-2.6.12 ro root=806 resume=/dev/sda5 ide1=dma
ide_setup: ide1=dma -- OBSOLETE OPTION, WILL BE REMOVED SOON!
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...
hdc: SONY CD-RW CRX320E, ATAPI CD/DVD-ROM drive
hdd: ST3200822A, ATA DISK drive
Probing IDE interface ide2...
Probing IDE interface ide3...
Probing IDE interface ide4...
Probing IDE interface ide5...
ide1 at 0x170-0x177,0x376 on irq 15
hdd: max request size: 1024KiB
hdd: 390721968 sectors (200049 MB) w/8192KiB Cache, CHS=24321/255/63
hdd: cache flushes supported
 hdd: hdd1 hdd2
hdc: ATAPI 52X DVD-ROM CD-R/RW drive, 2048kB Cache
Uniform CD-ROM driver Revision: 3.20
libata version 1.10 loaded.
ata_piix version 1.03
ata_piix: combined mode detected
ACPI: PCI Interrupt 0000:00:1f.2[A] -> GSI 18 (level, low) -> IRQ 18
ata: 0x170 IDE port busy
PCI: Setting latency timer of device 0000:00:1f.2 to 64
ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xF000 irq 14
ata1: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4003 85:3468 86:3c01 87:4003 88:207f
ata1: dev 0 ATA, max UDMA/133, 312579695 sectors: lba48
ata1: dev 0 configured for UDMA/133
scsi0 : ata_piix
  Vendor: ATA       Model: ST3160023AS       Rev: 3.00
  Type:   Direct-Access                      ANSI SCSI revision: 05
SCSI device sda: 312579695 512-byte hdwr sectors (160041 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 312579695 512-byte hdwr sectors (160041 MB)
SCSI device sda: drive cache: write back
 sda: sda1 sda2 < sda5 sda6 > sda3 sda4
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0,  type 0


==============================================================================
==============================================================================


Please, help!


p.s. I am not in mailing-list, so please add me to CC.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux