1 /* 2 * Copyright (c) 2019 Vestas Wind Systems A/S 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 #ifndef ZEPHYR_INCLUDE_DRIVERS_ADC_LMP90XXX_H_ 8 #define ZEPHYR_INCLUDE_DRIVERS_ADC_LMP90XXX_H_ 9 10 #include <zephyr/device.h> 11 #include <zephyr/drivers/gpio.h> 12 13 /* LMP90xxx supports GPIO D0..D6 */ 14 #define LMP90XXX_GPIO_MAX 6 15 16 int lmp90xxx_gpio_set_output(const struct device *dev, uint8_t pin); 17 18 int lmp90xxx_gpio_set_input(const struct device *dev, uint8_t pin); 19 20 int lmp90xxx_gpio_set_pin_value(const struct device *dev, uint8_t pin, 21 bool value); 22 23 int lmp90xxx_gpio_get_pin_value(const struct device *dev, uint8_t pin, 24 bool *value); 25 26 int lmp90xxx_gpio_port_get_raw(const struct device *dev, 27 gpio_port_value_t *value); 28 29 int lmp90xxx_gpio_port_set_masked_raw(const struct device *dev, 30 gpio_port_pins_t mask, 31 gpio_port_value_t value); 32 33 int lmp90xxx_gpio_port_set_bits_raw(const struct device *dev, 34 gpio_port_pins_t pins); 35 36 int lmp90xxx_gpio_port_clear_bits_raw(const struct device *dev, 37 gpio_port_pins_t pins); 38 39 int lmp90xxx_gpio_port_toggle_bits(const struct device *dev, 40 gpio_port_pins_t pins); 41 42 #endif /* ZEPHYR_INCLUDE_DRIVERS_ADC_LMP90XXX_H_ */ 43