GPIO Interface and Digital Pad control

Address

Register Name

Register Write

Register Read

Default

Description

0x40000900 - 0x4000093C

GPIO_CFG_*

(13:12) DRIVE

(13:12) DRIVE

0x3

Drive strength configuration

(10) LPF

(10) LPF

0x0

Low Pass Filter enable

(9:8) PULL_CTRL

(9:8) PULL_CTRL

0x1

Pull selection

(7) NS_ACCESS_GPIO

(7) NS_ACCESS_GPIO

0x0

Non-Secure code can use GPIO (can only be written by a secure code)

(6:0) IO_MODE

(6:0) IO_MODE

0x0

IO mode selection

0x40000940

GPIO_INPUT_DATA

-

(15:0) DATA

0x0

GPIO[15:0] read data

0x40000944

GPIO_OUTPUT_DATA

(15:0) DATA

(15:0) DATA

0x0

GPIO[15:0] output data

0x40000948

GPIO_OUTPUT_DATA_SET

(15:0) GPIO

-

N/A

GPIO[15:0] output data set

0x4000094C

GPIO_OUTPUT_DATA_CLR

(15:0) GPIO

-

N/A

GPIO[15:0] output data clear

0x40000950

GPIO_DIR

-

(15:0) GPIO

0x0

Get GPIO[15:0] direction

(15:0) GPIO

-

N/A

Set GPIO[15:0] GPIO direction (only in GPIO_MODE_GPIO_x)

0x40000954

GPIO_MODE

-

(15:0) GPIO

0x0

GPIO[15:0] mode

0x40000958 - 0x40000964

GPIO_INT_CFG_*

(12) NS_ACCESS

(12) NS_ACCESS

0x0

Non-Secure code can access this GPIO_INT (can only be written by a secure code)

(11) DEBOUNCE_ENABLE

(11) DEBOUNCE_ENABLE

0x0

Interrupt button debounce filter enable/disable

(10:8) EVENT

(10:8) EVENT

0x0

Interrupt event configuration

(4:0) SRC

(4:0) SRC

0x0

Interrupt input selection

0x40000968

GPIO_INT_STATUS_S

-

(7) GPIO_INT3_STATUS

0x0

GPIO interrupt 3 status

-

(6) GPIO_INT2_STATUS

0x0

GPIO interrupt 2 status

-

(5) GPIO_INT1_STATUS

0x0

GPIO interrupt 1 status

-

(4) GPIO_INT0_STATUS

0x0

GPIO interrupt 0 status

(3) GPIO_INT3_CLEAR

-

N/A

GPIO interrupt 3 clear

(2) GPIO_INT2_CLEAR

-

N/A

GPIO interrupt 2 clear

(1) GPIO_INT1_CLEAR

-

N/A

GPIO interrupt 1 clear

(0) GPIO_INT0_CLEAR

-

N/A

GPIO interrupt 0 clear

0x4000096C - 0x40000978

GPIO_INT_STATUS_*

-

(4) GPIO_INT_STATUS

0x0

GPIO interrupt status

(0) GPIO_INT_CLEAR

-

N/A

GPIO interrupt clear

0x4000097C

GPIO_INT_DEBOUNCE

(8) DEBOUNCE_CLK

(8) DEBOUNCE_CLK

0x0

Interrupt button debounce filter clock

(7:0) DEBOUNCE_COUNT

(7:0) DEBOUNCE_COUNT

0x0

Interrupt button debounce filter count

0x40000980

GPIO_JTAG_SW_PAD_CFG

(9) SWCLK_LPF

(9) SWCLK_LPF

0x0

SWCLK Low-Pass-Filter enable / disable

(8) SWDIO_LPF

(8) SWDIO_LPF

0x0

SWDIO Low-Pass-Filter enable / disable

(7) CM33_JTAG_DATA_EN

(7) CM33_JTAG_DATA_EN

0x1

CM33 JTAG data (TDI and TDO) on GPIO[3:2]

(6) CM33_JTAG_TRST_EN

(6) CM33_JTAG_TRST_EN

0x1

CM33 JTAG TRST on GPIO4

(5:4) SWCLK_PULL

(5:4) SWCLK_PULL

0x1

SWCLK pull-up enable / disable

(3:2) SWDIO_DRIVE

(3:2) SWDIO_DRIVE

0x3

SWDIO drive strength

(1:0) SWDIO_PULL

(1:0) SWDIO_PULL

0x1

SWDIO pull-up enable / disable

0x40000A00 - 0x40000A04

GPIO_SRC_SPI_*

(12:8) CS

(12:8) CS

0x11

SPI_CS input selection

(4:0) CLK

(4:0) CLK

0x11

SPI_CLK input selection

0x40000A08 - 0x40000A0C

GPIO_SRC_SPI_IO_*

(28:24) IO3

(28:24) IO3

0x11

SPI_IO3 input selection

(20:16) IO2

(20:16) IO2

0x11

SPI_IO2 input selection

(12:8) IO1

(12:8) IO1

0x11

SPI_IO1 input selection (master SERI)

(4:0) IO0

(4:0) IO0

0x11

