Click to See Complete Forum and Search --> : activating UDMA ...
ClawGhoul
09-14-2002, 08:05 PM
I have the following problem:
I can't activate the UDMA transfer mode for my harddrive. It worked fine in windows :[
(YaST2 brings up an error "can't set udma" or something like that)
my system:
SuSE Linux 8.0 (fresh standard installation)
WD 400 BB 40 GB, UDMA 100
a) Is there a way to 'fix' that problem so that I'm able to activate UDMA via YaST2?
b) How can I check that my (linux)system is able to use UDMA and activate UDMA manually?
THANKS!!!
endoalpha
09-15-2002, 01:24 AM
install hdparm and.... man hdparm
mdwatts
09-15-2002, 09:41 AM
I use
hdparm -X68 -d1 -u1 -m16 -c3 -A1 -a24 -k1 /dev/hda
for my ATA100 drive.
There is also a NHF on using hdparm.
MkIII_Supra
09-15-2002, 09:52 AM
hdparm (http://linux.oreillynet.com/pub/a/linux/2000/06/29/hdparm.html)
ClawGhoul
09-15-2002, 10:22 AM
First: Thanks for help, speeded the hd from 2MB/s to 3MB/s...
But UDMA-transfer mode still does not work:
hdparm -X34 -d1 -u1 -m16 -c3 /dev/hda
=>bash:
/dev/hda:
setting 32-bit I/O support flag to 3
setting multcount to 16
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 34 (multiword DMA mode2)
multcount = 16 (on)
I/O support = 3 (32-bit w/sync)
unmaskirq = 1 (on)
using_dma = 0 (off)
=>
xconsole:
"... linux kernel: ide0: unexpected interrupt, status=0x58..."
Mmh... The error probably lies one level deeper :-(
Any suggestions? Need additional informations about my system?
thanks for any help
mdwatts
09-15-2002, 12:37 PM
X34 is DMA mode-2.
Try using what I posted earlier for ATA100.
X68
What (if any) device do you have on primary/slave (hdb)?
Is the bios entry for your primary/master drive set correctly for the DMA mode?
ClawGhoul
09-15-2002, 01:12 PM
Oh... 68... I tried 66 :B
Well, whatever, it does not work :[
BIOS entry is ok, too.
But that master/slave thing could be the problem :D
I have an (relatively old) cd burner as primary slave, my harddisk is primary master.
Could that be the problem?
I'll try it :)
mdwatts
09-15-2002, 01:37 PM
Having a slower device on the same channel (primary/slave) is likely what is preventing the master drive from operating at it's full speed.
Can you move the cdrom to the secondary channel?
ClawGhoul
09-15-2002, 02:32 PM
mmmh... I disconnected all but my linux harddrive now but there is still the same error...
I don't know whether this has something to do with it:
a)
WD as primary master
Seagate as secondary master
=> no booting possible (pretty slow bios auto detect)
b)
WD as primary master
=> no booting possible
c)
WD as primary master
Seagate as primary slave
=> no boot problems, Seagate is recognized but no access/mounting possible
d)
WD on primary with Cable select
=> no problems
e)
WD as primary master
CD burner as primary slave
=> no problems
Either they printed wrong jumper settings on the harddisk or this is weird :P
Whatever, could it be that WD isn't fully supported by linux? (~_~)
Well I keep on trying :rolleyes:
vampylestat
09-15-2002, 05:49 PM
I had the same problem with my box, until yesterday. I'm running RH 7.3 with an Asus A7V333 motherboard. When watching my system boot up, I found out that it didn't recognize my southbridge chip on my board, therefore I couldn't get UDMA to work on any of my drives. When I upgraded RH through the RHN, it patched the kernel to 2.4.18-10 (it was previously 2.4.18-3).
What I'm saying is that maybe your MB isn't completely supported yet, or you have to upgrade your kernel to get your mb working to its full potential.
ClawGhoul
09-15-2002, 05:51 PM
Mmh...
Primary (Cable Select): WD
Secondary Master: CD-Burner
Secondary Slave: Seagate ATA-100
I get the same error with both the Western Digital and the Seagate harddisk :[
I switched the cables, tried different configurations... but I think it's a software problem -_-
In the BIOS everything UDMA related is on AUTO (the other option is DISABLED)
Any guess? :(
Here some dmesg output:
...
hda: WDC WD400BB-75CAA0, ATA DISK drive
hdc: CREATIVECD-RW RW6424E, ATAPI CD/DVD-ROM drive
hdd: ST340810A, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: safely enabled flush
hda: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=4865/255/63
hdd: safely enabled flush
hdd: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=77545/16/63
hdc: no flushcache support
hdc: ATAPI 24X CD-ROM CD-R/RW drive, 2048kB Cache
Uniform CD-ROM driver Revision: 3.12
...
ide1: Speed warnings UDMA 3/4/5 is not functional.
ide0: Speed warnings UDMA 3/4/5 is not functional.
ide1: Speed warnings UDMA 3/4/5 is not functional.
ide0: unexpected interrupt, status=0x58, count=1
ide1: unexpected interrupt, status=0x58, count=2
...
ClawGhoul
09-15-2002, 05:59 PM
mmmh... what command do I have to type in to see the exact version number?
In the kde control center I only found "2.4.18-64GB-SMP" which looks a bit strange ^^
endoalpha
09-15-2002, 10:11 PM
Are you using hdparm as root? You should be...
vampylestat
09-15-2002, 10:20 PM
"mmmh... what command do I have to type in to see the exact version number?
In the kde control center I only found "2.4.18-64GB-SMP" which looks a bit strange ^^"
--------------
uname -r
ClawGhoul
09-16-2002, 06:05 AM
No, "uname -r" shows the same kernel version number (2.4.18-64GB-SMP)...
@endoalpha: I always log on as root (until everything is configured).
Well, I try to upgrade the kernel to .19.
ClawGhoul
09-16-2002, 02:20 PM
I installed the new kernel and I got two warnings (after make install):
Warning: Int 0x13 function 8 and function 0x48 return different
head/sector geometries for BIOS drive 0x80
Warning: Int 0x13 function 8 and function 0x48 return different
head/sector geometries for BIOS drive 0x81
What is that supposed to mean?
:confused:
ClawGhoul
09-16-2002, 03:25 PM
I just installed the latest .19 kernel but the problem is still there...
:(
mdwatts
09-16-2002, 04:59 PM
Is your HD by itself on the IDE channel?
Did you enable all the necessary DMA support in the IDE sections when you were configuring the kernel?
The following is what I use for my system.
#
# ATA/IDE/MFM/RLL support
#
CONFIG_IDE=y
#
# IDE, ATA and ATAPI Block devices
#
CONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
# CONFIG_IDEDISK_STROKE is not set
# CONFIG_BLK_DEV_IDEDISK_VENDOR is not set
# CONFIG_BLK_DEV_COMMERIAL is not set
CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
CONFIG_BLK_DEV_IDEFLOPPY=m
CONFIG_BLK_DEV_IDESCSI=m
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_TASKFILE_IO=y
#
# IDE chipset support/bugfixes
#
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_OFFBOARD is not set
# 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_PCI_WIP=y
CONFIG_BLK_DEV_IDEDMA_TIMEOUT=y
CONFIG_IDEDMA_NEW_DRIVE_LISTINGS=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
# CONFIG_AMD74XX_OVERRIDE is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_ADMA100 is not set
CONFIG_BLK_DEV_PDC202XX=y
CONFIG_PDC202XX_BURST=y
CONFIG_PDC202XX_FORCE=y
# CONFIG_BLK_DEV_RZ1000 is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
# CONFIG_IDE_CHIPSETS is not set
CONFIG_IDEDMA_AUTO=y
CONFIG_IDEDMA_IVB=y
# CONFIG_DMA_NONPCI is not set
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_BLK_DEV_ATARAID=m
CONFIG_BLK_DEV_ATARAID_PDC=m
# CONFIG_BLK_DEV_ATARAID_HPT is not set
ClawGhoul
09-16-2002, 06:08 PM
Mmmh... I have these settings:
(I deleted entries entries with no difference to your settings):
CONFIG_IDEDISK_STROKE=y
CONFIG_BLK_DEV_IDECS=m
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDETAPE=m
CONFIG_BLK_DEV_IDEFLOPPY=y
TASK_IOCTL and TASK_FILE_IO entries don't exist
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_CMD640_ENHANCED=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_OFFBOARD=y
CONFIG_IDEDMA_ONLYDISK=y
# CONFIG_IDEDMA_PCI_WIP is not set
# CONFIG_BLK_DEV_IDEDMA_TIMEOUT is not set
# CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_AEC62XX=y
CONFIG_AEC62XX_TUNING=y
CONFIG_BLK_DEV_ALI15X3=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_CMD680=y
CONFIG_BLK_DEV_CY82C693=y
CONFIG_BLK_DEV_CS5530=y
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_PIIX_TUNING=y
CONFIG_BLK_DEV_NS87415=y
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_PDC_ADMA is not set
CONFIG_BLK_DEV_PDC202XX=y
CONFIG_PDC202XX_BURST=y
CONFIG_PDC202XX_FORCE=y
CONFIG_BLK_DEV_SVWKS=y
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDE_CHIPSETS=y
CONFIG_BLK_DEV_4DRIVES=y
CONFIG_BLK_DEV_ALI14XX=y
CONFIG_BLK_DEV_DTC2278=y
CONFIG_BLK_DEV_HT6560B=y
# CONFIG_BLK_DEV_PDC4030 is not set
CONFIG_BLK_DEV_QD65XX=y
CONFIG_BLK_DEV_UMC8672=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_BLK_DEV_ATARAID_HPT=m
Well... there are some differences :)
Ok, I'll try to reconfigure the kernel.
I hope this works :)
mdwatts
09-17-2002, 04:54 AM
My kernel config is set for the specific hardware I have.
ClawGhoul
09-19-2002, 03:10 PM
OK :)
My harddisks run now at full speed :-)
I don't know whether the upgrate to 2.5.36 or a certain combination of kernel-options (I tried many ;-)) did the job but I am happy now :)
BIG THANKS =)
NuclearKitten
09-19-2002, 11:42 PM
does hdparm need to be run at each startup or is it the type of thing that you run once and it's set?
saithan
09-20-2002, 12:06 AM
does hdparm need to be run at each startup or is it the type of thing that you run once and it's set?
unless you place the needed hdparm command in the proper startup script (/etc/rc.d/rc.local for redhat), the command will have to set each time you booth the machine.
on my laptop I needed dma to allow proper dvd playback. so I added the command:
/sbin/hdparm -d 1 hdc
to the end of the rc.local file.
that way the dma will be enabled after bootup.
NuclearKitten
09-20-2002, 10:01 AM
Originally posted by saithan
unless you place the needed hdparm command in the proper startup script (/etc/rc.d/rc.local for redhat), the command will have to set each time you booth the machine.
on my laptop I needed dma to allow proper dvd playback. so I added the command:
/sbin/hdparm -d 1 hdc
to the end of the rc.local file.
that way the dma will be enabled after bootup.
What about for Slackware?
mdwatts
09-20-2002, 04:23 PM
Try the Slackware documentation to find out what startup files are used during the boot process.
ClawGhoul
09-21-2002, 08:38 AM
Well...
I fear that 2.4 does not support my chipset&UDMA transfer mode -_-
Damn... and pppoe does not run with 2.5 as someone said to me :[
2.4 : internet, no udma transfer
2.5 : no internet, udma transfer
well...
any suggestions? ^_^
While you think about that I'll re-search the suse faq and wait for SuSE 8.1 :B
ClawGhoul
09-22-2002, 08:45 AM
My Chipset 82801DB (ICH4) / Mainboard i845 is NOT supported by Kernel version 2.4.
AFAIK it IS supported by 2.5.