Caveat: I do Not know a lot about the ARM processor hardware.
However, in general I would not expect any multi-user capable processor
hardware to allow code running in "user" mode to execute instructions
that play with interrupts. You would have to be in some sort of
"supervisor" mode, i.e. in the kernel.
But I'm willing to be contradicted and put right.
On Sun, 22 Oct 2006, Don W. Carr wrote:
> On a stock kernel, I don't think it would be possible to disable interrupts
> from user mode, but, with this kernel, it is set up to let you do a lot
> more, like mmap() even. What you need to do is look up the assembly
> instruction on arm for disabling interrupts, and then use in-line assembly
> from your C code.
>
> However, you should only disable interrupts for a few microseconds
> typically, and I am not sure what it would do disabling them for seconds. It
> would obviously cause the kernel to miss clock ticks and the clock would be
> off, but not sure what else it would do.
>
> I also need to disable interrupts as well for an application where I want to
> read two counters, one an internal free running counter, and another, and
> XDIO counter counting pulses on an external signal, so I can measure exact
> time between external counter readings. In my case however, it would be
> less than a microsecond or two that interrupts are disabled.
>
> Well, if anybody has the assembly code to disable (and re-enable)
> interrupts, let us know.
>
>
>
>
> On 10/22/06, mikedupuis2000 < > wrote:
> >
> > nope...not joking...I am that stupid..teehee.
> >
> > How do I write I kernal/module driver?
> >
> > I designed a A/D card and I need to acquire data at about 1MByte/s. It
> > works perfectly up to 8 or 9 seconds but I need 25 seconds worth of
> > data. I have a 4K FIFO but it looks like I would need at least a 32K
> > FIFO...maybe more.
> >
> > Are there other processes I can stop?
> >
> > Thanks.
> >
> > Mike
> >
> > --- In <ts-7000%40yahoogroups.com>, Jim Jackson
> > <> wrote:
> > >
> > >
> > >
> > >
> > > On Sun, 22 Oct 2006, Mike Dupuis wrote:
> > >
> > > > I am using a TS-7200. How do I disable the interrupts so my code does
> > > > not get interrupted. I am using GCC on Debian Linux. Usually I use
> > > > commands like "cli" and "sti" but these are not recognized when I
> > try to
> > > > compile my program.
> > >
> > > :-) you are joking aren't you?
> > >
> > > You can only do that sort of thing in the kernel.
> > > If your code really cannot be interrupted, then you should be writing a
> > > kernel module/driver for your specific purpose.
> > > Just out of curiosity, what is it you don't want interrupting?
> > >
> > > Jim
> > >
> >
> >
> >
>
>
>
> --
> Dr. Don W. Carr
> J. G. Montenegro 2258
> Guadalajara, Mexico
> +52-333-630-0704
> +52-333-836-4500 ext 2930
>
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/
|