Lines Matching refs:gpio
16 TEE_Result gpio_dt_alloc_pin(struct dt_pargs *pargs, struct gpio **out_gpio) in gpio_dt_alloc_pin()
18 struct gpio *gpio = NULL; in gpio_dt_alloc_pin() local
23 gpio = calloc(1, sizeof(struct gpio)); in gpio_dt_alloc_pin()
24 if (!gpio) in gpio_dt_alloc_pin()
27 gpio->pin = pargs->args[0]; in gpio_dt_alloc_pin()
28 gpio->dt_flags = pargs->args[1]; in gpio_dt_alloc_pin()
30 *out_gpio = gpio; in gpio_dt_alloc_pin()
37 struct gpio **gpio) in gpio_dt_get_by_index() argument
63 *gpio = out_gpio; in gpio_dt_get_by_index()
68 TEE_Result gpio_configure(struct gpio *gpio, enum gpio_flags flags) in gpio_configure() argument
73 assert(gpio && gpio->chip && gpio->chip->ops); in gpio_configure()
76 if (gpio && gpio->chip->ops->configure) { in gpio_configure()
77 res = gpio->chip->ops->configure(gpio->chip, gpio); in gpio_configure()
87 gpio_set_value(gpio, value); in gpio_configure()
88 gpio_set_direction(gpio, GPIO_DIR_OUT); in gpio_configure()
90 gpio_set_direction(gpio, GPIO_DIR_IN); in gpio_configure()
99 enum gpio_flags flags, struct gpio **gpio) in gpio_dt_cfg_by_index() argument
103 res = gpio_dt_get_by_index(fdt, nodeoffset, index, gpio_name, gpio); in gpio_dt_cfg_by_index()
105 return gpio_configure(*gpio, flags); in gpio_dt_cfg_by_index()