RISC OS Open
A fast and easily customised operating system for ARM devices
ROOL
Home | News | Software | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

HAL_FIQClear

Hardware Abstraction Layer
HAL entry points from RISC OS
» HAL_FIQClear

HAL_FIQClear

(HAL entry #9)
void HAL_FIQClear(int device)
Entry
device Device number to clear interrupt state for
Exit
-

Use

This call has a dual purpose:

  1. To clear the interrupt state of certain integrated devices
    1. Timers (as reported by HAL_TimerDevice)
    2. VSync (as reported by HAL_VideoFlybackDevice)
  2. To trigger the interrupt controller to start looking for new interrupt sources (required for interrupt controllers that latch the device number of the interrupt source, and thus could claim that the device is still interrupting even if it’s been successfully serviced).

Note that the kernel currently doesn’t use FIQ interrupts for HAL timers or the video flyback device, so point 1 could be ignored.

Because of point 2, this means that all interrupt service routines must call this routine after servicing the device. Current versions of the kernel will not call HAL_FIQClear for you – it is your responsibility to do so yourself. This is new functionality added for the Cortex/OMAP3 port, to account for the behaviour of the OMAP3 interrupt controller.

See also

  • HAL interrupt handling API
  • HAL timer API
  • HAL Video API
Information sources: Kernel.Docs.HAL.MoreEnts, HAL.Tungsten.s.Interrupts, HAL.OMAP3.s.Interrupts in CVS
Revised on November 29, 2011 13:46:21 by Jeffrey Lee (213) (195.72.173.130)
Edit | Back in time (1 revision) | See changes | History | Views: Print | Source | Linked from: HAL entry points from RISC OS, HAL interrupt handling API, HAL TODO, HAL entry points by number

Search the Wiki

Commercial use

For commercial enquiries, please contact the owners of RISC OS, Castle Technology Ltd.

ROOL Store

The official C/C++ Development kit and more here.

Donate! Why?

Help ROOL make things happen – please consider donating!

Navigation

  • Home Page
  • All Pages
  • Recently Revised
  • Authors
  • Feeds
Site design © RISC OS Open Limited 2011 except where indicated
The RISC OS Open Instiki theme is based on Insitki's default layout

Valid XHTML 1.0  |  Valid CSS

Instiki 0.19.1(MML+)
This site runs on Rails

Hosted by Arachsys