DMA with FC3 on a GA-8TRS350MT motherboard with a custom 2.6.12 kernel - FC3 DVD playback
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.
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.
By rylan76 at 2005-07-05 06:12
Knowledge Needed: You must know how to compile, install, and start a new kernel under Fedora Core 3 - take a look at http://www.mjmwired.net/resources/mjm-kernel-fc3.shtml for info on how to do this under FC3. I give some steps from that howto here, but for a more info or interest sake take a look at the url above.
Software Needed: An installed and working Fedora Core 3 setup with the stock standard 2.6.9-1.667 kernel (do a uname -r in a terminal to check this).
A 2.6.12 kernel source downloaded from kernel.org, but not yet compiled or installed.
Situation:
You have a GA-8TRS30MT motherboard from Gigabyte, you are running Fedora Core 3 and you want to enable DMA. You can't play back DVDs using Xine or Mplayer because it is too choppy and slow, with stuttering sound, because DMA is not working. Doing /sbin/hdparm -d1 -c1 /dev/hdc does not work for setting DMA, and a HDIO_SET_DMA error is reported.
You have a graphics card from NVidia (I have an FX5900 card - A Winfast A350 XT TDH with 128MB of RAM). This is OPTIONAL! If you do not have an NVidia card, merely skip the section below that refers to reinstalling the NVidia driver after the new kernel is running.
Requirements: (besides an installed and working Fedora Core 3 setup)
- A 2.6.9 kernel source tree, installed to /usr/src/linux
Howto:
You need to be in Xwindows, in Fedora Core 3.
1. Unpack the 2.6.12 kernel source archive (get it from kernel.org) and rename the directory so that eventually you have /usr/src/linux which contains the 2.6.12 kernel source. See http://www.mjmwired.net/resources/mjm-kernel-fc3.shtml for detailed info.
2. Change to that directory, and do, as root:
make clean
make mrproper
make oldconfig
3. You should get a list scrolling, and then lines will start appearing with a [NEW] at the end. Either press ? and ENTER to see what an option is about, press Y or y (read the line to see which to use - case is IMPORTANT!) and enter to activate an option, M or m if you are unsure, N or n if you definitely don't want one of the new options.
4. Keep on answering the [NEW] lines.
5. Eventually (it will take a while - there are MANY options) you will get back to the shell prompt. Now do
make xconfig
This will make and start the X-Windows based kernel configuration utility. Configure any further kernel options you might want.
6. When done, save the kernel configuration. Now comes the juicy part.
7. Go back in a terminal into the /usr/source/linux directory. Using VI or your editor of choice, open the .config file in this directory.
8. Search for a line with the string IXP in it.
9. Make sure this line is not commented (i. e. has no # in front of it) AND that it has =y at the end. Also make sure that all lines with the string DMA have a =y at the end, EXCEPT the one about disk-only DMA. Obviously, remove the "is not set" words and just put a =y, like the lines above and below it:
CONFIG_BLK_DEV_ATIIXP=y
# CONFIG_IDEDMA_ONLYDISK is not set <--- make sure this line looks like this
10. Save the .config file.
11. Run make all in the /usr/src/linux directory.
12. make modules_install
13. make install
This will automatically update your grub.conf so that the new kernel is available to be booted.
14. Reboot the machine - select the new kernel.
15. It should boot just fine. Reinstall the NVidia drivers (if applicable) by doing
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.