TMPM4KxA Group Peripheral Driver User Manual  V1.0.4.0
Data Structures | Typedefs | Enumerations | Functions
txz_gpio.h File Reference

This file provides all the functions prototypes for GPIO driver. More...

Go to the source code of this file.

Data Structures

struct  gpio_pa_handle
 GPIO handle structure definenition. More...
 
struct  gpio_pa_handle
 GPIO handle structure definenition. More...
 
struct  gpio_pa_handle
 GPIO handle structure definenition. More...
 
struct  gpio_pa_handle
 GPIO handle structure definenition. More...
 

Typedefs

typedef struct gpio_pa_handle gpio_t
 GPIO handle structure definenition.
 

Enumerations

enum  gpio_pinstate_t { GPIO_PIN_RESET = 0, GPIO_PIN_SET }
 Pin State Reset/Set Enumerated Type Definition. More...
 
enum  gpio_pininout_t { GPIO_PIN_INPUT = 0, GPIO_PIN_OUTPUT, GPIO_PIN_INOUT }
 Pin Input/Output Enumerated Type Definition. More...
 
enum  gpio_gr_t {
  GPIO_PORT_A = 0x0, GPIO_PORT_B, GPIO_PORT_C, GPIO_PORT_D,
  GPIO_PORT_E, GPIO_PORT_F, GPIO_PORT_G, GPIO_PORT_H,
  GPIO_PORT_J, GPIO_PORT_K, GPIO_PORT_L, GPIO_GROUP_Max
}
 Port Group Enumerated Type Definition. More...
 
enum  gpio_num_t {
  GPIO_PORT_0 = 0x0, GPIO_PORT_1 = 0x1, GPIO_PORT_2 = 0x2, GPIO_PORT_3 = 0x3,
  GPIO_PORT_4 = 0x4, GPIO_PORT_5 = 0x5, GPIO_PORT_6 = 0x6, GPIO_PORT_7 = 0x7,
  GPIO_PORT_Max = 0x08
}
 Port Number Enumerated Type Definition. More...
 
enum  gpio_mode_t {
  GPIO_Mode_DATA = 0x0, GPIO_Mode_CR = 0x4, GPIO_Mode_FR1 = 0x8, GPIO_Mode_FR2 = 0xC,
  GPIO_Mode_FR3 = 0x10, GPIO_Mode_FR4 = 0x14, GPIO_Mode_FR5 = 0x18, GPIO_Mode_FR6 = 0x1C,
  GPIO_Mode_FR7 = 0x20, GPIO_Mode_OD = 0x28, GPIO_Mode_PUP = 0x2C, GPIO_Mode_PDN = 0x30,
  GPIO_Mode_IE = 0x38
}
 Port Mode Enumerated Type Definition. More...
 
enum  gpio_fr_t {
  GPIO_FR_1 = 1, GPIO_FR_2, GPIO_FR_3, GPIO_FR_4,
  GPIO_FR_5, GPIO_FR_6, GPIO_FR_7, GPIO_FR_NA,
  GPIO_FR_Max
}
 Port Function Number Enumerated Type Definition. More...
 
enum  gpio_pa0_func_t {
  GPIO_PA0_INPUT = 0x0, GPIO_PA0_OUTPUT = 0x0, GPIO_PA0_INT07 = 0x0, GPIO_PA0_UT1TXDA = 0x1,
  GPIO_PA0_UT1RXD = 0x2, GPIO_PA0_TSPI1TXD = 0x3, GPIO_PA0_T32A01INB0 = 0x4, GPIO_PA0_T32A01OUTB = 0x5
}
 PortA0 Function Enumerated Type Definition. More...
 
enum  gpio_pa1_func_t {
  GPIO_PA1_INPUT = 0x0, GPIO_PA1_OUTPUT = 0x0, GPIO_PA1_INT09 = 0x0, GPIO_PA1_UT1RXD = 0x1,
  GPIO_PA1_UT1TXDA = 0x2, GPIO_PA1_TSPI1RXD = 0x3, GPIO_PA1_T32A01INA0 = 0x4, GPIO_PA1_T32A01INC0 = 0x5
}
 PortA1 Function Enumerated Type Definition. More...
 
enum  gpio_pa2_func_t {
  GPIO_PA2_INPUT = 0x0, GPIO_PA2_OUTPUT = 0x0, GPIO_PA2_TSPI1CLK = 0x3, GPIO_PA2_T32A01INA1 = 0x4,
  GPIO_PA2_T32A01INC1 = 0x5, GPIO_PA2_T32A01OUTA = 0x6, GPIO_PA2_T32A01OUTC = 0x7
}
 PortA2 Function Enumerated Type Definition. More...
 
