Register 20: GPIO Commit (GPIOCR), offset 0x524
The
GPIOCR
register is the commit register. The value of the
GPIOCR
register determines which
bits of the
GPIOAFSEL
,
GPIOPUR
,
GPIOPDR
, and
GPIODEN
registers are committed when a
write to these registers is performed. If a bit in the
GPIOCR
register is cleared, the data being written
to the corresponding bit in the
GPIOAFSEL
,
GPIOPUR
,
GPIOPDR
, or
GPIODEN
registers cannot
be committed and retains its previous value. If a bit in the
GPIOCR
register is set, the data being
written to the corresponding bit of the
GPIOAFSEL
,
GPIOPUR
,
GPIOPDR
, or
GPIODEN
registers
is committed to the register and reflects the new value.
The contents of the
GPIOCR
register can only be modified if the status in the
GPIOLOCK
register
is unlocked. Writes to the
GPIOCR
register are ignored if the status in the
GPIOLOCK
register is
locked.
Important:
This register is designed to prevent accidental programming of the registers that control
connectivity to the NMI and JTAG/SWD debug hardware. By initializing the bits of the
GPIOCR
register to 0 for the NMI and JTAG/SWD pins (see “Signal Tables” on page 1772
for pin numbers), the NMI and JTAG/SWD debug port can only be converted to GPIOs
through a deliberate set of writes to the
GPIOLOCK
,
GPIOCR
, and the corresponding
registers.
Because this protection is currently only implemented on the NMI and JTAG/SWD pins
(see “Signal Tables” on page 1772 for pin numbers), all of the other bits in the
GPIOCR
registers cannot be written with 0x0. These bits are hardwired to 0x1, ensuring that it
is always possible to commit new values to the
GPIOAFSEL
,
GPIOPUR
,
GPIOPDR
,
or
GPIODEN
register bits of these other pins.
GPIO Commit (GPIOCR)
GPIO Port A (AHB) base: 0x4005.8000
GPIO Port B (AHB) base: 0x4005.9000
GPIO Port C (AHB) base: 0x4005.A000
GPIO Port D (AHB) base: 0x4005.B000
GPIO Port E (AHB) base: 0x4005.C000
GPIO Port F (AHB) base: 0x4005.D000
GPIO Port G (AHB) base: 0x4005.E000
GPIO Port H (AHB) base: 0x4005.F000
GPIO Port J (AHB) base: 0x4006.0000
GPIO Port K (AHB) base: 0x4006.1000
GPIO Port L (AHB) base: 0x4006.2000
GPIO Port M (AHB) base: 0x4006.3000
GPIO Port N (AHB) base: 0x4006.4000
GPIO Port P (AHB) base: 0x4006.5000
GPIO Port Q (AHB) base: 0x4006.6000
Offset 0x524
Type -, reset -
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
reserved
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
RO
Type
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Reset
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CR
reserved
-
-
-
-
-
-
-
-
RO
RO
RO
RO
RO
RO
RO
RO
Type
-
-
-
-
-
-
-
-
0
0
0
0
0
0
0
0
Reset
Description
Reset
Type
Name
Bit/Field
Software should not rely on the value of a reserved bit. To provide
compatibility with future products, the value of a reserved bit should be
preserved across a read-modify-write operation.
0x0000.00
RO
reserved
31:8
June 18, 2014
784
Texas Instruments-Production Data
General-Purpose Input/Outputs (GPIOs)