4 #ifndef __SOC_QUALCOMM_IPQ40XX_GPIO_H_
5 #define __SOC_QUALCOMM_IPQ40XX_GPIO_H_
9 #define GPIO_FUNC_ENABLE 1
10 #define GPIO_FUNC_DISABLE 0
13 #define FUNC_SEL_GPIO 0
14 #define GPIO_DRV_STR_10MA 0x4
15 #define GPIO_DRV_STR_11MA 0x7
22 #define GPIO_NO_PULL 0
23 #define GPIO_PULL_DOWN 1
24 #define GPIO_PULL_UP 2
37 #define GPIO_DISABLE 0
41 #define GPIO_MAX_NUM 68
44 #define GPIO_CFG_PULL_MASK 0x3
45 #define GPIO_CFG_FUNC_MASK 0xF
46 #define GPIO_CFG_DRV_MASK 0x7
47 #define GPIO_CFG_OE_MASK 0x1
48 #define GPIO_CFG_VM_MASK 0x1
49 #define GPIO_CFG_OD_EN_MASK 0x1
50 #define GPIO_CFG_PU_REMASKFT 0x3
53 #define GPIO_CFG_PULL_SHIFT 0
54 #define GPIO_CFG_FUNC_SHIFT 2
55 #define GPIO_CFG_DRV_SHIFT 6
56 #define GPIO_CFG_OE_SHIFT 9
57 #define GPIO_CFG_VM_SHIFT 11
58 #define GPIO_CFG_OD_EN_SHIFT 12
59 #define GPIO_CFG_PU_RES_SHIFT 13
62 #define GPIO_IO_IN_MASK 0x1
63 #define GPIO_IO_OUT_MASK 0x1
66 #define GPIO_IO_IN_SHIFT 0
67 #define GPIO_IO_OUT_SHIFT 1
72 unsigned int pull,
unsigned int drvstr,
76 unsigned int *
pull,
unsigned int *drvstr,
77 unsigned int *enable);
83 unsigned int dir,
unsigned int pull,
84 unsigned int drvstr,
unsigned int enable)
void gpio_tlmm_config_set(gpio_t gpio, unsigned int func, unsigned int pull, unsigned int drvstr, unsigned int enable)
void gpio_io_config_set(gpio_t gpio, unsigned int out)
void gpio_tlmm_config_get(gpio_t gpio, unsigned int *func, unsigned int *pull, unsigned int *drvstr, unsigned int *enable)
static void gpio_tlmm_config(unsigned int gpio, unsigned int func, unsigned int dir, unsigned int pull, unsigned int drvstr, unsigned int enable)