enum  gpio_pb0_func_t {
  GPIO_PB0_INPUT = 0x0, GPIO_PB0_OUTPUT = 0x0, GPIO_PB0_I2C0SDA = 0x3, GPIO_PB0_T32A05OUTA = 0x4,
  GPIO_PB0_T32A05OUTC = 0x5, GPIO_PB0_PMD0DBG = 0x7
}
 PortB0 Function Enumerated Type Definition. More...
 
enum  gpio_pb1_func_t {
  GPIO_PB1_INPUT = 0x0, GPIO_PB1_OUTPUT = 0x0, GPIO_PB1_I2CSCL = 0x3, GPIO_PB1_T32A05INA0 = 0x4,
  GPIO_PB1_T32A05INC0 = 0x5, GPIO_PB1_TRGIN1 = 0x6, GPIO_PB1_PMD1DBG = 0x7
}
 PortB1 Function Enumerated Type Definition. More...
 
enum  gpio_pc0_func_t {
  GPIO_PC0_INPUT = 0x0, GPIO_PC0_OUTPUT = 0x0, GPIO_PC0_INT08 = 0x0, GPIO_PC0_UT3TXDA = 0x1,
  GPIO_PC0_UT3RXD = 0x2, GPIO_PC0_TSPI3TXD = 0x3, GPIO_PC0_T32A03OUTA = 0x4, GPIO_PC0_T32A03OUTC = 0x5
}
 PortC0 Function Enumerated Type Definition. More...
 
enum  gpio_pc1_func_t {
  GPIO_PC1_INPUT = 0x0, GPIO_PC1_OUTPUT = 0x0, GPIO_PC1_INT10 = 0x0, GPIO_PC1_UT3RXD = 0x1,
  GPIO_PC1_UT3TXDA = 0x2, GPIO_PC1_TSPI3RXD = 0x3, GPIO_PC1_T32A3INA0 = 0x4, GPIO_PC1_T32A3INC0 = 0x5
}
 PortC1 Function Enumerated Type Definition. More...
 
enum  gpio_pc2_func_t {
  GPIO_PC2_INPUT = 0x0, GPIO_PC2_OUTPUT = 0x0, GPIO_PC2_TSPI3CLK = 0x3, GPIO_PC2_T32A3INA1 = 0x4,
  GPIO_PC2_T32A3INC1 = 0x5, GPIO_PC2_RTCOUT = 0x6
}
 PortC2 Function Enumerated Type Definition. More...
 
enum  gpio_pd0_func_t { GPIO_PD0_INPUT = 0x0, GPIO_PD0_OUTPUT = 0x0, GPIO_PD0_AINA00 = 0x0 }
 PortD0 Function Enumerated Type Definition. More...
 
enum  gpio_pd1_func_t { GPIO_PD1_INPUT = 0x0, GPIO_PD1_OUTPUT = 0x0, GPIO_PD1_AINA01 = 0x0, GPIO_PD1_AINA02 = 0x0 }
 PortD1 Function Enumerated Type Definition. More...
 
enum  gpio_pd2_func_t { GPIO_PD2_INPUT = 0x0, GPIO_PD2_OUTPUT = 0x0, GPIO_PD2_AINA03 = 0x0 }
 PortD2 Function Enumerated Type Definition. More...
 
enum  gpio_pd3_func_t { GPIO_PD3_INPUT = 0x0, GPIO_PD3_OUTPUT = 0x0, GPIO_PD3_AINA04 = 0x0, GPIO_PD3_AINA05 = 0x0 }
 PortD3 Function Enumerated Type Definition. More...
 
enum  gpio_pd4_func_t { GPIO_PD4_INPUT = 0x0, GPIO_PD4_OUTPUT = 0x0, GPIO_PD4_AINA06 = 0x0 }
 PortD4 Function Enumerated Type Definition. More...
 
enum  gpio_pd5_func_t { GPIO_PD5_INPUT = 0x0, GPIO_PD5_OUTPUT = 0x0, GPIO_PD5_AINA07 = 0x0, GPIO_PD5_AINA08 = 0x0 }
 PortD5 Function Enumerated Type Definition. More...
 
enum  gpio_pd6_func_t { GPIO_PD6_INPUT = 0x0, GPIO_PD6_OUTPUT = 0x0, GPIO_PD6_AINA09 = 0x0 }
 PortD6 Function Enumerated Type Definition. More...
 
enum  gpio_pe0_func_t { GPIO_PE0_INPUT = 0x0, GPIO_PE0_OUTPUT = 0x0, GPIO_PE0_AINA10 = 0x0 }
 PortE0 Function Enumerated Type Definition. More...
 
