Electronic Components Datasheet Search
  New Zealand  ▼
ALLDATASHEET.CO.NZ

X  

AN3129 Datasheet(PDF) 3 Page - STMicroelectronics

Part # AN3129
Description  Real-time performance using FIQ interrupt handling in SPEAr MPUs
PDF  12 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  STMICROELECTRONICS [STMicroelectronics]
Direct Link  http://www.st.com
Logo STMICROELECTRONICS - STMicroelectronics

AN3129 Datasheet(HTML) 3 Page - STMicroelectronics

  AN3129 Datasheet HTML 1Page - STMicroelectronics AN3129 Datasheet HTML 2Page - STMicroelectronics AN3129 Datasheet HTML 3Page - STMicroelectronics AN3129 Datasheet HTML 4Page - STMicroelectronics AN3129 Datasheet HTML 5Page - STMicroelectronics AN3129 Datasheet HTML 6Page - STMicroelectronics AN3129 Datasheet HTML 7Page - STMicroelectronics AN3129 Datasheet HTML 8Page - STMicroelectronics AN3129 Datasheet HTML 9Page - STMicroelectronics Next Button
Zoom Inzoom in Zoom Outzoom out
 3 / 12 page
background image
AN3129
Linux kernel IRQ handling latency
Doc ID 16927 Rev 1
3/12
2
Linux kernel IRQ handling latency
In a Linux kernel based system, interrupt latency may occur in the following cases:
●
Interrupt latency for top half,
●
Various sections where IRQs are disabled
Figure 2.
IRQ handling latency in Linux Kernel
An FIQ is a highest priority interrupt and preempts both of these sources of latency. It can
preempt IRQ top half handlers as well as Linux kernel code sections where IRQs are
disabled. Further to this, the FIQ handler can not be preempted by other IRQs. This ensures
that the platform has predictable worst case timings for FIQ handler latency making FIQ
suitable for real-time systems.
The FIQ handler can not permit tasks that require other IRQs to be active, including the
timer. This also makes it suitable for real-time systems but imposes the following limitations:
●
Kernel mode APIs and device driver framework can not be used inside the FIQ handler.
These APIs available for Linux driver development may internally rely upon timers,
schedulers, spinlocks, etc. for functioning. Linux code also needs to guard against
multiple access to objects by spinlocks or other relevant mechanisms. FIQ ISRs can
come in the middle of anything and have to get out quickly again too. So unless it is a
simple macro, you can not use any Linux APIs in the FIQ ISR.
●
Page faults have to be avoided inside the handler (the memory used in the handler
should be already allocated and initialized). In case that a page fault occurs inside the
FIQ handler, it can not be recovered by the kernel and it would lead to a kernel crash.
Interrupt
IRQ handler
Interrupt
latency
Interrupt disabling in Kernel
OR
other interrupt handler
Interrupt
handler
duration



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com