Skip to contentSkip to conversation

NatSemi SC1200 timer problems

DISCUSSION Christer Weinigel 2 participants 2 messages Mar 21, 2002

lore
Share & tools
lore
#0 lore raw

Hi,

I'm seeing some very strange problems with a NatSemi SC1200 based system. The problems is that the code to read the PIT counter sometimes returns the bytes swapped:

    outb(0, 0x43);
    count = inb(0x40);
    count |= inb(0x40) << 8;

This sometimes gives 0x822e instead of 0x2e82 that is reasonable. I first thought this was a bug in another driver, but sometimes the counter read from the timer would be 0xd5dd and that value should be impossible to get, so I'm starting to suspect the hardware.

Besides this, I have a report that the TSC sometimes jumps ahead, so that the reported time of day will be about 7 seconds more than it should be.

Does any of this sound familar?

Hiroshi MIURA <[email protected]> has a patch for a Cyrix CX5520 i8254 timer bug on his web page, but I have been unable to find any information on the net on what the bug actually is. Could you tell me a bit more about it? I'm trying to figure out if it has reappeared in the SC1200 or if this is a completely new problem.

Alan, i think did a patch to disable the TSC on the MediaGX and I have seen posts by you where you say about the MediaGX that "It reports a TSC but the TSC is unreliable at least in certain strange circumstances". Do you refer to the TSC being stopped or turned off on halt or suspend or is it a completely different problem? Could you please tell me what kind of problems you saw?

Regards,
Christer (pulling his hair in confusion)

Signature · 1 line
"Just how much can I get away with and still go to heaven?"
#1 lore raw
Quoted 6 lines

Alan, i think did a patch to disable the TSC on the MediaGX and I have seen posts by you where you say about the MediaGX that "It reports a TSC but the TSC is unreliable at least in certain strange circumstances". Do you refer to the TSC being stopped or turned off on halt or suspend or is it a completely different problem? Could you please tell me what kind of problems you saw?

On the 5510/5520 bugs in the timers prevent use getting the TSC/delay calibrated. This works ok on the 5530. I also saw some really bizarre goings on with the TSC on some devices like joystick.

The older kernels kill TSC on any MediaGX (but will miss newer geodes due to the cpuid change). Current one will kill tsc on 5510/5520 and knows the new geode idents