enum  gpio_pe1_func_t { GPIO_PE1_INPUT = 0x0, GPIO_PE1_OUTPUT = 0x0, GPIO_PE1_AINA11 = 0x0 }
 PortE1 Function Enumerated Type Definition. More...
 
enum  gpio_pe2_func_t { GPIO_PE2_INPUT = 0x0, GPIO_PE2_OUTPUT = 0x0, GPIO_PE2_AINA12 = 0x0 }
 PortE2 Function Enumerated Type Definition. More...
 
enum  gpio_pe3_func_t { GPIO_PE3_INPUT = 0x0, GPIO_PE3_OUTPUT = 0x0, GPIO_PE3_AINA13 = 0x0 }
 PortE3 Function Enumerated Type Definition. More...
 
enum  gpio_pe4_func_t { GPIO_PE4_INPUT = 0x0, GPIO_PE4_OUTPUT = 0x0, GPIO_PE4_AINA14 = 0x0 }
 PortE4 Function Enumerated Type Definition. More...
 
enum  gpio_pe5_func_t { GPIO_PE5_INPUT = 0x0, GPIO_PE5_OUTPUT = 0x0, GPIO_PE5_AINA15 = 0x0, GPIO_PE5_VREFH = 0x0 }
 PortE5 Function Enumerated Type Definition. More...
 
enum  gpio_pf0_func_t {
  GPIO_PF0_INPUT = 0x0, GPIO_PF0_OUTPUT = 0x0, GPIO_PF0_T32A04OUTA = 0x4, GPIO_PF0_T32A04OUTC = 0x5,
  GPIO_PF0_TRGIN0 = 0x6, GPIO_PF0_EMG1_N = 0x7
}
 PortF0 Function Enumerated Type Definition. More...
 
enum  gpio_pf1_func_t { GPIO_PF1_INPUT = 0x0, GPIO_PF1_OUTPUT = 0x0, GPIO_PF1_T32A04INA0 = 0x4, GPIO_PF1_T32A04INC0 = 0x5 }
 PortF1 Function Enumerated Type Definition. More...
 
enum  gpio_tpf2_func_t {
  GPIO_TPF2_INPUT = 0x0, GPIO_TPF2_OUTPUT = 0x0, GPIO_TPF2_T32A04INA1 = 0x4, GPIO_TPF2_T32A04INC1 = 0x5,
  GPIO_TPF2_TRGIN2 = 0x6
}
 PortTPF2 Function Enumerated Type Definition. More...
 
enum  gpio_pg0_func_t {
  GPIO_PG0_INPUT = 0x0, GPIO_PG0_OUTPUT = 0x0, GPIO_PG0_INT04 = 0x0, GPIO_PG0_UT2TXDA = 0x1,
  GPIO_PG0_TSPI2TXD = 0x2, GPIO_PG0_T32A2OUTA = 0x3, GPIO_PG0_T32A2OUTC = 0x4, GPIO_PG0_ENC0A = 0x5,
  GPIO_PG0_UO1 = 0x6, GPIO_PG0_PMG0DBG = 0x7
}
 PortG0 Function Enumerated Type Definition. More...
 
enum  gpio_pg1_func_t {
  GPIO_PG1_INPUT = 0x0, GPIO_PG1_OUTUT = 0x0, GPIO_PG1_INT05 = 0x0, GPIO_PG1_UT2RXD = 0x1,
  GPIO_PG1_TSPI2RXD = 0x2, GPIO_PG1_T32A2INA0 = 0x3, GPIO_PG1_T32A2INC0 = 0x4, GPIO_PG1_ENC0B = 0x5,
  GPIO_PG1_VO1 = 0x6, GPIO_PG1_PMD1DBG = 0x7
}
 PortG1 Function Enumerated Type Definition. More...
 
enum  gpio_pg2_func_t {
  GPIO_PG2_INPUT = 0x0, GPIO_PG2_OUTUT = 0x0, GPIO_PG2_TSPI2CLK = 0x2, GPIO_PG2_T32A02INA0 = 0x3,
  GPIO_PG2_T32A02INC0 = 0x4, GPIO_PG2_ENC0Z = 0x5, GPIO_PG2_WO1 = 0x6
}
 PortG2 Function Enumerated Type Definition. More...
 
enum  gpio_pg3_func_t { GPIO_PG3_INPUT = 0x0, GPIO_PG3_OUTUT = 0x0, GPIO_PG3_XO1 = 0x6, GPIO_PG3_COMOUT0 = 0x7 }
 PortG3 Function Enumerated Type Definition. More...
 
