Re: Will OEMinterruptHandler be preempted by a higher priority IRQ?



For completeness, it should be noted that this is ARM specific. On ARM, the
ISR is entered with interrupts disasbled (must explicitly re-enable to allow
nesting as Steve points out), but on MIPS, SHx, and x86, an OEM can
configure the kernel to enter the ISR with some higher priority interrupts
enabled (under OEM control). Of course, caution must still be exercised to
ensure that the ISR code is re-entrant safe.



John Eldridge
Microsoft Corporation
KITL First. Ask questions later!
http://blogs.msdn.com/kitlfirst

Disclaimer: This posting is provided "as is" with no warranties, and
confers no rights.

~~~~~~~~~~~~~~~


"Dean Ramsier" <ramsiernospam@xxxxxxxxxx> wrote in message
news:eQPXaGeZFHA.1040@xxxxxxxxxxxxxxxxxxxxxxx
> Correct
>
> --
> Dean Ramsier - eMVP
> Vibren Technologies
> http://www.vibren.com/Products/schema_bsp.htm
>
>
> "news.microsoft.com" <li.ning@xxxxxxxxxxxxxxxx> wrote in message
> news:%23ywy9LaZFHA.3272@xxxxxxxxxxxxxxxxxxxxxxx
>> Then you mean that by default in OEMInterruptHander(), interrupt has been
>> disabled by the kernel, so it will not be re-enter?
>>
>>
>> "Steve Maillet (eMVP)" <nospam1@xxxxxxxxxxxxxxxxxxxxxxx> wrote in message
>> news:O$z7WFaZFHA.4036@xxxxxxxxxxxxxxxxxxxxxxx
>> > Wrong, Windows CE does support nested interrupts. However YOUR OAL must
>> > enable interrupts in OEMInterrupthandler and ALL branches of that
> function
>> > and any Installable ISRs must be written to take into account that they
>> may
>> > be executed with interrupts on. This is not enabled by default because
> of
>> > the added complexity.
>> >
>> > --
>> > Steve Maillet
>> > EmbeddedFusion
>> > www.EmbeddedFusion.com
>> > smaillet at EmbeddedFusion dot com
>> >
>> >
>>
>>
>
>


.



Relevant Pages

  • Re: how to minimize interrupt latency using interrupt affinity in
    ... it would be VERY useful if the CPU or ISR ... one can see nested interrupts etc). ... my ISR runs on a processor core which is not ever used by other ISRs: ... even though I set affinity to 0x3 for all drivers ...
    (microsoft.public.development.device.drivers)
  • Re: how to minimize interrupt latency using interrupt affinity in
    ... it would be VERY useful if the CPU or ISR usage ... one can see nested interrupts etc). ... used by other drivers' interrupts and that only core 3 is used by my ISR. ...
    (microsoft.public.development.device.drivers)
  • Re: Strange problem with semFlush/semTake
    ... As I stated in one of my previous messages, the cmpTime task takes only ... As for the use of semGive instead of semFlush, ... If the ISR fires, let's say, while your task is ... I am using binary semaphores to sync between interrupts and tasks and I ...
    (comp.os.vxworks)
  • Re: arm-elf-gcc building erroneous code for ISR (long posting)
    ... > example from Keil which should demonstrate the use of interrupts and of ... > essentially an empty loop now) and simply let the timer ISR toggle a LED ... > suspect a bug in gcc. ... this include the correct subs pc,lr,#4 that performs a return from interrupt ...
    (comp.arch.embedded)
  • Re: semtake function in ISR
    ... ISR, but upon closer inspection, it is being called from task-level. ... including whether interrupts are enabled or disabled. ... TaskA gets the semaphore and continues chugging along, ... If you are a newbie to VxWorks, here are the reasons why semTake ...
    (comp.os.vxworks)