13d0407baSopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 23d0407baSopenharmony_ci 33d0407baSopenharmony_ci#ifndef GPIOLIB_OF_H 43d0407baSopenharmony_ci#define GPIOLIB_OF_H 53d0407baSopenharmony_ci 63d0407baSopenharmony_cistruct gpio_chip; 73d0407baSopenharmony_cienum of_gpio_flags; 83d0407baSopenharmony_ci 93d0407baSopenharmony_ci#ifdef CONFIG_OF_GPIO 103d0407baSopenharmony_cistruct gpio_desc *of_find_gpio(struct device *dev, const char *con_id, unsigned int idx, unsigned long *lookupflags); 113d0407baSopenharmony_ciint of_gpiochip_add(struct gpio_chip *gc); 123d0407baSopenharmony_civoid of_gpiochip_remove(struct gpio_chip *gc); 133d0407baSopenharmony_ciint of_gpio_get_count(struct device *dev, const char *con_id); 143d0407baSopenharmony_cibool of_gpio_need_valid_mask(const struct gpio_chip *gc); 153d0407baSopenharmony_civoid of_gpio_dev_init(struct gpio_chip *gc, struct gpio_device *gdev); 163d0407baSopenharmony_ci#else 173d0407baSopenharmony_cistatic inline struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id, unsigned int idx, 183d0407baSopenharmony_ci unsigned long *lookupflags) 193d0407baSopenharmony_ci{ 203d0407baSopenharmony_ci return ERR_PTR(-ENOENT); 213d0407baSopenharmony_ci} 223d0407baSopenharmony_cistatic inline int of_gpiochip_add(struct gpio_chip *gc) 233d0407baSopenharmony_ci{ 243d0407baSopenharmony_ci return 0; 253d0407baSopenharmony_ci} 263d0407baSopenharmony_cistatic inline void of_gpiochip_remove(struct gpio_chip *gc) 273d0407baSopenharmony_ci{ 283d0407baSopenharmony_ci} 293d0407baSopenharmony_cistatic inline int of_gpio_get_count(struct device *dev, const char *con_id) 303d0407baSopenharmony_ci{ 313d0407baSopenharmony_ci return 0; 323d0407baSopenharmony_ci} 333d0407baSopenharmony_cistatic inline bool of_gpio_need_valid_mask(const struct gpio_chip *gc) 343d0407baSopenharmony_ci{ 353d0407baSopenharmony_ci return false; 363d0407baSopenharmony_ci} 373d0407baSopenharmony_cistatic inline void of_gpio_dev_init(struct gpio_chip *gc, struct gpio_device *gdev) 383d0407baSopenharmony_ci{ 393d0407baSopenharmony_ci} 403d0407baSopenharmony_ci#endif /* CONFIG_OF_GPIO */ 413d0407baSopenharmony_ci 423d0407baSopenharmony_ciextern struct notifier_block gpio_of_notifier; 433d0407baSopenharmony_ci 443d0407baSopenharmony_ci#endif /* GPIOLIB_OF_H */ 45