Re: Help, help, help, more help, extra help, HELP! how to turn off IDE DMA...



If it doesn't boot, does that mean that the bootloader is never jumping to
Windows CE at all, or Windows CE doesn't start, failing somewhere after it's
called by the bootloader?

If it's failing in the bootloader, I'd guess that the size of the card is
much larger than what you used to work with or find on the open market and
the bootloader was written depending on those assumptions. It might assume,
for example, that the FAT is smaller than 64K, which is unlikely with a
large modern card, unless it was formatted with very large clusters.

Paul T.

"Toby Douglass" <toby.douglass@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message news:MPG.214b0a0148a0188b989755@xxxxxxxxxxxxxxxxxxxxxxxxxx
Hi, everyone.

I've been working on a Windows CE problem here at work for the last two
weeks and I'm reaching the point where I may be taken away for induced
insanity.

Your assistance in avoiding this fate is much appreciated!

We have a legacy very small form factor (3.5" hard disk size in fact)
PCB which is an x86 PC. It boots from a CF card which is plugged into a
socket on the end of an IDE channel. It uses a Geode, so it's got the
CS5530 companion chip, which has the DMA issues (16 byte transfers,
locks up on non-aligned/different size requests, etc). The unit has
pretty much everything else - serial, USB, 64mb RAM, floppy drive, PS/2
keyboard, etc.

We've been using it with Windows CE 2.0 since it was originally
developed, many years ago.

What we've found is that with modern flash cards, CE doesn't boot. We
had two old flash cards, which still work.

They gave this problem to me - "Toby, we think you have the right
combination of intelligence and pedantry to solve this".

Gee, thanks.

So, after a week or so of intelligent and pedantic investigation, I
pretty much came to the conclusion that CE was trying to use DMA and the
controller was locking up; for the difference between the old cards and
the new cards is that the new cards support DMA and the old cards do
not.

(Also, I can boot a mini-knoppix off of a CF and it works fine - because
it runs in PIO mode. I suspect it is detecting the CS5530 and knows not
to use DMA. Unfortunately, porting to Linux isn't an option =-)

So, from all the stuff I've read in Usenet and the Web, I conclude what
I want to do is turn IDE DMA off in the registry.

(Worryingly, the BIOS IDE settings for turning DMA off don't have an
effect; this is the one piece of evidence which contracts my conclusion.
I'll be speaking to the board manufacturer this morning - they're in
Taiwan, fortunately, we have a Taiwanese native for our engineering
manager!)

I've read a number of posts which have registry snippets from CE (I'm
using 6.0) and they show people fiddling with the DMA and Settings
fields.

The problem I have is that I'm just not seeing those registry paths in
my platform.reg. I've added the ATAPI driver (and its entire subtree)
and...there's simply nothing there, under "builtin", for IDE. Nothing.
Zip. Nada. Zilch.

I can see in platform.reg that genericide.reg (or whichever IDE registry
file is appropriate) is being included. I can modify those files - but
then I used FileMon to log all file accesses during a build and NONE of
those files were touched. So modifying them does nothing.

I noticed people in posts talking about a GeodeIDE registry entry and a
Geode CEPC with CE 5.0 (five point zero), so in the end I uninstalled
6.0 and put 5.0 in and sure enough, there's a Geode CEPC. Using that
hasn't worked either - but then that environment ALSO doesn't show the
registry paths I see people talking about in posts.

So, I'm just CONFUSED.

How is CE (lets talk about six point zero here) know what registry
settings to use for IDE? is it that my build isn't including IDE and is
freezing up because of that? but if so, why is it not including IDE
when I've selected the ATAPI driver? furthermore, given there seems to
be a Geode specific IDE driver configuration (geodeide.reg, which seems
to be configured correctly), surely that should actually *work* with the
CS5530 chip? and if so, why isn't Windows detecting that at boot time
and working?

Please, please, please help!



.



Relevant Pages

  • Re: Remove boot record from drive?
    ... So, questions is, how can I 'remove' Windows from the old drive, or just ... The best solution would be to set the bios to boot first from SATA rather ... than IDE ... There is no BIOS option to boot from SATA, only CDROM, HDD etc.. ...
    (microsoft.public.windowsxp.hardware)
  • Re: Hard Drive Hell :-(
    ... Is the seconday hard drive on the secondary IDE ribbon or the primary? ... Does the BIOS detect the second drive as a slave drive or a master? ... Have you checked to make sure the BIOS is set to boot from the SATA device ... Either windows will not boot it gets to the windows xp screen and then ...
    (microsoft.public.windowsxp.hardware)
  • Re: Booting from floppy or CD
    ... I have since discovered the problem is because of the settings for IDE ... access to the SATA drives. ... Legacy Windows systems.The problem is that the system will not boot from ...
    (microsoft.public.windowsxp.general)
  • Dual boot problems FC4 64bits
    ... totally dedicated for FC instalation... ... Actually systems boots first windows, directely through 2nd HD. ... I've tried to confire lilo or grub (MBR on 1sr IDE HD) to dual boot ...
    (Fedora)
  • FC4 Sata Boot Problems
    ... Actually systems boots first windows, directely through 2nd HD. ... I've tried to confire lilo or grub (MBR on 1sr IDE HD) to dual boot ... linux boot is running properly, ...
    (Fedora)