# UDMA 66 is not fully working on my harddics [NOT SOLVED]

## madman

I bought a new HD so I wanted to change UDMA33 to UDMA66 or UDMA100:

```

hdparm -c1 -X68 -d1 /dev/hda

/dev/hda:

 setting 32-bit IO_support flag to 1

 setting using_dma to 1 (on)

 setting xfermode to 68 (UltraDMA mode4)

 IO_support   =  1 (32-bit)

 using_dma    =  1 (on)

```

and... nothing happens!

```

hdparm -i /dev/hda | grep dma

 DMA modes:  mdma0 mdma1 mdma2

 UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5

```

my chipset support is compilled into kernel, a cables are ok jest, BIOS detects my disk as ATA100

so how can I get a better performance with it?

the HD is WD 160 GB 7200RPM 8MB cache, so it could be much faaaster:

```

hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   444 MB in  2.02 seconds = 220.16 MB/sec

 Timing buffered disk reads:   44 MB in  3.14 seconds =  14.01 MB/sec

```

----edit-----

```

dmesg | grep UDMA66

VP_IDE: VIA vt82c686a (rev 22) IDE UDMA66 controller on pci0000:00:07.1 

```

----------

## Bob P

assuming that it supports UDMA66, please post the results of 

```
hdparm /dev/hda
```

after you try this:

```
hdparm -d1c1u1m16 /dev/hda
```

----------

## madman

```

hdparm /dev/hda

/dev/hda:

 multcount    = 16 (on)

 IO_support   =  1 (32-bit)

 unmaskirq    =  1 (on)

 using_dma    =  1 (on)

 keepsettings =  1 (on)

 readonly     =  0 (off)

 readahead    = 256 (on)

 geometry     = 19457/255/63, sectors = 160041885696, start = 0

 
```

----------

## Bob P

Duh.  I forgot something.  i wanted to see how fast your drive tests after issuing those commands.  i should have said to try this:

```
hdparm -d1c1u1m16 /dev/hda
```

and post the output of these:

```
hdparm /dev/hda

hdparm -tT /dev/hda
```

----------

## madman

```

hdparm -d1c1u1m16 /dev/hda;hdparm /dev/hda;hdparm -tT /dev/hda

/dev/hda:

 setting 32-bit IO_support flag to 1

 setting multcount to 16

 setting unmaskirq to 1 (on)

 setting using_dma to 1 (on)

 multcount    = 16 (on)

 IO_support   =  1 (32-bit)

 unmaskirq    =  1 (on)

 using_dma    =  1 (on)

/dev/hda:

 multcount    = 16 (on)

 IO_support   =  1 (32-bit)

 unmaskirq    =  1 (on)

 using_dma    =  1 (on)

 keepsettings =  1 (on)

 readonly     =  0 (off)

 readahead    = 256 (on)

 geometry     = 19457/255/63, sectors = 160041885696, start = 0

/dev/hda:

 Timing cached reads:   364 MB in  2.28 seconds = 159.60 MB/sec

 Timing buffered disk reads:   44 MB in  3.03 seconds =  14.50 MB/sec

```

----------

## Bob P

now that is odd.  i don't have a WD drive in my linux box, i have a maxtor that can do UDMA133.  but the IDE interface in the PC is only UDMA66 and limits my speed accordingly.

when i issue the commands i suggested earlier, here's what i'm getting when i run "hdparm -tT /dev/hda" from within a console in KDE:

```
/dev/hda:

 Timing cached reads:   496 MB in  2.00 seconds = 247.54 MB/sec

 Timing buffered disk reads:  104 MB in  3.03 seconds =  34.29 MB/sec
```

those numbers are about what i would expect from your drive.  

one thing that i had noticed was that you were using the "i" parameter before.  that parameter reflects the bootup state of your drive, not its state after you've issued other hdparm commands.  just wanted to be sure you were aware of that.

if you look at the MAN pages for hdparm, the "m" parameter has some specific settings for WD Caviar drives.  its possible that you may have to try repeating the settings i mentioned earlier with smaller values for m, such as 0, 2, 4, or 8.