enum  gpio_pg4_func_t { GPIO_PG4_INPUT = 0x0, GPIO_PG4_OUTUT = 0x0, GPIO_PG4_YO1 = 0x6, GPIO_PG4_COMOUT1 = 0x7 }
 PortG4 Function Enumerated Type Definition. More...
 
enum  gpio_pg5_func_t { GPIO_PG5_INPUT = 0x0, GPIO_PG5_OUTUT = 0x0, GPIO_PG5_ZO1 = 0x6, GPIO_PG5_COMOUT2 = 0x7 }
 PortG5 Function Enumerated Type Definition. More...
 
enum  gpio_ph0_func_t { GPIO_PH0_INPUT = 0x0, GPIO_PH0_X1 = 0x0 }
 PortH0 Function Enumerated Type Definition. More...
 
enum  gpio_ph1_func_t { GPIO_PH1_INPUT = 0x0, GPIO_PH1_X2 = 0x0 }
 PortH1 Function Enumerated Type Definition. More...
 
enum  gpio_ph2_func_t { GPIO_PH2_INPUT = 0x0, GPIO_PH2_XT1 = 0x0 }
 PortH2 Function Enumerated Type Definition. More...
 
enum  gpio_ph3_func_t { GPIO_PH3_INPUT = 0x0, GPIO_PH3_XT2 = 0x0 }
 PortH3 Function Enumerated Type Definition. More...
 
enum  gpio_pj0_func_t {
  GPIO_PJ0_INPUT = 0x0, GPIO_PJ0_OUTPUT = 0x0, GPIO_PJ0_UO0 = 0x5, GPIO_PJ0_SCOUT = 0x6,
  GPIO_PJ0_PMD0DBG = 0x7
}
 PortJ0 Function Enumerated Type Definition. More...
 
enum  gpio_pj1_func_t { GPIO_PJ1_INPUT = 0x0, GPIO_PJ1_OUTPUT = 0x0, GPIO_PJ1_XO0 = 0x5, GPIO_PJ1_PMD1DBG = 0x7 }
 PortJ1 Function Enumerated Type Definition. More...
 
enum  gpio_pj2_func_t { GPIO_PJ2_INPUT = 0x0, GPIO_PJ2_OUTPUT = 0x0, GPIO_PJ2_VO0 = 0x5 }
 PortJ2 Function Enumerated Type Definition. More...
 
enum  gpio_pj3_func_t { GPIO_PJ3_INPUT = 0x0, GPIO_PJ3_OUTPUT = 0x0, GPIO_PJ3_YO0 = 0x5 }
 PortJ3 Function Enumerated Type Definition. More...
 
enum  gpio_pj4_func_t { GPIO_PJ4_INPUT = 0x0, GPIO_PJ4_OUTPUT = 0x0, GPIO_PJ4_WO0 = 0x5 }
 PortJ4 Function Enumerated Type Definition. More...
 
enum  gpio_pj5_func_t { GPIO_PJ5_INPUT = 0x0, GPIO_PJ5_OUTPUT = 0x0, GPIO_PJ5_ZO0 = 0x5 }
 PortJ5 Function Enumerated Type Definition. More...
 
enum  gpio_pj6_func_t { GPIO_PJ6_INPUT = 0x0, GPIO_PJ6_OUTPUT = 0x0, GPIO_PJ6_EMG0_N = 0x5 }
 PortJ6 Function Enumerated Type Definition. More...
 
enum  gpio_pj7_func_t { GPIO_PJ7_INPUT = 0x0, GPIO_PJ7_OUTPUT = 0x0, GPIO_PJ7_OVV0_N = 0x5 }
 PortJ7 Function Enumerated Type Definition. More...
 
enum  gpio_pk0_func_t {
  GPIO_PK0_INPUT = 0x0, GPIO_PK0_OUTPUT = 0x0, GPIO_PK0_INT00 = 0x0, GPIO_PK0_UT0RXD = 0x1,
  GPIO_PK0_IT0TXDA = 0x2, GPIO_PK0_T32A00OUTA = 0x4, GPIO_PK0_T32A00OUTC = 0x5, GPIO_PK0_TD1 = 0x7
}
 PortK0 Function Enumerated Type Definition. More...
 
enum  gpio_pk1_func_t {
  GPIO_PK1_INPUT = 0x0, GPIO_PK1_OUTPUT = 0x0, GPIO_PK1_INT01 = 0x0, GPIO_PK1_UT0TXDA = 0x1,
  GPIO_PK1_UT0RXD = 0x2, GPIO_PK1_T32A00INA0 = 0x4, GPIO_PK1_T32A00INC0 = 0x5, GPIO_PK1_TDO_SWV = 0x7
}
 PortK1 Function Enumerated Type Definition. More...
 
