Hi --
--- In "Anouk Ahamitet" <> wrote:
>
>
> --- In "charliem_1216" <charliem_1216@>
> wrote:
>
> >... Better to fix your A/D code so it is insensitive to system load.
>
> We're working on it, but since ts-linux doesn't have very accurate
> timers (minimum usleep() appears to be almost 10 MILLISECONDS and the
> min nanosleep() is about 3.5 MILLISECONDS) we're stuck doing a busy wait
> on the built-in microsecond timer on the TS-7800 in order to get
> accurate (and fast) enough timing on our A/D operations (note: we're
> using a 3rd party A/D, not one of Technologic's because the TS A/Ds
> don't support the input voltage ranges we require and/or don't have
> enough resolution).
>
> We wish that Technologic had altered their custom kernel to use their
> high resolution (microsecond) timer on the TS-7800 or at least offered a
> customer HRT device that used it to offer precision delays. As it is,
> we either need to add learning to write linux device drivers to our
> schedule, or stick with the busy waits while reading the current
There is an adc driver in the files section you may be able to adapt,
from Phil McCarley (adc-0.0.2):
* it's written for the MAX197 chip as (optionally) supplied on the
TS-7250, so you would have to adapt to your A/D device. Should be
fairly easy, as you've already coded for your device in userland.
* it uses an available timer of the ep9302 chip, so you would have to
adapt it to a timer on the marvell chip. Sounds like you are using an
available timer now in userland, so this sounds feasible.
* It's written for kernel 2.4, but I have a 2.6 port if you want it.
It works quite well on my TS-7250.
Regards, ........ Charlie
> microsecond from their timer that we are doing now. If the timer
> could've been used as a precision count-down timer that generated a
> signal (or interrupt or whatever) we use it that way to keep our app
> from spending 99.9% of its time from spinning while reading the next
> microsecond. Maybe the 7800 Mark II will have that... (I can dream,
> right?)
>
> > Of course, stopping un-needed process like you are doing is always
> > good in any case.
>
> Agreed. [:)]
>
> > What kernel version are you using?
>
> From the login prompt, /etc/issue, and /proc/version (respectively):
>
> Debian GNU/Linux 3.1 ts7800
>
> Debian GNU/Linux 3.1 \n \l
>
> Linux version 2.6.21-ts (gcc version 3.4.4
> (release) (CodeSourcery ARM 2005q3-2)) #4 PREEMPT Tue Jun 10 17:13:00
> MST 2008
>
------------------------------------
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|