from the manual on hdparm:

 *Quote:*   

>    -m    
> 
> Get/set  sector  count  for multiple sector I/O on the drive.  A
> 
>               setting of 0 disables this feature.  Multiple sector  mode  (aka
> ...

 

proceed with caution.

----------

## madman

i've tried eveery multicout values avalaible for my disc, there's the result:

```

madman madman # hdparm -m0 /dev/hda

/dev/hda:

 setting multcount to 0

 multcount    =  0 (off)

madman madman # hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   344 MB in  2.01 seconds = 170.92 MB/sec

 Timing buffered disk reads:   40 MB in  3.07 seconds =  13.04 MB/sec

madman madman # hdparm -m2 /dev/hda

/dev/hda:

 setting multcount to 2

 multcount    =  2 (on)

madman madman # hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   348 MB in  2.01 seconds = 173.33 MB/sec

 Timing buffered disk reads:   40 MB in  3.02 seconds =  13.23 MB/sec

madman madman # hdparm -m4 /dev/hda

/dev/hda:

 setting multcount to 4

 multcount    =  4 (on)

madman madman # hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   336 MB in  2.01 seconds = 167.36 MB/sec

 Timing buffered disk reads:   40 MB in  3.04 seconds =  13.16 MB/sec

madman madman # hdparm -m8 /dev/hda

/dev/hda:

 setting multcount to 8

 multcount    =  8 (on)

madman madman # hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   344 MB in  2.03 seconds = 169.65 MB/sec

 Timing buffered disk reads:   42 MB in  3.14 seconds =  13.37 MB/sec

madman madman # hdparm -m16 /dev/hda

/dev/hda:

 setting multcount to 16

 multcount    = 16 (on)

madman madman # hdparm -Tt /dev/hda

/dev/hda:

 Timing cached reads:   340 MB in  2.02 seconds = 168.59 MB/sec

 Timing buffered disk reads:   40 MB in  3.04 seconds =  13.16 MB/sec

```

so I think the moulticount option doesn't matter for rather new WD drive

----------

## Bob P

well, this doesn't bode well for me as i have a pair of WD drives on the table waiting to be installed in my linux box.

could you post the complete output of this?

```
hdparm -I /dev/hda
```

----------

## Bob P

just for reference, I pulled a WD 1200 drive out of my Windows box and stuffed it into my Linux box as a slave on the same IDE channel as my Maxtor drive.  the WD 1200 is now /dev/hdb.

on booting to the command prompt, without issuing any commands via hdparm, i get the following:

```
gentoo bob # hdparm /dev/hdb

/dev/hdb:

 multcount    = 16 (on)

 IO_support   =  0 (default 16-bit)

 unmaskirq    =  0 (off)

 using_dma    =  1 (on)

 keepsettings =  0 (off)

 readonly     =  0 (off)

 readahead    = 256 (on)

 geometry     = 16383/255/63, sectors = 120034123776, start = 0

```

```
gentoo bob # hdparm -i /dev/hdb

/dev/hdb:

 Model=WDC WD1200JB-00EVA0, FwRev=15.05R15, SerialNo=WD-WMAEK2962607

 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }

 RawCHS=16383/16/63, TrkSize=57600, SectSize=600, ECCbytes=74

 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16

 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=234441648

 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 udma3 *udma4 udma5

 AdvancedPM=no WriteCache=enabled

 Drive conforms to: device does not report version:

 * signifies the current active mode

```

```
gentoo bob # hdparm -tT /dev/hdb

/dev/hdb:

 Timing cached reads:   496 MB in  2.02 seconds = 245.95 MB/sec

 Timing buffered disk reads:   96 MB in  3.02 seconds =  31.81 MB/sec

```

take a look at the output of "hdparm -i /dev/hdb"

at boot time, your drive is being recognized by your hardware as using UDMA Mode 2, or 33 MHz.  My PC has a 66 MHz IDE bus, and the drive defaults (out of the box) to UDMA Mode 4 (66 MHz).

So I have a few more questions for you:

1.  Are you sure that your MB/controller supports UDMA Mode 4/5 on the IDE Bus?  

2.  Are you using the 80-conductor/40-pin cable that came with your drive, and NOT a standard 40-conductor/40-pin IDE cable?  If you use the standard IDE cable, you won't get proper results, as any UDMA Mode of 3 or more requires a special cable.

two other requirements are necessary for UDMA, but I am presuming that these questions have already been answered with a "yes":

3.  Does the HD support UDMA-4/ATA-66 or UDMA-5/ATA-100?

4.  Does your OS support these modes?

----------

## madman

my answer is: 4 x yes

----------

## truekaiser

i forget the correct syntax but don't you have to pass ide=xx as boot parm to avoid being stuck in 33 or 66 mode which ever it defualts to?

----------

## Bob P

 *madman wrote:*   

> my answer is: 4 x yes

 

1.  you didn't post the output using the "-I" parameter

2.  satisfying those 4 conditions are both necessary and sufficient to fully enable UDMA66 on your PC.  if you're not getting UDMA66, one of those answers has to be no, even though you think it is yes.

----------

## Bob P

 *truekaiser wrote:*   

> i forget the correct syntax but don't you have to pass ide=xx as boot parm to avoid being stuck in 33 or 66 mode which ever it defualts to?

 

you're right, there is a kernel command line parameter to set the IDE bus speed to 66 if it defaults to 33.  the command syntax is:

```
idebus=66
```

depending on how you look at it, that would fall under condition 1 or condition 4 of the steps that i had mentioned earlier. i was going to hold on examining the contents of dmesg until after we had finished working on hdparm.  

madman, give that a shot and see if it works.  sometimes it pays off to take a shortcut instead of being thorough.    :Wink: 

----------

## madman

i think idebus=xx is for PIO and ide=ataxx is for UDMA, but doesnt matter, both are not working

```
hdparm -I /dev/hda

/dev/hda:

ATA device, with non-removable media

        Model Number:       WDC WD1600JB-00GVA0

        Serial Number:      WD-WCAL91854710

        Firmware Revision:  08.02D08

Standards:

        Supported: 6 5 4 3

        Likely used: 6

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:  312581808

        device size with M = 1024*1024:      152627 MBytes

        device size with M = 1000*1000:      160041 MBytes (160 GB)

Capabilities:

        LBA, IORDY(can be disabled)

        bytes avail on r/w long: 74     Queue depth: 1

        Standby timer values: spec'd by Standard, with device specific minimum

        R/W multiple sector transfer: Max = 16  Current = 16

        Recommended acoustic management value: 128, current value: 254

        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=120ns  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

           *    Automatic Acoustic Management feature set

                SET MAX security extension

           *    DOWNLOAD MICROCODE cmd

           *    SMART self-test

           *    SMART error logging

Security:

                supported

        not     enabled

        not     locked

        not     frozen

        not     expired: security count

        not     supported: enhanced erase

HW reset results:

        CBLID- above Vih

        Device num = 0 determined by the jumper

Checksum: correct

```

i have absolutely no idea how can i get it working in udma66. i think the less painful will be to buy a PCI IDE controller

----------

## Bob P

i wouldn't run out and buy a controller yet. 

your hdparm output shows that your HD should handle UDMA66 (Mode 4) and UDMA100 (Mode 5), but your PC doesn't appear to be turning on UDMA66 -- its defaulting to UDMA33 (Mode 2).  so we either have a problem where your hardware will not support UDMA66 or your OS is not yet properly configured to implement it.

try editing /etc/conf.d/hdparm to look like this:

```
 # You can either set hdparm arguments for each drive using disc*_args and cdrom*_args.. 

 # eg. 

 disc0_args="-d1c1u1m16" 

 # disc1_args"-d1" 

 cdrom0_args="-d1c1u1" 

 #cdrom1_args="-d1c1u1" 

 # Or, you can set hdparm options for ALL drives using all_args.. 

 # eg. 

 # this mimics the behavior of the current script 

 #all_args="-d1"
```

of course you may have to change the drive assignments, depending on your confiugration of hard disks and CD-ROMs.

then, after editing the contents of /etc/conf.d/hdparm type the following command to add hdparm to the boot runlevel:

```
rc-update add hdparm boot
```

then reboot and go to the setup menu in BIOS.  if you have a setting for UDMA, be certain that it is turned on to support Modes 4 and 5, if those settings are available.  (on my Dell Optiplex, I had to perform a flash update of the BIOS to support Mode 4.)

after you boot, post a copy of your dmesg output.

----------

## Bob P

what kernel are you using?

----------

## dsd

 *Bob P wrote:*   

> you're right, there is a kernel command line parameter to set the IDE bus speed to 66 if it defaults to 33.  the command syntax is:
> 
> ```
> idebus=66
> ```
> ...

 

thats bus speed (in mhz) and bears no relation to UDMA 33/66 (in mbytes/sec).

with bus speed, lower is better. my UDMA100/133 system is currently running with a 33mhz ide bus.

----------

## Bob P

thanks, Daniel.  do you have any other ideas why his setup isn't working?

----------

## dsd

in my experience, usually implies the cables. its mentioned that they were checked in the first post, but are we sure that they are 80 conductor?

----------

## madman

ok, it's working, but not at all

```
dmesg | grep 66

Kernel command line: auto BOOT_IMAGE=Gentoo ro root=301 ide0=ata66

ide_setup: ide0=ata66

Memory: 319408k/327616k available (2840k kernel code, 7668k reserved, 1118k data, 216k init, 0k highmem)

VP_IDE: VIA vt82c686a (rev 22) IDE UDMA66 controller on pci0000:00:07.1

hda: 312581808 sectors (160041 MB) w/8192KiB Cache, CHS=19457/255/63, UDMA(66)

eth0: RealTek RTL8139 at 0xd4866000, 00:30:4f:1f:bc:cf, IRQ 11

```

hdparm says:

```
 hdparm -i /dev/hda

/dev/hda:

 Model=WDC WD1600JB-00GVA0, FwRev=08.02D08, SerialNo=WD-WCAL91854710

 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }

 RawCHS=16383/16/63, TrkSize=57600, SectSize=600, ECCbytes=74

 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16

 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455

 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 udma3 *udma4 udma5

 AdvancedPM=no WriteCache=enabled

 Drive conforms to: device does not report version:

* signifies the current active mode

```

so everything say that it's working on UDMA66 now, but the transfers are the same as on UDMA33

```
 hdparm -tT /dev/hda

/dev/hda:

 Timing cached reads:   344 MB in  2.01 seconds = 171.09 MB/sec

 Timing buffered disk reads:   42 MB in  3.02 seconds =  13.90 MB/sec

```

----------

## Bob P

 *dsd wrote:*   

> in my experience, usually implies the cables. its mentioned that they were checked in the first post, but are we sure that they are 80 conductor?

 i don't know, but its a good idea to double-check on this.  i asked about the 80-conductor/40-pin cable vs. the 40-conductor/40-pin cable, and i think he said that he was sure that he had the right cable. 

as you know, if you use the 40/40 cable without the 40 additional ground lines, you may end up with interference and data corruption.

madman, if this helps, there's more info on UDMA modes here:

http://www.pcguide.com/ref/hdd/if/ide/modesUDMA-c.html

----------

## Bob P

madman, i see that you posted while i was typing.  i normally don't grep my dmesg outputs, just as a matter of personal preference, because i like to be able to read everything.  besides, posting all of the data doesn't take up that much space.

if you've got the controller set up for UDMA-66 and the drive set-up for UDMA-66, but you're getting transfers like you had with DUMA-33, I'm wondering if you've got interference or some other performance impediment causing problems.

are you sure about the 80-conductor cable?  maybe you've got a bad one. 

what is the arrangement of all of your devices on the IDE channels?

----------

## madman

ok, that's my full dmesg output:

```

dmesg

Linux version 2.6.9-gentoo-r6 (root@madman) (gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)) #1 SMP Fri Nov 26 20:18:24 UTC 2004

BIOS-provided physical RAM map:

 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)

 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)

 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)

 BIOS-e820: 0000000000100000 - 0000000013ff0000 (usable)

 BIOS-e820: 0000000013ff0000 - 0000000013ff3000 (ACPI NVS)

 BIOS-e820: 0000000013ff3000 - 0000000014000000 (ACPI data)

 BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)

319MB LOWMEM available.

On node 0 totalpages: 81904

  DMA zone: 4096 pages, LIFO batch:1

  Normal zone: 77808 pages, LIFO batch:16

  HighMem zone: 0 pages, LIFO batch:1

DMI 2.3 present.

ACPI: RSDP (v000 VIA694                                ) @ 0x000f7dc0

ACPI: RSDT (v001 VIA694 AWRDACPI 0x42302e31 AWRD 0x00000000) @ 0x13ff3000

ACPI: FADT (v001 VIA694 AWRDACPI 0x42302e31 AWRD 0x00000000) @ 0x13ff3040

ACPI: DSDT (v001 VIA694 AWRDACPI 0x00001000 MSFT 0x0100000c) @ 0x00000000

Built 1 zonelists

Kernel command line: auto BOOT_IMAGE=Gentoo ro root=301 ide0=ata66

ide_setup: ide0=ata66

No local APIC present or hardware disabled

Initializing CPU#0

CPU 0 irqstacks, hard=c051e000 soft=c051a000

PID hash table entries: 2048 (order: 11, 32768 bytes)

Detected 701.373 MHz processor.

Using tsc for high-res timesource

Console: colour dummy device 80x25

Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)

Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)

Memory: 319408k/327616k available (2840k kernel code, 7668k reserved, 1118k data, 216k init, 0k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay loop... 1376.25 BogoMIPS (lpj=688128)

Mount-cache hash table entries: 512 (order: 0, 4096 bytes)

CPU: After generic identify, caps: 0183f9ff c1c7f9ff 00000000 00000000

CPU: After vendor identify, caps:  0183f9ff c1c7f9ff 00000000 00000000

CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)

CPU: L2 Cache: 64K (64 bytes/line)

CPU: After all inits, caps:        0183f9ff c1c7f9ff 00000000 00000020

Intel machine check architecture supported.

Intel machine check reporting enabled on CPU#0.

Enabling fast FPU save and restore... done.

Checking 'hlt' instruction... OK.

ACPI: IRQ3 SCI: Level Trigger.

CPU0: AMD Duron(tm) Processor stepping 01

per-CPU timeslice cutoff: 182.70 usecs.

task migration cache decay timeout: 1 msecs.

SMP motherboard not detected.

Local APIC not detected. Using dummy APIC emulation.

Brought up 1 CPUs

checking if image is initramfs...it isn't (ungzip failed); looks like an initrd

Freeing initrd memory: 40k freed

NET: Registered protocol family 16

PCI: PCI BIOS revision 2.10 entry at 0xfb460, last bus=1

PCI: Using configuration type 1

mtrr: v2.0 (20020519)

ACPI: Subsystem revision 20040816

ACPI: Interpreter enabled

ACPI: Using PIC for interrupt routing

ACPI: PCI Root Bridge [PCI0] (00:00)

PCI: Probing PCI hardware (bus 00)

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

ACPI: PCI Interrupt Link [LNKA] (IRQs 1 3 4 5 6 7 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKB] (IRQs 1 3 4 5 6 7 10 11 12 14 15) *0, disabled.

ACPI: PCI Interrupt Link [LNKC] (IRQs 1 3 4 5 6 7 *10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKD] (IRQs 1 3 4 5 6 *7 10 11 12 14 15)

SCSI subsystem initialized

PCI: Using ACPI for IRQ routing

ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 10

ACPI: PCI interrupt 0000:00:07.5[C] -> GSI 10 (level, low) -> IRQ 10

ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11

ACPI: PCI interrupt 0000:00:0d.0[A] -> GSI 11 (level, low) -> IRQ 11

ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 11 (level, low) -> IRQ 11

Machine check exception polling timer started.

audit: initializing netlink socket (disabled)

audit(1101658760.4294966507:0): initialized

devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)

devfs: boot_options: 0x1

Installing knfsd (copyright (C) 1996 okir@monad.swb.de).

NTFS driver 2.1.20 [Flags: R/O].

PCI: Disabling Via external APIC routing

inotify init: minor=63

ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 11 (level, low) -> IRQ 11

[drm] Initialized tdfx 1.0.0 20010216 on minor 0: 3Dfx Interactive, Inc. Voodoo Banshee

vesafb: framebuffer at 0xd8000000, mapped to 0xd4880000, size 2812k

vesafb: mode is 800x600x24, linelength=4096, pages=5

vesafb: protected mode interface info at c000:7e55

vesafb: scrolling: redraw

vesafb: Truecolor: size=0:8:8:8, shift=0:16:8:0

Console: switching to colour frame buffer device 100x37

fb0: VESA VGA frame buffer device

ACPI: Power Button (FF) [PWRF]

ACPI: Sleep Button (CM) [SLPB]

ACPI: Processor [CPU0] (supports C1 C2, 2 throttling states)

serio: i8042 AUX port at 0x60,0x64 irq 12

serio: i8042 KBD port at 0x60,0x64 irq 1

Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled

mice: PS/2 mouse device common for all mice

input: AT Translated Set 2 keyboard on isa0060/serio0

input: ImPS/2 Generic Wheel Mouse on isa0060/serio1

Using anticipatory io scheduler

floppy0: no floppy controllers found

RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize

loop: loaded (max 8 devices)

nbd: registered device at major 43

8139cp: 10/100 PCI Ethernet driver v1.2 (Mar 22, 2004)

8139cp: pci dev 0000:00:0d.0 (id 10ec:8139 rev 10) is not an 8139C+ compatible chip

8139cp: Try the "8139too" driver instead.

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

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

VP_IDE: IDE controller at PCI slot 0000:00:07.1

VP_IDE: chipset revision 16

VP_IDE: not 100% native mode: will probe irqs later

VP_IDE: VIA vt82c686a (rev 22) IDE UDMA66 controller on pci0000:00:07.1

    ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:pio

    ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:DMA

Probing IDE interface ide0...

hda: WDC WD1600JB-00GVA0, ATA DISK drive

ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

Probing IDE interface ide1...

hdc: SAMSUNG SV2042H, ATA DISK drive

hdd: TEAC CD-W552E, ATAPI CD/DVD-ROM drive

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

Probing IDE interface ide2...

ide2: Wait for ready failed before probe !

Probing IDE interface ide3...

ide3: Wait for ready failed before probe !

Probing IDE interface ide4...

ide4: Wait for ready failed before probe !

Probing IDE interface ide5...

ide5: Wait for ready failed before probe !

hda: max request size: 1024KiB

hda: 312581808 sectors (160041 MB) w/8192KiB Cache, CHS=19457/255/63, UDMA(66)

hda: cache flushes supported

 /dev/ide/host0/bus0/target0/lun0: p1 p2 p3 p4

hdc: max request size: 128KiB

hdc: 39865392 sectors (20411 MB) w/426KiB Cache, CHS=39549/16/63, UDMA(33)

hdc: cache flushes not supported

 /dev/ide/host0/bus1/target0/lun0: p1

hdd: ATAPI 52X CD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)

Uniform CD-ROM driver Revision: 3.20

Advanced Linux Sound Architecture Driver Version 1.0.6 (Sun Aug 15 07:17:53 2004 UTC).

ACPI: PCI interrupt 0000:00:07.5[C] -> GSI 10 (level, low) -> IRQ 10

PCI: Setting latency timer of device 0000:00:07.5 to 64

ALSA device list:

  #0: VIA 82C686A/B rev20 at 0xdc00, irq 10

oprofile: using timer interrupt.

NET: Registered protocol family 2

IP: routing cache hash table of 2048 buckets, 16Kbytes

TCP: Hash tables configured (established 32768 bind 32768)

ip_conntrack version 2.1 (2559 buckets, 20472 max) - 304 bytes per conntrack

ip_tables: (C) 2000-2002 Netfilter core team

ipt_recent v0.3.1: Stephen Frost <sfrost@snowman.net>.  http://snowman.net/projects/ipt_recent/

arp_tables: (C) 2002 David S. Miller

NET: Registered protocol family 1

NET: Registered protocol family 17

ACPI: (supports S0 S1 S4 S5)

ACPI wakeup devices:

SLPB PCI0 USB0 USB1 MODM

RAMDISK: Couldn't find valid RAM disk image starting at 0.

kjournald starting.  Commit interval 5 seconds

EXT3-fs: mounted filesystem with ordered data mode.

VFS: Mounted root (ext3 filesystem) readonly.

Mounted devfs on /dev

Freeing unused kernel memory: 216k freed

Adding 240964k swap on /dev/hda2.  Priority:-1 extents:1

EXT3 FS on hda1, internal journal

8139too Fast Ethernet driver 0.9.27

ACPI: PCI interrupt 0000:00:0d.0[A] -> GSI 11 (level, low) -> IRQ 11

eth0: RealTek RTL8139 at 0xd4866000, 00:30:4f:1f:bc:cf, IRQ 11

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

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hda3, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

EXT3-fs warning: maximal mount count reached, running e2fsck is recommended

kjournald starting.  Commit interval 5 seconds

EXT3 FS on hda4, internal journal

EXT3-fs: mounted filesystem with ordered data mode.

eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

mtrr: 0xd8000000,0x2000000 overlaps existing 0xd8000000,0x200000

mtrr: 0xd8000000,0x2000000 overlaps existing 0xd8000000,0x200000

atkbd.c: Spurious ACK on isa0060/serio0. Some program, like XFree86, might be trying access hardware directly.

atkbd.c: Spurious ACK on isa0060/serio0. Some program, like XFree86, might be trying access hardware directly.

```

hda - WD disk

hdb - none

hdc - Samsung disk

hdd - Teac cd-burner

----------

## Bob P

everything looks good to me.   :Question: 

just to be on the safe side, do you have a spare 80-conductor cable that you could swap in for testing?  granted, i think it offers a low probability of success, but its better to check this before buying a new controller.

anyone else?  daniel?

----------

## madman

i swap my 80-pin conductor to anothner got from my friend, and nothing changed (on this conductor, my friend's drive is fully working at UDMA66 - on his MB)

----------

## Cintra

Here is my WD

#  hdparm -i /dev/hdb

/dev/hdb:

 Model=WDC WD1600JB-00FUA0, FwRev=15.05R15, SerialNo=WD-WCAES1067472

 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }

 RawCHS=16383/16/63, TrkSize=57600, SectSize=600, ECCbytes=74

 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16

 CurCHS=65535/1/63, CurSects=4128705, LBA=yes, LBAsects=268435455

 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 udma3 udma4 *udma5

 AdvancedPM=no WriteCache=enabled

 Drive conforms to: device does not report version:

 * signifies the current active mode

 Timing cached reads:   1684 MB in  2.00 seconds = 840.87 MB/sec

 Timing buffered disk reads:  140 MB in  3.01 seconds =  46.57 MB/sec

mvh

Btw I'm using a round cable, which lifted me from udma2 and gives better airflow..

----------

## madman

i think i know where could be problem. i removed generic_ide from  my kernel and built-in only my onboard ide-controller and there was a kernel panic - couldn's mount root, bad block bla bla bla

so i think that the kernel's drivers doesn't fully support the onboard ide-controller

----------

## Cintra

OK I've selected an extract of my .config which applies to the IDE area, have a compare..

# ATA/ATAPI/MFM/RLL support

#

CONFIG_IDE=y

CONFIG_BLK_DEV_IDE=y

#

# Please see Documentation/ide.txt for help/info on IDE drives

#

# CONFIG_BLK_DEV_IDE_SATA is not set

# CONFIG_BLK_DEV_HD_IDE is not set

CONFIG_BLK_DEV_IDEDISK=y

CONFIG_IDEDISK_MULTI_MODE=y

CONFIG_BLK_DEV_IDECD=y

# CONFIG_BLK_DEV_IDETAPE is not set

CONFIG_BLK_DEV_IDEFLOPPY=y

CONFIG_BLK_DEV_IDESCSI=y

# CONFIG_IDE_TASK_IOCTL is not set

#

# IDE chipset support/bugfixes

#

CONFIG_IDE_GENERIC=y

CONFIG_BLK_DEV_CMD640=y

# CONFIG_BLK_DEV_CMD640_ENHANCED is not set

# CONFIG_BLK_DEV_IDEPNP is not set

CONFIG_BLK_DEV_IDEPCI=y

CONFIG_IDEPCI_SHARE_IRQ=y

# CONFIG_BLK_DEV_OFFBOARD is not set

CONFIG_BLK_DEV_GENERIC=y

# CONFIG_BLK_DEV_OPTI621 is not set

# CONFIG_BLK_DEV_RZ1000 is not set

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_SC1200 is not set

CONFIG_BLK_DEV_PIIX=y

# CONFIG_BLK_DEV_NS87415 is not set

# CONFIG_BLK_DEV_TRM290 is not set

# CONFIG_BLK_DEV_VIA82CXXX is not set <<<<<<<<

# CONFIG_IDE_ARM is not set

# CONFIG_IDE_CHIPSETS is not set

CONFIG_BLK_DEV_IDEDMA=y

# CONFIG_IDEDMA_IVB is not set

CONFIG_IDEDMA_AUTO=y

# CONFIG_BLK_DEV_HD is not set

Isn't the VIA yours?

regards

----------

## madman

yes, there's VIA chipset on my MB, but support is enabled: (there is as a module, but i also tried as built into the kernel)

```
cat .config | grep VIA

# CONFIG_MVIAC3_2 is not set

CONFIG_BLK_DEV_VIA82CXXX=m

# CONFIG_VIA_RHINE is not set

# CONFIG_VIA_VELOCITY is not set

CONFIG_SND_VIA82XX=y
```

there's the part of my kernel config:

```
cat .config | grep IDE

CONFIG_IDE=y

CONFIG_BLK_DEV_IDE=y

# Please see Documentation/ide.txt for help/info on IDE drives

# CONFIG_BLK_DEV_IDE_SATA is not set

# CONFIG_BLK_DEV_HD_IDE is not set

CONFIG_BLK_DEV_IDEDISK=y

# CONFIG_IDEDISK_MULTI_MODE is not set

CONFIG_BLK_DEV_IDECD=y

# CONFIG_BLK_DEV_IDETAPE is not set

# CONFIG_BLK_DEV_IDEFLOPPY is not set

CONFIG_BLK_DEV_IDESCSI=y

CONFIG_IDE_TASK_IOCTL=y

CONFIG_IDE_TASKFILE_IO=y

# IDE chipset support/bugfixes

CONFIG_IDE_GENERIC=y  <<< ide isn't working with this option disbled 

CONFIG_BLK_DEV_IDEPCI=y

CONFIG_IDEPCI_SHARE_IRQ=y

CONFIG_BLK_DEV_IDEDMA_PCI=y

CONFIG_BLK_DEV_IDEDMA_FORCED=y

CONFIG_IDEDMA_PCI_AUTO=y

# CONFIG_IDEDMA_ONLYDISK is not set

# CONFIG_IDE_ARM is not set

CONFIG_BLK_DEV_IDEDMA=y

# CONFIG_IDEDMA_IVB is not set

CONFIG_IDEDMA_AUTO=y

# CONFIG_VIDEO_DEV is not set

CONFIG_VIDEO_SELECT=y

# CONFIG_FB_TRIDENT is not set

# CONFIG_SND_TRIDENT is not set

```

everything looks ok for me

----------

## Bob P

after posting to this thread so many times, why didn't i notice the freudian slip in the thread title until now?

----------

