68 lines
1.5 KiB
C
68 lines
1.5 KiB
C
|
|
#ifndef _HGGPIO_V4_HW_H_
|
||
|
|
#define _HGGPIO_V4_HW_H_
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
extern "C" {
|
||
|
|
#endif
|
||
|
|
|
||
|
|
|
||
|
|
/* Switches for uncommon functions */
|
||
|
|
#define HGGPIO_V4_DIR_ATOMIC_EN (1)
|
||
|
|
#define HGGPIO_V4_DRIVER_STRENGTH_EN (1)
|
||
|
|
#define HGGPIO_V4_DEBUNCE_EN (1)
|
||
|
|
#define HGGPIO_V4_TOGGLE_EN (1)
|
||
|
|
#define HGGPIO_V4_SET_ATOMIC_EN (1)
|
||
|
|
#define HGGPIO_V4_ANALOG_EN (1)
|
||
|
|
#define HGGPIO_V4_LOCK_EN (0)
|
||
|
|
#define HGGPIO_V4_INPUT_LAG_EN (0)
|
||
|
|
#define HGGPIO_V4_ADC_ANALOG_INPUT_EN (0)
|
||
|
|
#define HGGPIO_V4_TK_ANALOG_INPUT_EN (0)
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @breif huge-ic gpio register definition
|
||
|
|
*/
|
||
|
|
struct hggpio_v4_hw {
|
||
|
|
__IO uint32_t MODE;
|
||
|
|
__IO uint32_t OTYPE;
|
||
|
|
__IO uint32_t OSPEEDL;
|
||
|
|
__IO uint32_t OSPEEDH;
|
||
|
|
__IO uint32_t PUPL;
|
||
|
|
__IO uint32_t PUPH;
|
||
|
|
__IO uint32_t PUDL;
|
||
|
|
__IO uint32_t PUDH;
|
||
|
|
__IO uint32_t IDAT;
|
||
|
|
__IO uint32_t ODAT;
|
||
|
|
__IO uint32_t BSR;
|
||
|
|
__IO uint32_t RES0;
|
||
|
|
__IO uint32_t AFRL;
|
||
|
|
__IO uint32_t AFRH;
|
||
|
|
__IO uint32_t TGL;
|
||
|
|
__IO uint32_t IMK;
|
||
|
|
__IO uint32_t HY;
|
||
|
|
__IO uint32_t RES2;
|
||
|
|
__IO uint32_t RES3;
|
||
|
|
__IO uint32_t DEBEN;
|
||
|
|
__IO uint32_t AIOEN;
|
||
|
|
__IO uint32_t PND;
|
||
|
|
__IO uint32_t PNDCLR;
|
||
|
|
__IO uint32_t TRG0;
|
||
|
|
__IO uint32_t RES4;
|
||
|
|
__IO uint32_t RES5;
|
||
|
|
__IO uint32_t RES6;
|
||
|
|
__IO uint32_t RES7;
|
||
|
|
__IO uint32_t IEEN;
|
||
|
|
__IO uint32_t IOFUNCOUTCON0;
|
||
|
|
__IO uint32_t IOFUNCOUTCON1;
|
||
|
|
__IO uint32_t IOFUNCOUTCON2;
|
||
|
|
__IO uint32_t IOFUNCOUTCON3;
|
||
|
|
} ;
|
||
|
|
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#endif /* _HGGPIO_V4_HW_H_ */
|
||
|
|
|