I'm sure many of us have had windows be a pain in the ass and auto-disable DMA and use the hella slow pio transfer method and lock the user from making the change. I've managed to fix problems on my own systemby either A) screwing around with the registry B)deleted an IDE channel in device manager and let windows reinstall it. C) physically remove the drive from the cable, and have windows redetect it. There are problems with these methods though:
A) Can't activate dma for a drive:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Class \ {4D36E96A-E325-11CE-BFC1-08002BE10318}
Within this key you will find several subkeys. Most likely you will see the following:
0000 (for the IDE controller)
0001 (for the Primary IDE channel)
0002 (for the Secondary IDE channel)
Each of these subkeys has a named valued called "DriverDesc" that will make it clear to you to which component they correspond. Open the subkey corresponding to the channel on which your troublesome drive is located. Then, if the troublesome drive is the master, delete the "MasterIdDataChecksum" named value. Or, if the troublesome drive is the slave, delete the "SlaveIdDataChecksum" named value. Reboot
But this method doesn't always work
B) Dangerous. If windows doesn't detect the ide channel on reboot and you don't have or don't know where to get the driver, you're screwed
C) pain in the ass, and if you live far away from a computer illiterate friend you can't help them
Well I want to help a friend and method A didn't work, method B I'm not willing to do on someone else's machine, and method C I don't want to do because I may be moving away from this friend this year and would prefer a permanent solution.
So here's the question: how do you reenable DMA without hicups and force it to stay enabled?
A) Can't activate dma for a drive:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Class \ {4D36E96A-E325-11CE-BFC1-08002BE10318}
Within this key you will find several subkeys. Most likely you will see the following:
0000 (for the IDE controller)
0001 (for the Primary IDE channel)
0002 (for the Secondary IDE channel)
Each of these subkeys has a named valued called "DriverDesc" that will make it clear to you to which component they correspond. Open the subkey corresponding to the channel on which your troublesome drive is located. Then, if the troublesome drive is the master, delete the "MasterIdDataChecksum" named value. Or, if the troublesome drive is the slave, delete the "SlaveIdDataChecksum" named value. Reboot
But this method doesn't always work
B) Dangerous. If windows doesn't detect the ide channel on reboot and you don't have or don't know where to get the driver, you're screwed
C) pain in the ass, and if you live far away from a computer illiterate friend you can't help them
Well I want to help a friend and method A didn't work, method B I'm not willing to do on someone else's machine, and method C I don't want to do because I may be moving away from this friend this year and would prefer a permanent solution.
So here's the question: how do you reenable DMA without hicups and force it to stay enabled?