1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/cc2538/include/vendor/hw_gpio.h
smlng df37e69b90 cpu/cc2538: add TI vendor headers
Currently the cc2538 is based on from-scratch adaption which is
    not feature complete and thus lacks defines etc. Introducing the
    official vendor header will ease future extension and adaptions
    of the CPU and its features.
2018-08-03 08:29:32 +02:00

1300 lines
71 KiB
C
Executable File

/******************************************************************************
* Filename: hw_gpio.h
* Revised: $Date: 2013-04-30 17:13:44 +0200 (Tue, 30 Apr 2013) $
* Revision: $Revision: 9943 $
*
* Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************/
#ifndef __HW_GPIO_H__
#define __HW_GPIO_H__
//*****************************************************************************
//
// The following are defines for the GPIO register offsets.
//
//*****************************************************************************
#define GPIO_O_DATA 0x00000000 // This is the data register. In
// software control mode, values
// written in the GPIODATA register
// are transferred onto the GPOUT
// pins if the respective pins have
// been configured as outputs
// through the GPIODIR register. A
// read from GPIODATA returns the
// last bit value written if the
// respective pins are configured
// as output, or it returns the
// value on the corresponding input
// GPIN bit when these are
// configured as inputs.
#define GPIO_O_DIR 0x00000400 // The DIR register is the data
// direction register. All bits are
// cleared by a reset; therefore,
// the GPIO pins are input by
// default.
#define GPIO_O_IS 0x00000404 // The IS register is the
// interrupt sense register.
#define GPIO_O_IBE 0x00000408 // The IBE register is the
// interrupt both-edges register.
// When the corresponding bit in IS
// is set to detect edges, bits set
// to high in IBE configure the
// corresponding pin to detect both
// rising and falling edges,
// regardless of the corresponding
// bit in the IEV (interrupt event
// register). Clearing a bit
// configures the pin to be
// controlled by IEV.
#define GPIO_O_IEV 0x0000040C // The IEV register is the
// interrupt event register. Bits
// set to high in IEV configure the
// corresponding pin to detect
// rising edges or high levels,
// depending on the corresponding
// bit value in IS. Clearing a bit
// configures the pin to detect
// falling edges or low levels,
// depending on the corresponding
// bit value in IS.
#define GPIO_O_IE 0x00000410 // The IE register is the
// interrupt mask register. Bits
// set to high in IE allow the
// corresponding pins to trigger
// their individual interrupts and
// the combined GPIOINTR line.
// Clearing a bit disables
// interrupt triggering on that
// pin.
#define GPIO_O_RIS 0x00000414 // The RIS register is the raw
// interrupt status register. Bits
// read high in RIS reflect the
// status of interrupts trigger
// conditions detected (raw, before
// masking), indicating that all
// the requirements are met, before
// they are finally allowed to
// trigger by IE. Bits read as 0
// indicate that corresponding
// input pins have not initiated an
// interrupt.
#define GPIO_O_MIS 0x00000418 // The MIS register is the masked
// interrupt status register. Bits
// read high in MIS reflect the
// status of input lines triggering
// an interrupt. Bits read as low
// indicate that either no
// interrupt has been generated, or
// the interrupt is masked. MIS is
// the state of the interrupt after
// masking.
#define GPIO_O_IC 0x0000041C // The IC register is the
// interrupt clear register.
// Writing 1 to a bit in this
// register clears the
// corresponding interrupt edge
// detection logic register.
// Writing 0 has no effect.
#define GPIO_O_AFSEL 0x00000420 // The AFSEL register is the mode
// control select register. Writing
// 1 to any bit in this register
// selects the hardware
// (peripheral) control for the
// corresponding GPIO line. All
// bits are cleared by a reset,
// therefore no GPIO line is set to
// hardware control by default.
#define GPIO_O_GPIOLOCK 0x00000520 // A write of the value 0x4C4F434B
// to the GPIOLOCK register unlocks
// the GPIO commit register
// (GPIOCR) for write access. A
// write of any other value
// reapplies the lock, preventing
// any register updates. Any write
// to the commit register (GPIOCR)
// causes the lock register to be
// locked.
#define GPIO_O_GPIOCR 0x00000524 // The GPIOCR register is the
// commit register. The value of
// the GPIOCR register determines
// which bits of the AFSEL register
// is committed when a write to the
// AFSEL register is performed. If
// a bit in the GPIOCR register is
// 0, the data being written to the
// corresponding bit in the AFSEL
// register is not committed and
// retains its previous value. If a
// bit in the GPIOCR register is
// set to 1, the data being written
// to the corresponding bit of the
// AFSEL register is committed to
// the register and will reflect
// the new value. The contents of
// the GPIOCR register can only be
// modified if the GPIOLOCK
// register is unlocked. Writes to
// the GPIOCR register will be
// ignored if the GPIOLOCK register
// is locked. Any write to the
// commit register causes the lock
// register to be locked.
#define GPIO_O_PMUX 0x00000700 // The PMUX register can be used
// to output external decouple
// control and clock_32k on I/O
// pins. Decouple control can be
// output on specific PB pins and
// clock_32k can be output on a
// specific PA or PB pin. These
// features override the current
// setting of the selected pin when
// enabled. The pin is set to
// output, pull-up and -down
// disabled, and analog mode
// disabled.
#define GPIO_O_P_EDGE_CTRL 0x00000704 // The port edge control register
// is used to control which edge of
// each port input causes that port
// to generate a power-up interrupt
// to the system.
#define GPIO_O_USB_CTRL 0x00000708 // This register is used to
// control which edge of the USB
// controller input generates a
// power-up interrupt to the
// system.
#define GPIO_O_PI_IEN 0x00000710 // The power-up interrupt enable
// register selects, for its
// corresponding port A-D pin,
// whether interrupts are enabled
// or disabled.
#define GPIO_O_IRQ_DETECT_ACK 0x00000718 // If the IRQ detect ACK register
// is read, the value returned can
// be used to determine which
// enabled I/O port is responsible
// for creating a power-up
// interrupt to the system. Writing
// the IRQ detect ACK register is
// used to clear any number of
// individual port bits that may be
// signaling that an edge was
// detected as configured by the
// port edge control register and
// the interrupt control register.
// There is a self-clearing
// function to this register that
// generates a reset pulse to clear
// any interrupt which has its
// corresponding bit set to 1.
#define GPIO_O_USB_IRQ_ACK 0x0000071C // Same functionality as
// IRQ_DETECT_ACK, but for USB
#define GPIO_O_IRQ_DETECT_UNMASK \
0x00000720 // Same functionality as
// IRQ_DETECT_ACK, but this
// register handles masked
// interrupts
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_DATA register.
//
//*****************************************************************************
#define GPIO_DATA_DATA_M 0x000000FF // Input and output data
#define GPIO_DATA_DATA_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_DIR register.
//
//*****************************************************************************
#define GPIO_DIR_DIR_M 0x000000FF // Bits set: Corresponding pin is
// output Bits cleared:
// Corresponding pin is input
#define GPIO_DIR_DIR_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_IS register.
//
//*****************************************************************************
#define GPIO_IS_IS_M 0x000000FF // Bits set: Level on
// corresponding pin is detected
// Bits cleared: Edge on
// corresponding pin is detected
#define GPIO_IS_IS_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_IBE register.
//
//*****************************************************************************
#define GPIO_IBE_IBE_M 0x000000FF // Bits set: Both edges on
// corresponding pin trigger an
// interrupt Bits cleared:
// Interrupt generation event is
// controlled by GPIOIEV Single
// edge: Determined by
// corresponding bit in GPIOIEV
// register
#define GPIO_IBE_IBE_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_IEV register.
//
//*****************************************************************************
#define GPIO_IEV_IEV_M 0x000000FF // Bits set: Rising edges or high
// levels on corresponding pin
// trigger interrupts Bits cleared:
// Falling edges or low levels on
// corresponding pin trigger
// interrupts
#define GPIO_IEV_IEV_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_IE register.
//
//*****************************************************************************
#define GPIO_IE_IE_M 0x000000FF // Bits set: Corresponding pin is
// not masked Bits cleared:
// Corresponding pin is masked
#define GPIO_IE_IE_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_RIS register.
//
//*****************************************************************************
#define GPIO_RIS_RIS_M 0x000000FF // Reflects the status of
// interrupts trigger conditions
// detected on pins (raw, before
// masking) Bits set: Requirements
// met by corresponding pins Bits
// clear: Requirements not met
#define GPIO_RIS_RIS_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_MIS register.
//
//*****************************************************************************
#define GPIO_MIS_MIS_M 0x000000FF // Masked value of interrupt due
// to corresponding pin Bits clear:
// GPIO line interrupt not active
// Bits set: GPIO line asserting
// interrupt
#define GPIO_MIS_MIS_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_IC register.
//
//*****************************************************************************
#define GPIO_IC_IC_M 0x000000FF // Bit written as 1: Clears edge
// detection logic Bit written as
// 0: Has no effect
#define GPIO_IC_IC_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_AFSEL register.
//
//*****************************************************************************
#define GPIO_AFSEL_AFSEL_M 0x000000FF // Bit set: Enables hardware
// (peripheral) control mode Bit
// cleared: Enables software
// control mode
#define GPIO_AFSEL_AFSEL_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIOLOCK register.
//
//*****************************************************************************
#define GPIO_GPIOLOCK_LOCK_M 0xFFFFFFFF // A read of this register returns
// the following values: Locked:
// 0x00000001 Unlocked: 0x00000000
#define GPIO_GPIOLOCK_LOCK_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIOCR register.
//
//*****************************************************************************
#define GPIO_GPIOCR_CR_M 0x000000FF // On a bit-wise basis, any bit
// set allows the corresponding
// GPIOAFSEL bit to be set to its
// alternate function.
#define GPIO_GPIOCR_CR_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_PMUX register.
//
//*****************************************************************************
#define GPIO_PMUX_CKOEN 0x00000080 // Clock out enable When this bit
// is set, the 32-kHz clock is
// routed to either PA[0] or PB[7]
// pins. PMUX.CKOPIN selects the
// pin to use. This overrides the
// current configuration setting
// for this pin. The pullup or
// pulldown is disabled and the
// direction is set to output for
// this pin.
#define GPIO_PMUX_CKOEN_M 0x00000080
#define GPIO_PMUX_CKOEN_S 7
#define GPIO_PMUX_CKOPIN 0x00000010 // Decouple control pin select
// This control only has relevance
// when CKOEN is set. When 0, PA[0]
// becomes the 32-kHz clock output.
// When 1, PB[7] becomes the 32-kHz
// clock output.
#define GPIO_PMUX_CKOPIN_M 0x00000010
#define GPIO_PMUX_CKOPIN_S 4
#define GPIO_PMUX_DCEN 0x00000008 // Decouple control enable When
// this bit is set, the on-die
// digital regulator status is
// routed to either PB[1] or PB[0]
// pins. PMUX.DCPIN selects the pin
// to use. This overrides the
// current configuration setting
// for this pin. The pullup or
// pulldown is disabled and the
// direction is set to output for
// this pin.
#define GPIO_PMUX_DCEN_M 0x00000008
#define GPIO_PMUX_DCEN_S 3
#define GPIO_PMUX_DCPIN 0x00000001 // Decouple control pin select
// This control has relevance only
// when DCEN is set. When 0, PB[1]
// becomes the on-die digital
// regulator status (1 indicates
// the on-die digital regulator is
// active); when 1, PB[0] becomes
// the on-die digital regulator
// status. NOTE: PB[1] and PB[0]
// can also be controlled with
// other override features. In
// priority order for PB[1]: When
// POR/BOD test mode is active,
// PB[1] becomes the active low
// brown-out detected indicator.
// When DCEN is set and DCPIN is
// not set, PB[1] becomes the
// on-dir digital regulator status.
// In priority order for PB[0]:
// When POR/BOD test mode is
// active, PB[0] becomes the
// power-on-reset indicator. When
// DCEN and DCPIN are set, PB[0]
// becomes the on-die digital
// regulator status.
#define GPIO_PMUX_DCPIN_M 0x00000001
#define GPIO_PMUX_DCPIN_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_P_EDGE_CTRL register.
//
//*****************************************************************************
#define GPIO_P_EDGE_CTRL_PDIRC7 0x80000000 // Port D bit 7 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC7_M \
0x80000000
#define GPIO_P_EDGE_CTRL_PDIRC7_S 31
#define GPIO_P_EDGE_CTRL_PDIRC6 0x40000000 // Port D bit 6 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC6_M \
0x40000000
#define GPIO_P_EDGE_CTRL_PDIRC6_S 30
#define GPIO_P_EDGE_CTRL_PDIRC5 0x20000000 // Port D bit 5 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC5_M \
0x20000000
#define GPIO_P_EDGE_CTRL_PDIRC5_S 29
#define GPIO_P_EDGE_CTRL_PDIRC4 0x10000000 // Port D bit 4 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC4_M \
0x10000000
#define GPIO_P_EDGE_CTRL_PDIRC4_S 28
#define GPIO_P_EDGE_CTRL_PDIRC3 0x08000000 // Port D bit 3 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC3_M \
0x08000000
#define GPIO_P_EDGE_CTRL_PDIRC3_S 27
#define GPIO_P_EDGE_CTRL_PDIRC2 0x04000000 // Port D bit 2 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC2_M \
0x04000000
#define GPIO_P_EDGE_CTRL_PDIRC2_S 26
#define GPIO_P_EDGE_CTRL_PDIRC1 0x02000000 // Port D bit 1 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC1_M \
0x02000000
#define GPIO_P_EDGE_CTRL_PDIRC1_S 25
#define GPIO_P_EDGE_CTRL_PDIRC0 0x01000000 // Port D bit 0 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PDIRC0_M \
0x01000000
#define GPIO_P_EDGE_CTRL_PDIRC0_S 24
#define GPIO_P_EDGE_CTRL_PCIRC7 0x00800000 // Port C bit 7 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC7_M \
0x00800000
#define GPIO_P_EDGE_CTRL_PCIRC7_S 23
#define GPIO_P_EDGE_CTRL_PCIRC6 0x00400000 // Port C bit 6 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC6_M \
0x00400000
#define GPIO_P_EDGE_CTRL_PCIRC6_S 22
#define GPIO_P_EDGE_CTRL_PCIRC5 0x00200000 // Port C bit 5 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC5_M \
0x00200000
#define GPIO_P_EDGE_CTRL_PCIRC5_S 21
#define GPIO_P_EDGE_CTRL_PCIRC4 0x00100000 // Port C bit 4 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC4_M \
0x00100000
#define GPIO_P_EDGE_CTRL_PCIRC4_S 20
#define GPIO_P_EDGE_CTRL_PCIRC3 0x00080000 // Port C bit 3 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC3_M \
0x00080000
#define GPIO_P_EDGE_CTRL_PCIRC3_S 19
#define GPIO_P_EDGE_CTRL_PCIRC2 0x00040000 // Port C bit 2 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC2_M \
0x00040000
#define GPIO_P_EDGE_CTRL_PCIRC2_S 18
#define GPIO_P_EDGE_CTRL_PCIRC1 0x00020000 // Port C bit 1 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC1_M \
0x00020000
#define GPIO_P_EDGE_CTRL_PCIRC1_S 17
#define GPIO_P_EDGE_CTRL_PCIRC0 0x00010000 // Port C bit 0 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PCIRC0_M \
0x00010000
#define GPIO_P_EDGE_CTRL_PCIRC0_S 16
#define GPIO_P_EDGE_CTRL_PBIRC7 0x00008000 // Port B bit 7 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC7_M \
0x00008000
#define GPIO_P_EDGE_CTRL_PBIRC7_S 15
#define GPIO_P_EDGE_CTRL_PBIRC6 0x00004000 // Port B bit 6 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC6_M \
0x00004000
#define GPIO_P_EDGE_CTRL_PBIRC6_S 14
#define GPIO_P_EDGE_CTRL_PBIRC5 0x00002000 // Port B bit 5 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC5_M \
0x00002000
#define GPIO_P_EDGE_CTRL_PBIRC5_S 13
#define GPIO_P_EDGE_CTRL_PBIRC4 0x00001000 // Port B bit 4 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC4_M \
0x00001000
#define GPIO_P_EDGE_CTRL_PBIRC4_S 12
#define GPIO_P_EDGE_CTRL_PBIRC3 0x00000800 // Port B bit 3 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC3_M \
0x00000800
#define GPIO_P_EDGE_CTRL_PBIRC3_S 11
#define GPIO_P_EDGE_CTRL_PBIRC2 0x00000400 // Port B bit 2 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC2_M \
0x00000400
#define GPIO_P_EDGE_CTRL_PBIRC2_S 10
#define GPIO_P_EDGE_CTRL_PBIRC1 0x00000200 // Port B bit 1 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC1_M \
0x00000200
#define GPIO_P_EDGE_CTRL_PBIRC1_S 9
#define GPIO_P_EDGE_CTRL_PBIRC0 0x00000100 // Port B bit 0 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PBIRC0_M \
0x00000100
#define GPIO_P_EDGE_CTRL_PBIRC0_S 8
#define GPIO_P_EDGE_CTRL_PAIRC7 0x00000080 // Port A bit 7 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC7_M \
0x00000080
#define GPIO_P_EDGE_CTRL_PAIRC7_S 7
#define GPIO_P_EDGE_CTRL_PAIRC6 0x00000040 // Port A bit 6 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC6_M \
0x00000040
#define GPIO_P_EDGE_CTRL_PAIRC6_S 6
#define GPIO_P_EDGE_CTRL_PAIRC5 0x00000020 // Port A bit 5 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC5_M \
0x00000020
#define GPIO_P_EDGE_CTRL_PAIRC5_S 5
#define GPIO_P_EDGE_CTRL_PAIRC4 0x00000010 // Port A bit 4 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC4_M \
0x00000010
#define GPIO_P_EDGE_CTRL_PAIRC4_S 4
#define GPIO_P_EDGE_CTRL_PAIRC3 0x00000008 // Port A bit 3 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC3_M \
0x00000008
#define GPIO_P_EDGE_CTRL_PAIRC3_S 3
#define GPIO_P_EDGE_CTRL_PAIRC2 0x00000004 // Port A bit 2 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC2_M \
0x00000004
#define GPIO_P_EDGE_CTRL_PAIRC2_S 2
#define GPIO_P_EDGE_CTRL_PAIRC1 0x00000002 // Port A bit 1 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC1_M \
0x00000002
#define GPIO_P_EDGE_CTRL_PAIRC1_S 1
#define GPIO_P_EDGE_CTRL_PAIRC0 0x00000001 // Port A bit 0 interrupt request
// condition: 0: Rising 1: Falling
// edge
#define GPIO_P_EDGE_CTRL_PAIRC0_M \
0x00000001
#define GPIO_P_EDGE_CTRL_PAIRC0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_USB_CTRL register.
//
//*****************************************************************************
#define GPIO_USB_CTRL_USB_EDGE_CTL \
0x00000001 // Used to set the edge which
// triggers the USB power up
// interrupt 0: Rising 1: Falling
#define GPIO_USB_CTRL_USB_EDGE_CTL_M \
0x00000001
#define GPIO_USB_CTRL_USB_EDGE_CTL_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_PI_IEN register.
//
//*****************************************************************************
#define GPIO_PI_IEN_PDIEN7 0x80000000 // Port D bit 7 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN7_M 0x80000000
#define GPIO_PI_IEN_PDIEN7_S 31
#define GPIO_PI_IEN_PDIEN6 0x40000000 // Port D bit 6 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN6_M 0x40000000
#define GPIO_PI_IEN_PDIEN6_S 30
#define GPIO_PI_IEN_PDIEN5 0x20000000 // Port D bit 5 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN5_M 0x20000000
#define GPIO_PI_IEN_PDIEN5_S 29
#define GPIO_PI_IEN_PDIEN4 0x10000000 // Port D bit 4 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN4_M 0x10000000
#define GPIO_PI_IEN_PDIEN4_S 28
#define GPIO_PI_IEN_PDIEN3 0x08000000 // Port D bit 3 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN3_M 0x08000000
#define GPIO_PI_IEN_PDIEN3_S 27
#define GPIO_PI_IEN_PDIEN2 0x04000000 // Port D bit 2 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN2_M 0x04000000
#define GPIO_PI_IEN_PDIEN2_S 26
#define GPIO_PI_IEN_PDIEN1 0x02000000 // Port D bit 1 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN1_M 0x02000000
#define GPIO_PI_IEN_PDIEN1_S 25
#define GPIO_PI_IEN_PDIEN0 0x01000000 // Port D bit 0 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PDIEN0_M 0x01000000
#define GPIO_PI_IEN_PDIEN0_S 24
#define GPIO_PI_IEN_PCIEN7 0x00800000 // Port C bit 7 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN7_M 0x00800000
#define GPIO_PI_IEN_PCIEN7_S 23
#define GPIO_PI_IEN_PCIEN6 0x00400000 // Port C bit 6 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN6_M 0x00400000
#define GPIO_PI_IEN_PCIEN6_S 22
#define GPIO_PI_IEN_PCIEN5 0x00200000 // Port C bit 5 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN5_M 0x00200000
#define GPIO_PI_IEN_PCIEN5_S 21
#define GPIO_PI_IEN_PCIEN4 0x00100000 // Port C bit 4 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN4_M 0x00100000
#define GPIO_PI_IEN_PCIEN4_S 20
#define GPIO_PI_IEN_PCIEN3 0x00080000 // Port C bit 3 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN3_M 0x00080000
#define GPIO_PI_IEN_PCIEN3_S 19
#define GPIO_PI_IEN_PCIEN2 0x00040000 // Port C bit 2 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN2_M 0x00040000
#define GPIO_PI_IEN_PCIEN2_S 18
#define GPIO_PI_IEN_PCIEN1 0x00020000 // Port C bit 1 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN1_M 0x00020000
#define GPIO_PI_IEN_PCIEN1_S 17
#define GPIO_PI_IEN_PCIEN0 0x00010000 // Port C bit 0 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PCIEN0_M 0x00010000
#define GPIO_PI_IEN_PCIEN0_S 16
#define GPIO_PI_IEN_PBIEN7 0x00008000 // Port B bit 7 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN7_M 0x00008000
#define GPIO_PI_IEN_PBIEN7_S 15
#define GPIO_PI_IEN_PBIEN6 0x00004000 // Port B bit 6 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN6_M 0x00004000
#define GPIO_PI_IEN_PBIEN6_S 14
#define GPIO_PI_IEN_PBIEN5 0x00002000 // Port B bit 5 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN5_M 0x00002000
#define GPIO_PI_IEN_PBIEN5_S 13
#define GPIO_PI_IEN_PBIEN4 0x00001000 // Port B bit 4 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN4_M 0x00001000
#define GPIO_PI_IEN_PBIEN4_S 12
#define GPIO_PI_IEN_PBIEN3 0x00000800 // Port B bit 3 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN3_M 0x00000800
#define GPIO_PI_IEN_PBIEN3_S 11
#define GPIO_PI_IEN_PBIEN2 0x00000400 // Port B bit 2 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN2_M 0x00000400
#define GPIO_PI_IEN_PBIEN2_S 10
#define GPIO_PI_IEN_PBIEN1 0x00000200 // Port B bit 1 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN1_M 0x00000200
#define GPIO_PI_IEN_PBIEN1_S 9
#define GPIO_PI_IEN_PBIEN0 0x00000100 // Port B bit 0 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PBIEN0_M 0x00000100
#define GPIO_PI_IEN_PBIEN0_S 8
#define GPIO_PI_IEN_PAIEN7 0x00000080 // Port A bit 7 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN7_M 0x00000080
#define GPIO_PI_IEN_PAIEN7_S 7
#define GPIO_PI_IEN_PAIEN6 0x00000040 // Port A bit 6 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN6_M 0x00000040
#define GPIO_PI_IEN_PAIEN6_S 6
#define GPIO_PI_IEN_PAIEN5 0x00000020 // Port A bit 5 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN5_M 0x00000020
#define GPIO_PI_IEN_PAIEN5_S 5
#define GPIO_PI_IEN_PAIEN4 0x00000010 // Port A bit 4 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN4_M 0x00000010
#define GPIO_PI_IEN_PAIEN4_S 4
#define GPIO_PI_IEN_PAIEN3 0x00000008 // Port A bit 3 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN3_M 0x00000008
#define GPIO_PI_IEN_PAIEN3_S 3
#define GPIO_PI_IEN_PAIEN2 0x00000004 // Port A bit 2 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN2_M 0x00000004
#define GPIO_PI_IEN_PAIEN2_S 2
#define GPIO_PI_IEN_PAIEN1 0x00000002 // Port A bit 1 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN1_M 0x00000002
#define GPIO_PI_IEN_PAIEN1_S 1
#define GPIO_PI_IEN_PAIEN0 0x00000001 // Port A bit 0 interrupt enable:
// 1: Enabled 2: Disabled
#define GPIO_PI_IEN_PAIEN0_M 0x00000001
#define GPIO_PI_IEN_PAIEN0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_IRQ_DETECT_ACK register.
//
//*****************************************************************************
#define GPIO_IRQ_DETECT_ACK_PDIACK7 \
0x80000000 // Port D bit 7 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK7_M \
0x80000000
#define GPIO_IRQ_DETECT_ACK_PDIACK7_S 31
#define GPIO_IRQ_DETECT_ACK_PDIACK6 \
0x40000000 // Port D bit 6 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK6_M \
0x40000000
#define GPIO_IRQ_DETECT_ACK_PDIACK6_S 30
#define GPIO_IRQ_DETECT_ACK_PDIACK5 \
0x20000000 // Port D bit 5 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK5_M \
0x20000000
#define GPIO_IRQ_DETECT_ACK_PDIACK5_S 29
#define GPIO_IRQ_DETECT_ACK_PDIACK4 \
0x10000000 // Port D bit 4 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK4_M \
0x10000000
#define GPIO_IRQ_DETECT_ACK_PDIACK4_S 28
#define GPIO_IRQ_DETECT_ACK_PDIACK3 \
0x08000000 // Port D bit 3 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK3_M \
0x08000000
#define GPIO_IRQ_DETECT_ACK_PDIACK3_S 27
#define GPIO_IRQ_DETECT_ACK_PDIACK2 \
0x04000000 // Port D bit 2 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK2_M \
0x04000000
#define GPIO_IRQ_DETECT_ACK_PDIACK2_S 26
#define GPIO_IRQ_DETECT_ACK_PDIACK1 \
0x02000000 // Port D bit 1 masked interrupt
// status: 1: Detected0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK1_M \
0x02000000
#define GPIO_IRQ_DETECT_ACK_PDIACK1_S 25
#define GPIO_IRQ_DETECT_ACK_PDIACK0 \
0x01000000 // Port D bit 0 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PDIACK0_M \
0x01000000
#define GPIO_IRQ_DETECT_ACK_PDIACK0_S 24
#define GPIO_IRQ_DETECT_ACK_PCIACK7 \
0x00800000 // Port C bit 7 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK7_M \
0x00800000
#define GPIO_IRQ_DETECT_ACK_PCIACK7_S 23
#define GPIO_IRQ_DETECT_ACK_PCIACK6 \
0x00400000 // Port C bit 6 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK6_M \
0x00400000
#define GPIO_IRQ_DETECT_ACK_PCIACK6_S 22
#define GPIO_IRQ_DETECT_ACK_PCIACK5 \
0x00200000 // Port C bit 5 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK5_M \
0x00200000
#define GPIO_IRQ_DETECT_ACK_PCIACK5_S 21
#define GPIO_IRQ_DETECT_ACK_PCIACK4 \
0x00100000 // Port C bit 4 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK4_M \
0x00100000
#define GPIO_IRQ_DETECT_ACK_PCIACK4_S 20
#define GPIO_IRQ_DETECT_ACK_PCIACK3 \
0x00080000 // Port C bit 3 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK3_M \
0x00080000
#define GPIO_IRQ_DETECT_ACK_PCIACK3_S 19
#define GPIO_IRQ_DETECT_ACK_PCIACK2 \
0x00040000 // Port C bit 2 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK2_M \
0x00040000
#define GPIO_IRQ_DETECT_ACK_PCIACK2_S 18
#define GPIO_IRQ_DETECT_ACK_PCIACK1 \
0x00020000 // Port C bit 1 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK1_M \
0x00020000
#define GPIO_IRQ_DETECT_ACK_PCIACK1_S 17
#define GPIO_IRQ_DETECT_ACK_PCIACK0 \
0x00010000 // Port C bit 0 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PCIACK0_M \
0x00010000
#define GPIO_IRQ_DETECT_ACK_PCIACK0_S 16
#define GPIO_IRQ_DETECT_ACK_PBIACK7 \
0x00008000 // Port B bit 7 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK7_M \
0x00008000
#define GPIO_IRQ_DETECT_ACK_PBIACK7_S 15
#define GPIO_IRQ_DETECT_ACK_PBIACK6 \
0x00004000 // Port B bit 6 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK6_M \
0x00004000
#define GPIO_IRQ_DETECT_ACK_PBIACK6_S 14
#define GPIO_IRQ_DETECT_ACK_PBIACK5 \
0x00002000 // Port B bit 5 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK5_M \
0x00002000
#define GPIO_IRQ_DETECT_ACK_PBIACK5_S 13
#define GPIO_IRQ_DETECT_ACK_PBIACK4 \
0x00001000 // Port B bit 4 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK4_M \
0x00001000
#define GPIO_IRQ_DETECT_ACK_PBIACK4_S 12
#define GPIO_IRQ_DETECT_ACK_PBIACK3 \
0x00000800 // Port B bit 3 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK3_M \
0x00000800
#define GPIO_IRQ_DETECT_ACK_PBIACK3_S 11
#define GPIO_IRQ_DETECT_ACK_PBIACK2 \
0x00000400 // Port B bit 2 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK2_M \
0x00000400
#define GPIO_IRQ_DETECT_ACK_PBIACK2_S 10
#define GPIO_IRQ_DETECT_ACK_PBIACK1 \
0x00000200 // Port B bit 1 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK1_M \
0x00000200
#define GPIO_IRQ_DETECT_ACK_PBIACK1_S 9
#define GPIO_IRQ_DETECT_ACK_PBIACK0 \
0x00000100 // Port B bit 0 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PBIACK0_M \
0x00000100
#define GPIO_IRQ_DETECT_ACK_PBIACK0_S 8
#define GPIO_IRQ_DETECT_ACK_PAIACK7 \
0x00000080 // Port A bit 7 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK7_M \
0x00000080
#define GPIO_IRQ_DETECT_ACK_PAIACK7_S 7
#define GPIO_IRQ_DETECT_ACK_PAIACK6 \
0x00000040 // Port A bit 6 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK6_M \
0x00000040
#define GPIO_IRQ_DETECT_ACK_PAIACK6_S 6
#define GPIO_IRQ_DETECT_ACK_PAIACK5 \
0x00000020 // Port A bit 5 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK5_M \
0x00000020
#define GPIO_IRQ_DETECT_ACK_PAIACK5_S 5
#define GPIO_IRQ_DETECT_ACK_PAIACK4 \
0x00000010 // Port A bit 4 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK4_M \
0x00000010
#define GPIO_IRQ_DETECT_ACK_PAIACK4_S 4
#define GPIO_IRQ_DETECT_ACK_PAIACK3 \
0x00000008 // Port A bit 3 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK3_M \
0x00000008
#define GPIO_IRQ_DETECT_ACK_PAIACK3_S 3
#define GPIO_IRQ_DETECT_ACK_PAIACK2 \
0x00000004 // Port A bit 2 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK2_M \
0x00000004
#define GPIO_IRQ_DETECT_ACK_PAIACK2_S 2
#define GPIO_IRQ_DETECT_ACK_PAIACK1 \
0x00000002 // Port A bit 1 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK1_M \
0x00000002
#define GPIO_IRQ_DETECT_ACK_PAIACK1_S 1
#define GPIO_IRQ_DETECT_ACK_PAIACK0 \
0x00000001 // Port A bit 0 masked interrupt
// status: 1: Detected 0: Not
// detected
#define GPIO_IRQ_DETECT_ACK_PAIACK0_M \
0x00000001
#define GPIO_IRQ_DETECT_ACK_PAIACK0_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_USB_IRQ_ACK register.
//
//*****************************************************************************
#define GPIO_USB_IRQ_ACK_USBACK 0x00000001 // USB masked interrupt status: 1:
// Detected 0: Not detected
#define GPIO_USB_IRQ_ACK_USBACK_M \
0x00000001
#define GPIO_USB_IRQ_ACK_USBACK_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_IRQ_DETECT_UNMASK register.
//
//*****************************************************************************
#define GPIO_IRQ_DETECT_UNMASK_PDIACK7 \
0x80000000 // Port D bit 7 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK7_M \
0x80000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK7_S 31
#define GPIO_IRQ_DETECT_UNMASK_PDIACK6 \
0x40000000 // Port D bit 6 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK6_M \
0x40000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK6_S 30
#define GPIO_IRQ_DETECT_UNMASK_PDIACK5 \
0x20000000 // Port D bit 5 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK5_M \
0x20000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK5_S 29
#define GPIO_IRQ_DETECT_UNMASK_PDIACK4 \
0x10000000 // Port D bit 4 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK4_M \
0x10000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK4_S 28
#define GPIO_IRQ_DETECT_UNMASK_PDIACK3 \
0x08000000 // Port D bit 3 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK3_M \
0x08000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK3_S 27
#define GPIO_IRQ_DETECT_UNMASK_PDIACK2 \
0x04000000 // Port D bit 2 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK2_M \
0x04000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK2_S 26
#define GPIO_IRQ_DETECT_UNMASK_PDIACK1 \
0x02000000 // Port D bit 1 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK1_M \
0x02000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK1_S 25
#define GPIO_IRQ_DETECT_UNMASK_PDIACK0 \
0x01000000 // Port D bit 0 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PDIACK0_M \
0x01000000
#define GPIO_IRQ_DETECT_UNMASK_PDIACK0_S 24
#define GPIO_IRQ_DETECT_UNMASK_PCIACK7 \
0x00800000 // Port C bit 7 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK7_M \
0x00800000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK7_S 23
#define GPIO_IRQ_DETECT_UNMASK_PCIACK6 \
0x00400000 // Port C bit 6 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK6_M \
0x00400000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK6_S 22
#define GPIO_IRQ_DETECT_UNMASK_PCIACK5 \
0x00200000 // Port C bit 5 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK5_M \
0x00200000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK5_S 21
#define GPIO_IRQ_DETECT_UNMASK_PCIACK4 \
0x00100000 // Port C bit 4 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK4_M \
0x00100000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK4_S 20
#define GPIO_IRQ_DETECT_UNMASK_PCIACK3 \
0x00080000 // Port C bit 3 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK3_M \
0x00080000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK3_S 19
#define GPIO_IRQ_DETECT_UNMASK_PCIACK2 \
0x00040000 // Port C bit 2 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK2_M \
0x00040000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK2_S 18
#define GPIO_IRQ_DETECT_UNMASK_PCIACK1 \
0x00020000 // Port C bit 1 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK1_M \
0x00020000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK1_S 17
#define GPIO_IRQ_DETECT_UNMASK_PCIACK0 \
0x00010000 // Port C bit 0 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PCIACK0_M \
0x00010000
#define GPIO_IRQ_DETECT_UNMASK_PCIACK0_S 16
#define GPIO_IRQ_DETECT_UNMASK_PBIACK7 \
0x00008000 // Port B bit 7 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK7_M \
0x00008000
#define GPIO_IRQ_DETECT_UNMASK_PBIACK7_S 15
#define GPIO_IRQ_DETECT_UNMASK_PBIACK6 \
0x00004000 // Port B bit 6 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK6_M \
0x00004000
#define GPIO_IRQ_DETECT_UNMASK_PBIACK6_S 14
#define GPIO_IRQ_DETECT_UNMASK_PBIACK5 \
0x00002000 // Port B bit 5 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK5_M \
0x00002000
#define GPIO_IRQ_DETECT_UNMASK_PBIACK5_S 13
#define GPIO_IRQ_DETECT_UNMASK_PBIACK4 \
0x00001000 // Port B bit 4 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK4_M \
0x00001000
#define GPIO_IRQ_DETECT_UNMASK_PBIACK4_S 12
#define GPIO_IRQ_DETECT_UNMASK_PBIACK3 \
0x00000800 // Port B bit 3 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK3_M \
0x00000800
#define GPIO_IRQ_DETECT_UNMASK_PBIACK3_S 11
#define GPIO_IRQ_DETECT_UNMASK_PBIACK2 \
0x00000400 // Port B bit 2 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK2_M \
0x00000400
#define GPIO_IRQ_DETECT_UNMASK_PBIACK2_S 10
#define GPIO_IRQ_DETECT_UNMASK_PBIACK1 \
0x00000200 // Port B bit 1 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK1_M \
0x00000200
#define GPIO_IRQ_DETECT_UNMASK_PBIACK1_S 9
#define GPIO_IRQ_DETECT_UNMASK_PBIACK0 \
0x00000100 // Port B bit 0 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PBIACK0_M \
0x00000100
#define GPIO_IRQ_DETECT_UNMASK_PBIACK0_S 8
#define GPIO_IRQ_DETECT_UNMASK_PAIACK7 \
0x00000080 // Port A bit 7 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK7_M \
0x00000080
#define GPIO_IRQ_DETECT_UNMASK_PAIACK7_S 7
#define GPIO_IRQ_DETECT_UNMASK_PAIACK6 \
0x00000040 // Port A bit 6 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK6_M \
0x00000040
#define GPIO_IRQ_DETECT_UNMASK_PAIACK6_S 6
#define GPIO_IRQ_DETECT_UNMASK_PAIACK5 \
0x00000020 // Port A bit 5 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK5_M \
0x00000020
#define GPIO_IRQ_DETECT_UNMASK_PAIACK5_S 5
#define GPIO_IRQ_DETECT_UNMASK_PAIACK4 \
0x00000010 // Port A bit 4 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK4_M \
0x00000010
#define GPIO_IRQ_DETECT_UNMASK_PAIACK4_S 4
#define GPIO_IRQ_DETECT_UNMASK_PAIACK3 \
0x00000008 // Port A bit 3 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK3_M \
0x00000008
#define GPIO_IRQ_DETECT_UNMASK_PAIACK3_S 3
#define GPIO_IRQ_DETECT_UNMASK_PAIACK2 \
0x00000004 // Port A bit 2 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK2_M \
0x00000004
#define GPIO_IRQ_DETECT_UNMASK_PAIACK2_S 2
#define GPIO_IRQ_DETECT_UNMASK_PAIACK1 \
0x00000002 // Port A bit 1 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK1_M \
0x00000002
#define GPIO_IRQ_DETECT_UNMASK_PAIACK1_S 1
#define GPIO_IRQ_DETECT_UNMASK_PAIACK0 \
0x00000001 // Port A bit 0 unmasked interrupt
// status: 1: Detected 0:
// Undetected
#define GPIO_IRQ_DETECT_UNMASK_PAIACK0_M \
0x00000001
#define GPIO_IRQ_DETECT_UNMASK_PAIACK0_S 0
#endif // __HW_GPIO_H__