-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The core gpiolib should not contain any OF/device tree-only code. Try to break out the main part of it and push it down into the optional gpiolib-of.c part of the library. Create a local gpiolib-of.h header and move stuff around a bit to get a clean cut. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20190717071001.3858-1-linus.walleij@linaro.org
- Loading branch information
Linus Walleij
committed
Jul 28, 2019
1 parent
f8650b8
commit f626d6d
Showing
4 changed files
with
167 additions
and
132 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 */ | ||
|
||
#ifndef GPIOLIB_OF_H | ||
#define GPIOLIB_OF_H | ||
|
||
struct gpio_chip; | ||
enum of_gpio_flags; | ||
|
||
#ifdef CONFIG_OF_GPIO | ||
struct gpio_desc *of_find_gpio(struct device *dev, | ||
const char *con_id, | ||
unsigned int idx, | ||
unsigned long *lookupflags); | ||
struct gpio_desc *of_get_named_gpiod_flags(struct device_node *np, | ||
const char *list_name, int index, enum of_gpio_flags *flags); | ||
int of_gpiochip_add(struct gpio_chip *gc); | ||
void of_gpiochip_remove(struct gpio_chip *gc); | ||
int of_gpio_get_count(struct device *dev, const char *con_id); | ||
bool of_gpio_need_valid_mask(struct gpio_chip *gc); | ||
#else | ||
static inline struct gpio_desc *of_find_gpio(struct device *dev, | ||
const char *con_id, | ||
unsigned int idx, | ||
unsigned long *lookupflags) | ||
{ | ||
return ERR_PTR(-ENOENT); | ||
} | ||
static inline struct gpio_desc *of_get_named_gpiod_flags(struct device_node *np, | ||
const char *list_name, int index, enum of_gpio_flags *flags) | ||
{ | ||
return ERR_PTR(-ENOENT); | ||
} | ||
static inline int of_gpiochip_add(struct gpio_chip *gc) { return 0; } | ||
static inline void of_gpiochip_remove(struct gpio_chip *gc) { } | ||
static inline int of_gpio_get_count(struct device *dev, const char *con_id) | ||
{ | ||
return 0; | ||
} | ||
static inline bool of_gpio_need_valid_mask(struct gpio_chip *gc) | ||
{ | ||
return false; | ||
} | ||
#endif /* CONFIG_OF_GPIO */ | ||
|
||
#endif /* GPIOLIB_OF_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters