69rlq62d-f714peg4 * Memec (Headquar
ter
s) - Unique
Tec
h,
Insight,
Impact
MAR
VELL CONFIDENTIAL,
UNDER ND
A# 12101050
69rlq62d-f714peg4 * Memec (Headquar
ter
s) - Unique
Tec
h,
Insight,
Impact
MAR
VELL CONFIDENTIAL,
UNDER ND
A# 12101050
69r
lq62d-f714peg4 * Memec (Headquar
ters) - Unique
T
ech, Insight, Impact * UNDER ND
A# 12101050
MAR
VELL CONFIDENTIAL - UNA
UTHORIZED DISTRIB
UTION OR USE STRICTL
Y PR
OHIBITED
Interrupt Controller
12
Copyright © 12/13/06 Marvell
CONFIDENTIAL
Doc. No. MV-TBD-00 Rev. A
December 13, 2006 10:46 am,
Preliminary
Document Classification: Proprietary Information
Page 347
Not approved by Document Control. For review only.
Interrupt Controller
12
This chapter describes the PXA300 processor or PXA310 processor interrupt controller, explains its modes of
operation, and defines the registers associated with it. The interrupt controller controls the interrupt sources
available to the processor and contains the location of the interrupt source to allow software to determine the
first-level source of all interrupts. It also determines whether the interrupts cause an IRQ or an FIQ to occur and
masks the interrupts.
12.1
Overview
The interrupt controller provides a two-level hierarchy of interrupts. It can receive interrupts from peripherals or
processors. Processors are referred to as primary sources of interrupts. The internal events that take place in a
peripheral and cause an interrupt are called secondary sources of interrupts.
Multiple secondary sources are usually mapped to a single primary source. For example, the DMA controller is a
primary source of interrupts to the interrupt controller, with 32 possible secondary sources.
Each interrupt source is set to generate either an IRQ or an FIQ. The setting that determines whether to generate
an IRQ or an FIQ is called the level of the interrupt. The interrupt controller can be programmed to individually
mask interrupts from the different sources. If an interrupt is masked, the controller does not cause the interrupt.
The software can read registers in the interrupt controller, which identifies all the active IRQ and FIQ interrupts.
The controller assigns a unique priority to each primary source. It uses the assigned priority values to determine
the highest priority peripheral when more than one interrupt is pending. Software can determine the peripheral
ID with the highest active priority by reading a register in the controller.
The registers can be accessed by two methods: as Coprocessor registers or as Memory-mapped I/O registers.
Coprocessor register mode has less access latency than memory-mapped I/O register-mode access.
12.2
Features
The interrupt controller unit has these features:
•
Peripheral interrupt sources can be mapped to FIQ or IRQ
•
Each interrupt source can be independently enabled
•
Priority mechanism to indicate highest priority interrupt
•
Accessible via the coprocessor interface
•
Accessible as a memory-mapped peripheral for backwards compatibility