diff options
Diffstat (limited to 'include/linux/reset.h')
-rw-r--r-- | include/linux/reset.h | 53 |
1 files changed, 44 insertions, 9 deletions
diff --git a/include/linux/reset.h b/include/linux/reset.h index 818b06412f..7db3d3162a 100644 --- a/include/linux/reset.h +++ b/include/linux/reset.h @@ -1,28 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef _LINUX_RESET_H_ #define _LINUX_RESET_H_ -struct device_d; +struct device; struct reset_control; #ifdef CONFIG_RESET_CONTROLLER +int reset_control_status(struct reset_control *rstc); int reset_control_reset(struct reset_control *rstc); int reset_control_assert(struct reset_control *rstc); int reset_control_deassert(struct reset_control *rstc); -struct reset_control *reset_control_get(struct device_d *dev, const char *id); +struct reset_control *reset_control_get(struct device *dev, const char *id); struct reset_control *of_reset_control_get(struct device_node *node, const char *id); void reset_control_put(struct reset_control *rstc); -int __must_check device_reset(struct device_d *dev); +int __must_check device_reset(struct device *dev); + +int __must_check device_reset_us(struct device *dev, int us); + +int __must_check device_reset_all(struct device *dev); -int __must_check device_reset_us(struct device_d *dev, int us); +int reset_control_get_count(struct device *dev); -int __must_check device_reset_all(struct device_d *dev); +struct reset_control *reset_control_array_get(struct device *dev); #else +static inline int reset_control_status(struct reset_control *rstc) +{ + return 0; +} + static inline int reset_control_reset(struct reset_control *rstc) { return 0; @@ -39,7 +51,13 @@ static inline int reset_control_deassert(struct reset_control *rstc) } static inline struct reset_control * -reset_control_get(struct device_d *dev, const char *id) +of_reset_control_get(struct device_node *node, const char *id) +{ + return NULL; +} + +static inline struct reset_control * +reset_control_get(struct device *dev, const char *id) { return NULL; } @@ -48,21 +66,38 @@ static inline void reset_control_put(struct reset_control *rstc) { } -static inline int device_reset_us(struct device_d *dev, int us) +static inline int device_reset_us(struct device *dev, int us) { return 0; } -static inline int device_reset(struct device_d *dev) +static inline int device_reset(struct device *dev) { return 0; } -static inline int device_reset_all(struct device_d *dev) +static inline int device_reset_all(struct device *dev) { return 0; } +static inline int reset_control_get_count(struct device *dev) +{ + return 0; +} + +static inline struct reset_control *reset_control_array_get(struct device *dev) +{ + return NULL; +} + #endif /* CONFIG_RESET_CONTROLLER */ +static inline struct reset_control *reset_control_get_optional(struct device *dev, + const char *id) +{ + struct reset_control *rstc = reset_control_get(dev, id); + return rstc == ERR_PTR(-ENOENT) ? NULL : rstc; +} + #endif |