enum  gpio_pk2_func_t {
  GPIO_PK2_INPUT = 0x0, GPIO_PK2_OUTPUT = 0x0, GPIO_PK2_INT02 = 0x0, GPIO_PK2_UT0RXD = 0x1,
  GPIO_PK2_UT0TXDA = 0x2, GPIO_PK2_TSPI0RXD = 0x3, GPIO_PK2_TMS_SWDIO = 0x7
}
 PortK2 Function Enumerated Type Definition. More...
 
enum  gpio_pk3_func_t {
  GPIO_PK3_INPUT = 0x0, GPIO_PK3_OUTPUT = 0x0, GPIO_PK3_INT03 = 0x0, GPIO_PK3_UT0TXDA = 0x1,
  GPIO_PK3_UT0RXD = 0x2, GPIO_PK3_TSPI0TXD = 0x3, GPIO_PK3_TCK_SWCLK = 0x7
}
 PortK3 Function Enumerated Type Definition. More...
 
enum  gpio_pk4_func_t {
  GPIO_PK4_INPUT = 0x0, GPIO_PK4_OUTPUT = 0x0, GPIO_PK4_TSPI0CLK = 0x3, GPIO_PK4_NBDSYNC = 0x6,
  GPIO_PK4_TRST_N = 0x7
}
 PortK4 Function Enumerated Type Definition. More...
 
enum  gpio_pl0_func_t { GPIO_PL0_INPUT = 0x0, GPIO_PL0_OUTPUT = 0x0, GPIO_PL0_NBDDATA0 = 0x6, GPIO_PL0_TRACEDATA0 = 0x7 }
 PortL0 Function Enumerated Type Definition. More...
 
enum  gpio_pl1_func_t { GPIO_PL1_INPUT = 0x0, GPIO_PL1_OUTPUT = 0x0, GPIO_PL1_NBDDATA1 = 0x6, GPIO_PL1_TRACEDATA1 = 0x7 }
 PortL1 Function Enumerated Type Definition. More...
 
enum  gpio_pl2_func_t { GPIO_PL2_INPUT = 0x0, GPIO_PL2_OUTPUT = 0x0, GPIO_PL2_NBDDATA2 = 0x6, GPIO_PL2_TRACEDATA2 = 0x7 }
 PortL2 Function Enumerated Type Definition. More...
 
enum  gpio_pl3_func_t { GPIO_PL3_INPUT = 0x0, GPIO_PL3_OUTPUT = 0x0, GPIO_PL3_NBDDATA3 = 0x6, GPIO_PL3_TRACEDATA3 = 0x7 }
 PortL3 Function Enumerated Type Definition. More...
 
enum  gpio_pl4_func_t { GPIO_PL4_INPUT = 0x0, GPIO_PL4_OUTPUT = 0x0, GPIO_PL4_NBDCLK = 0x6, GPIO_PL4_TRACECLK = 0x7 }
 PortL4 Function Enumerated Type Definition. More...
 

Functions

TXZ_Result gpio_init (gpio_t *p_obj, uint32_t group)
 Initialize the GPIO object. More...
 
TXZ_Result gpio_deinit (gpio_t *p_obj, uint32_t group)
 Release the GPIO object. More...
 
TXZ_Result gpio_func (gpio_t *p_obj, uint32_t group, uint32_t num, uint32_t func, uint32_t inout)
 Port Function switching. More...
 
TXZ_Result gpio_write_mode (gpio_t *p_obj, uint32_t group, uint32_t mode, uint32_t val)
 Port Mode Write. More...
 
TXZ_Result gpio_read_mode (gpio_t *p_obj, uint32_t group, uint32_t mode, uint32_t *val)
 Port Mode Read. More...
 
TXZ_Result gpio_write_bit (gpio_t *p_obj, uint32_t group, uint32_t num, uint32_t mode, uint32_t val)
 Port Bit Write. More...
 
TXZ_Result gpio_read_bit (gpio_t *p_obj, uint32_t group, uint32_t num, uint32_t mode, gpio_pinstate_t *pinstate)
 Port Bit Read. More...
 

Detailed Description

This file provides all the functions prototypes for GPIO driver.

Version
V1.0.0.0
Date
2017-10-30 17:49:20

DO NOT USE THIS SOFTWARE WITHOUT THE SOFTWARE LISENCE AGREEMENT.

(C)Copyright TOSHIBA MICROELECTRONICS CORPORATION 2017 All rights reserved