SPI_IO0 input selection (slave SERI)

0x40000A10

GPIO_SRC_UART

(4:0) RX

(4:0) RX

0x11

UART_RX input selection

0x40000A14 - 0x40000A18

GPIO_SRC_I2C_*

(12:8) SDA

(12:8) SDA

0x11

SDA input selection

(4:0) SCL

(4:0) SCL

0x11

SCL input selection

0x40000A1C

GPIO_SRC_PCM

(20:16) SERI

(20:16) SERI

0x11

PCM_SERI input selection

(12:8) FRAME

(12:8) FRAME

0x11

PCM_FRAME input selection

(4:0) CLK

(4:0) CLK

0x11

PCM_CLK input selection

0x40000A20

GPIO_SRC_LIN

(5) LIN_POLARITY

(5) LIN_POLARITY

0x1

LIN polarity

(4:0) LIN

(4:0) LIN

0x10

LIN input selection

0x40000A24

GPIO_SRC_NMI

(5) NMI_POLARITY

(5) NMI_POLARITY

0x1

NMI polarity

(4:0) NMI

(4:0) NMI

0x10

NMI input selection

0x40000A28

GPIO_SRC_BB_RX

(20:16) SYNC_P

(20:16) SYNC_P

0x12

Baseband controller interface SYNC_P input selection

(12:8) CLK

(12:8) CLK

0x12

Baseband controller RX clock input selection

(4:0) DATA

(4:0) DATA

0x12

Baseband controller RX data input selection

0x40000A2C

GPIO_SRC_BB_SPI

(4:0) MISO

(4:0) MISO

0x12

Baseband controller SPI_MISO input selection

0x40000A30

GPIO_SRC_BB_COEX

(12:8) WLAN_RX

(12:8) WLAN_RX

0x10

Baseband controller WLAN_RX input selection

(4:0) WLAN_TX

(4:0) WLAN_TX

0x10

Baseband controller WLAN_TX input selection

0x40000A34

GPIO_SRC_BB_IQ_DATA

(28:24) IQ_DATA_3

(28:24) IQ_DATA_3

0x12

Baseband controller IQ_DATA_3 input selection

(20:16) IQ_DATA_2

(20:16) IQ_DATA_2

0x12

Baseband controller IQ_DATA_2 input selection

(12:8) IQ_DATA_1

(12:8) IQ_DATA_1

0x12

Baseband controller IQ_DATA_1 input selection

(4:0) IQ_DATA_0

(4:0) IQ_DATA_0

0x12

Baseband controller IQ_DATA_0 input selection

0x40000A38

GPIO_SRC_BB_IQ_DATA_P

(4:0) IQ_DATA_P

(4:0) IQ_DATA_P

0x12

Baseband controller IQ_DATA_P input selection

0x40000A3C

GPIO_SRC_RF_SPI

(20:16) MOSI

(20:16) MOSI

0x12

RF front-end SPI_MOSI input selection

(12:8) CSN

(12:8) CSN

0x12

RF front-end SPI_CSN input selection

(4:0) CLK

(4:0) CLK

0x12

RF front-end SPI_CLK input selection

0x40000A40

GPIO_SRC_RF_GPIO03

(28:24) GPIO3

(28:24) GPIO3

0x12

RF front-end GPIO3 input selection

(20:16) GPIO2

(20:16) GPIO2

0x10

RF front-end GPIO2 input selection

(12:8) GPIO1

(12:8) GPIO1

0x10

RF front-end GPIO1 input selection

(4:0) GPIO0

(4:0) GPIO0

0x10

RF front-end GPIO0 input selection

0x40000A44

GPIO_SRC_RF_GPIO47

(28:24) GPIO7

(28:24) GPIO7

0x10

RF front-end GPIO7 input selection

(20:16) GPIO6

(20:16) GPIO6

0x10

RF front-end GPIO6 input selection

(12:8) GPIO5

(12:8) GPIO5

0x10

RF front-end GPIO5 input selection

(4:0) GPIO4

(4:0) GPIO4

0x12

RE front-end GPIO4 input selection

0x40000A48

GPIO_SRC_RF_GPIO89

(12:8) GPIO9

(12:8) GPIO9

0x10

RF front-end GPIO9 input selection

(4:0) GPIO8

(4:0) GPIO8

0x10

RF front-end GPIO8 input selection

0x40000A4C

GPIO_SRC_RF_CTE

(12:8) CTE_MODE

(12:8) CTE_MODE

0x12

RF front-end CTE_MODE input selection

(4:0) CTE_SAMPLE_P

(4:0) CTE_SAMPLE_P

0x12

RF front-end CTE_SAMPLE_P input selection

0x40000A50

GPIO_SRC_ASCC

(12:8) ASYNC_CLOCK

(12:8) ASYNC_CLOCK

0x10

ASCC asynchronous clock source input selection

(4:0) SYNC_PULSE

(4:0) SYNC_PULSE

0x10

ASCC synchronization pulse input selection

0x40000A54

GPIO_SRC_EXTCLK

(4:0) EXTCLK

(4:0) EXTCLK

0x10

EXTCLK input selection