Jesper Nilsson 60dbd66331 CRIS: GENERIC_TIME fixes
GENERIC_TIME was not functional for CRIS, giving random backward
time jumps.

For CRISv32 implement a new clocksource using the free running counter
and ditch the arch_gettimeoffset.

The random time jumps still existed, but turned out to be the write_seqlock
which was missing around our do_timer() call.

So switch over to GENERIC_TIME using the clocksource for CRISv32.

CRISv10 doesn't have the free running counter needed for the
clocksource trick, but we can still use GENERIC_TIME with
arch_gettimeoffset.

Unfortunately, there were problems in using the prescaler register
to timer0 for the gettimeoffset calculation, so it is now ignored,
making our resolution worse by the tune of 40usec (0.4%) worst case.

At the same time, clean up some formatting and use NSEC_PER_SEC
instead of 1000000000.

Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
2010-08-04 12:58:55 +02:00
..
2010-03-12 15:52:32 -08:00
2009-12-12 13:08:15 +01:00
2010-05-25 17:48:14 +02:00
2009-11-03 14:11:53 +01:00
2007-11-14 18:45:46 -08:00
2010-05-25 17:48:14 +02:00
2010-08-04 12:58:55 +02:00