[U-Boot] U-Boot Timer Qualification

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Wed Apr 22 22:49:36 CEST 2009


Hi all,

	For all Timer modification a minimun of qualification is mandatory
	as it will impact a lots of part of u-boot.

	So for this purpose I'll propose you to use one of this two approche
	to report the precition of your timer or update

	1) Clock generation Mesurement

	Tools needed: Scope or Frequency metter

	In this approch you will use a gpio to generate a 1Khz and at 1Mhz or
	it's maximun generated clock frequency

	before generate one of this clock you will need to known your GPIO and
	system latency. For this purpose you will generate a clock at your
	maximum speed as this algo

	set_gpio_as_output(gpio);

	while(1) {
		set_gpio_value(gpio, 1);
		set_gpio_value(gpio, 0);
	}

	after measure the clock (hg_clock) you will it's latency

	now you will try to generate the 1Khz clock
	to known the precision of your timer at 1ms

	while(1) {
		set_gpio_value(gpio, 1);
		udelay(1000);
		set_gpio_value(gpio, 0);
	}

	now measure the frequency of the clock

	the last step is now calculate your precision

	hg_clock = measured max speed generated clock

	ms_clock = measured 1Khz generated clock

	p = (1 / 1000 - (1 / hg_clock + 1 / ms_clock)) * 1000

	depending on max generated clock you can known your precision
	as 1us or less

	2) Watch mesurement

	measured with stop-watch on 100s delay

	x = measured time

	p = (100 - x) / 100


Best Regards,
J.



More information about the U-Boot mailing list