From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28924 invoked by alias); 26 Jun 2005 17:11:23 -0000 Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Received: (qmail 28909 invoked by uid 22791); 26 Jun 2005 17:11:19 -0000 Received: from asav1.lyse.net (HELO asav1.lyse.net) (213.167.96.68) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Sun, 26 Jun 2005 17:11:19 +0000 Received: from asav1.lyse.net (asav1.lyse.net [127.0.0.1]) by localhost.lyse.net (Postfix) with ESMTP id 5AF21902C3; Sun, 26 Jun 2005 19:06:14 +0200 (CEST) Received: from mail1.lyse.net (unknown [192.168.42.2])by asav1.lyse.net (Postfix) with ESMTPid 49111900AE; Sun, 26 Jun 2005 19:06:14 +0200 (CEST) Received: from [84.234.138.230] (helo=[192.168.0.193])by mail1.lyse.net with smtp (Exim 4.34)id 1Dmae5-0003VH-Gi; Sun, 26 Jun 2005 19:10:13 +0200 From: =?ISO-8859-1?Q?=D8yvind?= Harboe To: Bart Veer Cc: ecos-discuss@sources.redhat.com In-Reply-To: <20050626142647.175E565C0A4@smtp.ecoscentric.com> References: <1119425206.20805.21.camel@localhost.localdomain> <20050626142647.175E565C0A4@smtp.ecoscentric.com> Content-Type: text/plain; charset=ISO-8859-1 Date: Sun, 26 Jun 2005 17:11:00 -0000 Message-Id: <1119805895.10732.13.camel@localhost.localdomain> Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-imss-version: 2.028 X-imss-result: Passed X-imss-scores: Clean:80.98458 C:2 M:3 S:5 R:5 X-imss-settings: Baseline:2 C:1 M:1 S:1 R:1 (0.1500 0.1500) Subject: Re: [ECOS] HAL_DELAY_US() default implementation X-SW-Source: 2005-06/txt/msg00260.txt.bz2 Getting rid of calibration is not easy. Take the AT91 HAL variants specifically. There are 5'ish different sub-hals * 3 types of memory(flash + internal/external RAM). Thats 15'ish combinations. How about this approach? - No automatic calibration - Add a machine code busy loop/CPU type. Machine code is used to make the busy loop independent of compiler optimisations - Some(many?) HAL's have a HAL_DELAY_US() that works out of the box according to the newest HAL_DELAY_US() specification and=20 hence won't need any calibration. - If the user provides a CDL parameter which calibrates the busy loop he gets HAL_DELAY_US(), otherwise he doesn't. It is better with a compile time error than a broken HAL_DELAY_US(). - If a HAL knows that it can accuratly estimate this parameter in all cases, it can provide a default value and HAL_DELAY_US() works out of the box. --=20 =D8yvind Harboe http://www.zylin.com -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss