#include <asm/delay.h>
#include <asm/timex.h>
#include <asm/io.h>
#include <variant/hardware.h>

#define LOOPS 10
void platform_calibrate_ccount(void)
{
	u32 uninitialized_var(a);
	u32 uninitialized_var(u);
	u32 b;
	u32 tstamp = S6_REG_GREG1 + S6_GREG1_GLOBAL_TIMER;
	int i = LOOPS+1;
	do {
		u32 t = u;
		asm volatile(
		"1:	l32i %0, %2, 0 ;"
		"	beq %0, %1, 1b ;"
		: "=&a"(u) : "a"(t), "a"(tstamp));
		b = xtensa_get_ccount();
		if (i == LOOPS)
			a = b;
	} while (--i >= 0);
	b -= a;
	nsec_per_ccount = (LOOPS * 10000) / b;
	ccount_per_jiffy = b * (100000UL / (LOOPS * HZ));
}
