|
VSF Documented
|
#include "../driver.h"#include "hal/vsf_hal.h"#include "./i_reg_gpio.h"#include "../vendor/plf/aic8800/src/driver/iomux/reg_iomux.h"#include "../vendor/plf/aic8800/src/driver/aic1000lite_regs/aic1000Lite_iomux.h"#include "../vendor/plf/aic8800/src/driver/pmic/pmic_api.h"#include "hal/driver/common/gpio/gpio_template.inc"Data Structures | |
| struct | vsf_hw_gpio_t |
Macros | |
| #define | VSF_GPIO_CFG_REIMPLEMENT_API_CAPABILITY ENABLED |
| #define | VSF_GPIO_CFG_CHANGE_DIR_FIRST ENABLED |
| #define | VSF_GPIO_CFG_CAPABILITY_SUPPORT_OUTPUT_AND_CLEAR 1 |
| #define | VSF_GPIO_CFG_CAPABILITY_SUPPORT_OUTPUT_AND_SET 1 |
| #define | VSF_HW_GPIO_CFG_MULTI_CLASS VSF_GPIO_CFG_MULTI_CLASS |
| #define | VSF_HW_EXTI_GPIO_CFG_MULTI_CLASS VSF_GPIO_CFG_MULTI_CLASS |
| #define | VSF_HW_GPIO_CFG_PROTECT_LEVEL interrupt |
| #define | __vsf_gpio_protect vsf_protect(VSF_HW_GPIO_CFG_PROTECT_LEVEL) |
| #define | __vsf_gpio_unprotect vsf_unprotect(VSF_HW_GPIO_CFG_PROTECT_LEVEL) |
| #define | __AIC8800_GPIO_IS_VAILID_PIN(__P) |
| #define | __AIC8800_GPIO_FUNCTION_MASK IOMUX_GPIO_CONFIG_SEL_MASK |
| #define | VSF_GPIO_CFG_IMP_PREFIX vsf_hw |
| #define | VSF_GPIO_CFG_IMP_UPCASE_PREFIX VSF_HW |
| #define | VSF_GPIO_CFG_IMP_LV0(__IDX, __HAL_OP) |
Typedefs | |
| typedef struct vsf_hw_gpio_t | vsf_hw_gpio_t |
| #define VSF_GPIO_CFG_REIMPLEMENT_API_CAPABILITY ENABLED |
| #define VSF_GPIO_CFG_CHANGE_DIR_FIRST ENABLED |
| #define VSF_GPIO_CFG_CAPABILITY_SUPPORT_OUTPUT_AND_CLEAR 1 |
| #define VSF_GPIO_CFG_CAPABILITY_SUPPORT_OUTPUT_AND_SET 1 |
| #define VSF_HW_GPIO_CFG_MULTI_CLASS VSF_GPIO_CFG_MULTI_CLASS |
| #define VSF_HW_EXTI_GPIO_CFG_MULTI_CLASS VSF_GPIO_CFG_MULTI_CLASS |
| #define VSF_HW_GPIO_CFG_PROTECT_LEVEL interrupt |
| #define __vsf_gpio_protect vsf_protect(VSF_HW_GPIO_CFG_PROTECT_LEVEL) |
| #define __vsf_gpio_unprotect vsf_unprotect(VSF_HW_GPIO_CFG_PROTECT_LEVEL) |
| #define __AIC8800_GPIO_IS_VAILID_PIN | ( | __P | ) |
| #define __AIC8800_GPIO_FUNCTION_MASK IOMUX_GPIO_CONFIG_SEL_MASK |
| #define VSF_GPIO_CFG_IMP_PREFIX vsf_hw |
| #define VSF_GPIO_CFG_IMP_UPCASE_PREFIX VSF_HW |
| #define VSF_GPIO_CFG_IMP_LV0 | ( | __IDX, | |
| __HAL_OP | |||
| ) |
| typedef struct vsf_hw_gpio_t vsf_hw_gpio_t |
| void __vsf_hw_aic8800_gpio_init | ( | void | ) |
To ensure that the GPIO is working properly, it needs to be called inside vsf_driver_init()
| vsf_err_t vsf_hw_gpio_port_config_pins | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask, | ||
| vsf_gpio_cfg_t * | cfg_ptr | ||
| ) |
| void vsf_hw_gpio_set_direction | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask, | ||
| vsf_gpio_pin_mask_t | direction_mask | ||
| ) |
| vsf_gpio_pin_mask_t vsf_hw_gpio_get_direction | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask | ||
| ) |
| vsf_gpio_pin_mask_t vsf_hw_gpio_read | ( | vsf_hw_gpio_t * | hw_gpio_ptr | ) |
| void vsf_hw_gpio_write | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask, | ||
| vsf_gpio_pin_mask_t | value | ||
| ) |
| void vsf_hw_gpio_toggle | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask | ||
| ) |
| vsf_gpio_capability_t vsf_hw_gpio_capability | ( | vsf_hw_gpio_t * | hw_gpio_ptr | ) |
| vsf_err_t vsf_hw_gpio_exti_irq_config | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_exti_irq_cfg_t * | irq_cfg_ptr | ||
| ) |
| vsf_err_t vsf_hw_gpio_exti_irq_enable | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask | ||
| ) |
| vsf_err_t vsf_hw_gpio_exti_irq_disable | ( | vsf_hw_gpio_t * | hw_gpio_ptr, |
| vsf_gpio_pin_mask_t | pin_mask | ||
| ) |
| void __vsf_hw_gpio_irq_handler | ( | vsf_hw_gpio_t * | hw_gpio_ptr | ) |