# ATA100 for hard drives?

## FINITE

How do I enable ata100 for my hard drives or how do I find out what they are set to right now? I am pretty sure they are running at ata33 cause when my system boots it says something like ide bus 33mhz assumed. So what do I type in the term to check on this? And what do I type or change to get ata100? Thanks  :Very Happy:  This is FINITE, im logged in but for some reason when I went to post this I was logged out and could not get to post while logged it.

Guess I was logged in, thats wierd.

----------

## ch3

Well, I'm not quite sure, but I thinks this is normal (mine says also this

but I'm sure it use ATA100).

By the way, you can check a few things:

emerge hdparm (sys-apps/hdparm) and run hdparm /dev/hdx (where x

is your HDD letter), it will tell you if it use DMA or not.

Then you can run hdparm -Tt /dev/hdx, hdparm will perform 2 speed tests

my results are: 232MB/s and 33MB/s. Depending on your disk, it should be

almost the same.

If you have anormaly low results for the second test (like 6MB/s) then

go in the kernel to enable DMA for your chipset:

Section ATA/IDE/MFM/RLL support -> IDE, ATA and ATAPI block devices

Then, check for "generic PCI bus master DMA support" (should be enabled)

Then, select "Use PCI DMA by default when available".

Recompile and reboot, it should now use the maximum DMA level for your HDD's and CDROM's.

----------

## j7899

The 33mhz bus is your pci bus, so dont worry about that.

----------

## linuxusr

I'm pursuing a simular problem, see:

https://forums.gentoo.org/viewtopic.php?t=2992

I have just found 2 more clues that may help.

First see if your card is listed here:

cat /proc/ioports

Then to further confuse the issue read:

(use your favorite editor)

nano -w /usr/src/linux*/Documentation/ide.txt

My card is listed in the output of cat /proc/ioports

I'm hoping this entry in the ide.txt may prove to be a key.

<quote>

To access devices on interfaces > ide0, device entries must first be

created in /dev for them.  To create such entries, simply run the included

shell script:   /usr/src/linux/scripts/MAKEDEV.ide

snip

For special cases, interfaces may be specified using kernel "command line"

options.  For example,........

</quote>

Good luck,

Linuxusr

----------

## FINITE

I don't actually have an ata100 card. I am just talking about the onboard ide chanels. I have run some hdparm "benchmarks" before using hdparm -c1 -d1 -k1 /dev/xxx and the transfer rate is REALY poor and then after using the above mentioned hdparm command hda is pushing 32mb/sec and hdb is pushing 45mb/sec. So as you can see it aint on by default. Now I know that I could put that hdparm in my start file but I would rather have this setting made through the kernel automatically. I do have dma compiled into the kernel but there are several options in there which I do not understand. Is there a place that I can find info on what options need to be selected for the kernel on an an MSI KT3 Ultra or just general kernel howto info? Thanx.

----------

## ch3

Hey, I probably found what's your problem, the MSI KT3 is

a VIA KT333 based mobo. If you use kernel 2.4.18, the chipset is

not supported. Upgrade to kernel 2.4.19 and it will be ok...

I just hope you don't use XFS as I do, because then you'll have to use

kernel 2.4.18, patch for XFS with SGI patches and patch for VIA with a patch

I get I don't know where (but I still got it, so...)

Just be sure to enable VIA 82XX support, and DMA then it will be fine.

----------

## TheWart

in order to enable ATA 100 support, do 

```
hdparm -X 69 /dev/xxx
```

be forewarned, if your disk does not support it, it will not boot up without a rescue disk..

----------

## DanRok

I've an asus a7v with an ATA100 Promise Controller. Sometimes when i boot linux i found the following in the bootlog:

hde:pio hdf:pio (hde, hdf are both harddrives which uses ata100, they are connect to the controller)

but sometimes i found that in the bootlog:

hde:dma hdf:dma

does anybody know something about this problem? maybe i forgot to enable via82xx support in the kernel?

----------

## FINITE

Hey ch3, I am not sure wether or not I have 2.4.18 or 19, I can say that the cource that I emerged durring install was the Gentoo spin on whatever kernel I did get. I should know this stuff ehh  :Very Happy: 

I am almost positive that the kernel I have is the 2.4.19 but i am at work and have no way to verrify this right now. I can say that I have not seen anything about via8233a support in the kernel configurator (make menuconfig) possible that I missed it though there are alot of options in there. Thanks for the heads up on the kernel man  :Very Happy: 

----------

## rommel

to check your kernel run #uname -r

to see what your hard drive is running at do #hdparm -i /dev/hda 

change obviously the hda to whatever your drive is

----------

## ch3

You should not see 8233a in the kernel because

it is part of via 82xx familly so that's normal  :Smile: .

I'm quite sure you have a .18 kernel (at least I hope so  :Confused: , because

if not, I don't know what the problem is)

One way to be really sure you have support for via8233a is to go in the

kernel  :Smile: 

```

/usr/src/linux/pci_ids.h:

    look for #define PCI_DEVICE_ID_VIA_8233A    0x3147  at (more or less) line 946

/usr/src/linux/drivers/ide/via82cxxx.c

    look for { "vt8233a" , PCI_DEVICE_ID_VIA_8233A , 0x00, 0x2f, VIA_UDMA_133 } at (again more or less) line 104

```

There may be other ways but that's the only one I know  :Smile: 

----------

## dek

Here's another way. But beware, you may break everything.

Add append="ide0=ata66" to your lilo.conf (i don't know about grub, never used it).

It will force the kernel to use DMA settings for your drives. I used it once with kernel 2.4.18. My drives always used proper settings then. The latest gentoo kernel uses correct settings by default for me.

Again, only do this, if you are really sure all your hardware (chipset, drives, cable) is capable of it, or you may burn down your house.  :Wink: 

----------

## krunk

grub---> add to kernel options: idebus=66

----------

## krunk

grub---> add to kernel options: idebus=66

----------

