linux/include/linux/reset.h
<<
>>
Prefs
   1#ifndef _LINUX_RESET_H_
   2#define _LINUX_RESET_H_
   3
   4struct device;
   5struct device_node;
   6struct reset_control;
   7
   8#ifdef CONFIG_RESET_CONTROLLER
   9
  10int reset_control_reset(struct reset_control *rstc);
  11int reset_control_assert(struct reset_control *rstc);
  12int reset_control_deassert(struct reset_control *rstc);
  13int reset_control_status(struct reset_control *rstc);
  14
  15struct reset_control *reset_control_get(struct device *dev, const char *id);
  16void reset_control_put(struct reset_control *rstc);
  17struct reset_control *devm_reset_control_get(struct device *dev, const char *id);
  18
  19int __must_check device_reset(struct device *dev);
  20
  21static inline int device_reset_optional(struct device *dev)
  22{
  23        return device_reset(dev);
  24}
  25
  26static inline struct reset_control *reset_control_get_optional(
  27                                        struct device *dev, const char *id)
  28{
  29        return reset_control_get(dev, id);
  30}
  31
  32static inline struct reset_control *devm_reset_control_get_optional(
  33                                        struct device *dev, const char *id)
  34{
  35        return devm_reset_control_get(dev, id);
  36}
  37
  38struct reset_control *of_reset_control_get(struct device_node *node,
  39                                           const char *id);
  40
  41struct reset_control *of_reset_control_get_by_index(
  42                                        struct device_node *node, int index);
  43
  44#else
  45
  46static inline int reset_control_reset(struct reset_control *rstc)
  47{
  48        WARN_ON(1);
  49        return 0;
  50}
  51
  52static inline int reset_control_assert(struct reset_control *rstc)
  53{
  54        WARN_ON(1);
  55        return 0;
  56}
  57
  58static inline int reset_control_deassert(struct reset_control *rstc)
  59{
  60        WARN_ON(1);
  61        return 0;
  62}
  63
  64static inline int reset_control_status(struct reset_control *rstc)
  65{
  66        WARN_ON(1);
  67        return 0;
  68}
  69
  70static inline void reset_control_put(struct reset_control *rstc)
  71{
  72        WARN_ON(1);
  73}
  74
  75static inline int device_reset_optional(struct device *dev)
  76{
  77        return -ENOTSUPP;
  78}
  79
  80static inline struct reset_control *__must_check reset_control_get(
  81                                        struct device *dev, const char *id)
  82{
  83        WARN_ON(1);
  84        return ERR_PTR(-EINVAL);
  85}
  86
  87static inline struct reset_control *__must_check devm_reset_control_get(
  88                                        struct device *dev, const char *id)
  89{
  90        WARN_ON(1);
  91        return ERR_PTR(-EINVAL);
  92}
  93
  94static inline struct reset_control *reset_control_get_optional(
  95                                        struct device *dev, const char *id)
  96{
  97        return ERR_PTR(-ENOTSUPP);
  98}
  99
 100static inline struct reset_control *devm_reset_control_get_optional(
 101                                        struct device *dev, const char *id)
 102{
 103        return ERR_PTR(-ENOTSUPP);
 104}
 105
 106static inline struct reset_control *of_reset_control_get(
 107                                struct device_node *node, const char *id)
 108{
 109        return ERR_PTR(-ENOTSUPP);
 110}
 111
 112static inline struct reset_control *of_reset_control_get_by_index(
 113                                struct device_node *node, int index)
 114{
 115        return ERR_PTR(-ENOTSUPP);
 116}
 117
 118#endif /* CONFIG_RESET_CONTROLLER */
 119
 120#endif
 121