Slackware This Forum is for the discussion of Slackware Linux.
|
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
08-13-2006, 03:06 AM
|
#1
|
Senior Member
Registered: Jan 2005
Distribution: Slackware, BackTrack, Windows XP
Posts: 1,020
Rep:
|
Enabling DMA in 10.2 default kernel
Hello all,
few days back i found DMA issue in my 10.0. As i had to upgrade to 10.2, so without finding the solution for that i installed 10.2.
But still facing the DMA error reports during boot up.
Quote:
root@bond:/boot# hdparm -i /dev/hda
/dev/hda:
Model=ST340014A, FwRev=8.01, SerialNo=4MW09917
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=17475/15/63, CurSects=16513875, LBA=yes, LBAsects=78165360
IORDY=on/off, tPIO={min:240,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 WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2:
* signifies the current active mode
|
Quote:
root@bond:/boot# hdparm -d1 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
using_dma = 1 (on)
|
Quote:
root@bond:/boot# hdparm -i /dev/hda
/dev/hda:
Model=ST340014A, FwRev=8.01, SerialNo=4MW09917
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=17475/15/63, CurSects=16513875, LBA=yes, LBAsects=78165360
IORDY=on/off, tPIO={min:240,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 WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2:
* signifies the current active mode
|
Still * is pointing no where....???
Quote:
root@bond:/boot# /sbin/lspci | grep -i ide
00:1f.1 IDE interface: Intel Corporation 82801AA IDE (rev 02)
|
Quote:
root@bond:/boot# cat config | grep DMA
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_PCI_WIP is not set
CONFIG_BLK_DEV_ADMA100=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_DMA_NONPCI is not set
CONFIG_SCSI_EATA_DMA=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
CONFIG_DMASCC=m
CONFIG_SOUND_ALI5455_CODECSPDIFOUT_CODECINDEPENDENTDMA=y
CONFIG_SOUND_ALI5455_CONTROLLERSPDIFOUT_CONTROLLERINDEPENDENTDMA=y
# CONFIG_SOUND_DMAP is not set
|
i haven't compiled the kernel. Its the default one 2.4.31.
What shoud i do now ??? Actually the picture is still not clear to me that whats going on.
regards
|
|
|
08-13-2006, 03:10 AM
|
#2
|
Senior Member
Registered: May 2004
Distribution: Slackware15.0 64-Bit Desktop, Debian 11 non-free Toshiba Satellite Notebook
Posts: 4,272
|
Thats a strange issue, usually you should not have to recompile your stock kernel for DMA, it should already be enabled by DEFAULT.
Edit
I just missed your attempt at enabling dma already, thats my own fault sorry....now I am racking my own brain as to what could be the issue. Still, you should not have to recompile your kernel, it probably is something with your bios settings maybe? 
Last edited by Jeebizz; 08-13-2006 at 03:13 AM.
|
|
|
08-13-2006, 03:18 AM
|
#3
|
Senior Member
Registered: Jan 2005
Distribution: Slackware, BackTrack, Windows XP
Posts: 1,020
Original Poster
Rep:
|
Quote:
Originally Posted by Jeebizz
Thats a strange issue, usually you should not have to recompile your stock kernel for DMA, it should already be enabled by DEFAULT.
Edit
I just missed your attempt at enabling dma already, thats my own fault sorry....now I am racking my own brain as to what could be the issue. Still, you should not have to recompile your kernel, it probably is something with your bios settings maybe? 
|
ya, it seems to be something with bios. B'coz my XP too is running slow.
I tried looking for DMA in bios but didn't find as i haven't faced such problem earlier.
Let me check it again.
regards
|
|
|
08-13-2006, 03:41 AM
|
#4
|
Senior Member
Registered: Jan 2005
Distribution: Slackware, BackTrack, Windows XP
Posts: 1,020
Original Poster
Rep:
|
hi,
i just checked the BIOS settings. There i found the following:
DMA Channel 0
DMA Channel 1
DMA Channel 3
DMA Channel 5
DMA Channel 6
DMA Channel 7
And in front of each line "PnP" is written, which could be replaced with ISA/EISA.
Can anyone please explain what all these indicates and is here any problem ???
regards
|
|
|
08-13-2006, 10:37 AM
|
#5
|
Member
Registered: Jun 2006
Posts: 94
Rep:
|
Those are different than having to do with your hard drives. What you're looking at is to with PnP. I'll explain what that is and why there are those settings. A bit of history first.
Way back before Plug and Play for the PC you used to have set what resources an expansion card used by setting jumpers on them. Those were the old days of legacy ISA cards.
Take for example Sound Blaster 16 sound cards. The usual configuration for them was to use a 220 Base Memory address, IRQ 5, high DMA 5 and low DMA 1. This was determined by the jumper settings on the SB16 card. They came by default with the above settings. Sometimes you would have to change those jumpers settings if you had another expansion card that required the any of those resources. Say you had another card that required IRQ 5. You would then set the SB16 to use IRQ7 by changing what jumpers you had set for setting it's IRQ, or you would change the other cards jumpers. The point was that you couldn't have two pieces of hardware using the same IRQ or there would be conflict if you tried to use them at the same time.
Later on in time through the course of the PC's development came the early Plug and Play cards that used the ISA bus. Then even later on came PCI cards (which are plug and play also). The reason you have those setting, that you're talking about, was so that you could reserve those resources to prevent a conflict in a case where you had a mixture of PnP and non-PnP cards. So for instance, say you had an old legacy non-PnP SB16 in your system along with a bunch of other PnP cards. You would reserve those settings (eg IRQ 5, Base 220, DMA 1, and DMA 5) in the BIOS where you are looking at. That way the BIOS know not to assign those to your PnP cards and possibly create a conflict.
Earlier BIOS didn't have those settings that you're talking about unfortunately. It wasn't uncommon to get migrains when it came you had a mixture of PnP and non-PnP cards in the same system back then and didn't have a BIOS with such handy settings. That's how it Plug Play adopted the nick name Plug and Pray. Because of the configuration hell you had to go through back then.
You're probably now wondering what a person did if they had the scenario where they had a mixture of PnP and non-PnP cards but had a BIOS that didn't have setting to reserves resources. That's where ICU/ICM came in. Stands for Intel Configuration Utility/Intel Configuration Manager (or was it's ISA configuration. I could swear mine was name the former back then). That a was a nice little program that used was very terse and confusing and very poorly documented. Basically you would load it up and create hardware profiles to store setting for reserving the configuration resources. Then after you saved it, it would keep the settings in file that would be read at boot time as an extension to the BIOS.
I believe with Linux that isapnptools is to do the equivilent of what ICU/ICM used to be used for. Except, I'm sure isapnptools is much more flexible and featureful.
Moral of the story is that if you're using strictly PnP cards only, or stickly non-PnP cards, you shouldn't need to worry about those settings. The setting "PnP" means that the BIOS can go ahead and allocate them to PnP cards. In otherwords you want them all PnP in most cases if all of your cards are PnP cards. Most systems don't have non-PnP cards. Non-PnP cards pretty much died off around 10 years ago.
|
|
|
08-13-2006, 10:37 AM
|
#6
|
Senior Member
Registered: Jan 2005
Distribution: Slackware, BackTrack, Windows XP
Posts: 1,020
Original Poster
Rep:
|
any idea to get through it?
edit: sorry i posted it before checking the last post
Last edited by b0nd; 08-13-2006 at 10:40 AM.
|
|
|
08-13-2006, 01:00 PM
|
#7
|
Senior Member
Registered: Jan 2005
Distribution: Slackware, BackTrack, Windows XP
Posts: 1,020
Original Poster
Rep:
|
Thanks PingFloyd for explaing the things and taking pain in writing so much.
Here is the content in /var/log/messages during last boot
Quote:
root@bond:~# cat /var/log/messages | grep DMA
Aug 13 22:21:50 bond kernel: ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda: DMA, hdb: DMA
Aug 13 22:21:50 bond kernel: ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc: pio, hdd: pio
Aug 13 22:21:50 bond kernel: hda: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=4865/255/63, UDMA(66)
Aug 13 22:21:50 bond kernel: hdb: ATAPI 52X CD-ROM drive, 128kB Cache, DMA
Aug 13 22:21:50 bond kernel: hdb: DMA disabled
root@bond:~#
|
regards
Last edited by b0nd; 08-13-2006 at 01:04 PM.
|
|
|
08-13-2006, 04:39 PM
|
#8
|
Senior Member
Registered: Oct 2005
Distribution: Slackware 14.1
Posts: 3,482
|
One clue is here:
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
. . .
* signifies the current active mode
Notice that none of the modes are active. On my systems the asterisk appears next to UDMA2:
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
. . .
* signifies the current active mode
Here is the spec sheet for the drive you are using:
ST340014A
I use Seagate drives ST340016A and the instructions are similar. The instructions say:
Set CMOS hard drive setup to Auto-Detect with LBA mode enabled.
In my ASUS motherboards BIOS setup, I select Standard CMOS Setup and set the drive types to Auto.
In the BIOS I next select the Chipset Features Setup option. In that section I set the following to Auto:
IDE Ultra DMA Mode
IDE0 Master DMA/PIO Mode
IDE0 Slave DMA/PIO Mode
IDE1 Master DMA/PIO Mode
IDE1 Slave DMA/PIO Mode
In Slackware I do not set hdparm to configure the drive for DMA.
There is a utility for Windows NT4 called dmacheck.exe to ensure Windows is using DMA. As far as I know, you can use this utility in XP to verify the DMA status. Essentially the utility sets some registry settings. I am not familiar with XP as I am with NT4, so ask around if there are other XP built-in tools to configure DMA.
I hope this helps.
|
|
|
All times are GMT -5. The time now is 08:35 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|