Multi-Purpose Pin Interface Functional Overview
Interrupt Outputs
Copyright © 2002 Marvell
CONFIDENTIAL
Doc. No. MV-S300165-00, Rev. A
May 21, 2002, Preliminary
Document Classification: Proprietary Information
Page 75
RESET_REG_BITS(GPP_VALUE, BIT10); /* Clear the GPP bit */
Note
If GPP10 is configured to active high, the GPP output and the Asserting and De-asserting code are the
same. The only difference is the GPP level setting at the Initialization:
RESET_REG_BITS(GPP_LEVEL_CONTROL,BIT10); /* Active High */
When a certain GPP is configured as input, the associated bit in the GPP Value register, at offset 0xf104, is only
read and it represents the value of that GPP pin. In this configuration, the GPP can be used to register external
interrupts to each one of the seven interrupt outputs. For more information on the interrupt outputs, see
11, "Interrupt Controller Functional Overview", on page 82
An assertion of the GPP input sets the associated bit in the GPP Interrupt Cause register, at offset 0xF108. If the
associated GPP input is not masked in the GPP Interrupt Mask register, at offset 0xF10C, an assertion of the GPP
input will set a bit in the main cause register.
The GPP inputs support both edge sensitive and level sensitive interrupts, depending on the setting of Comm Unit
Arbiter Control register’s
GPPInt
bit [10], at offset 0xF300. If set to ‘0’, it is configured as edge trigger. If set to ‘1’,
it is configured to level sensitive.
describes the GPP interface when configured as input.
Figure 33: GPP Configured as Input
Note
When the GPP is configured to edge trigger, it must be kept active for at least one TClk cycle to guarantee
that the interrupt is registered.
8.2
Interrupt Outputs
The MPP interface implements four interrupt pins multiplexed on the MPP interface Int[3:0]*. Each pin is kept
active as long as there is at least one non-masked cause bit set in the Interrupt Cause register. Each Int[3:0]* inter-
rupt implements a single mask that can be selected to mask one of the main cause registers.
describes
GPP Interrupt
Cause Register:
0xf108
GPPInt: Comm Unit Arbiter
Control Register: 0xf300
GPP Level Control
Register: 0xf110
GPP Value
Register: 0xf104