mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
pwm: Add pwm_can_sleep() as exported API to users
Calls to some external PWM chips can sleep. To help users, add pwm_can_sleep() API. Cc: Thierry Reding <thierry.reding@avionic-design.de> Cc: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
This commit is contained in:
parent
0132267d65
commit
6e69ab1361
2 changed files with 22 additions and 0 deletions
|
@ -146,6 +146,8 @@ struct pwm_ops {
|
|||
* @base: number of first PWM controlled by this chip
|
||||
* @npwm: number of PWMs controlled by this chip
|
||||
* @pwms: array of PWM devices allocated by the framework
|
||||
* @can_sleep: must be true if the .config(), .enable() or .disable()
|
||||
* operations may sleep
|
||||
*/
|
||||
struct pwm_chip {
|
||||
struct device *dev;
|
||||
|
@ -159,6 +161,7 @@ struct pwm_chip {
|
|||
struct pwm_device * (*of_xlate)(struct pwm_chip *pc,
|
||||
const struct of_phandle_args *args);
|
||||
unsigned int of_pwm_n_cells;
|
||||
bool can_sleep;
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_PWM)
|
||||
|
@ -179,6 +182,8 @@ void pwm_put(struct pwm_device *pwm);
|
|||
|
||||
struct pwm_device *devm_pwm_get(struct device *dev, const char *consumer);
|
||||
void devm_pwm_put(struct device *dev, struct pwm_device *pwm);
|
||||
|
||||
bool pwm_can_sleep(struct pwm_device *pwm);
|
||||
#else
|
||||
static inline int pwm_set_chip_data(struct pwm_device *pwm, void *data)
|
||||
{
|
||||
|
@ -226,6 +231,11 @@ static inline struct pwm_device *devm_pwm_get(struct device *dev,
|
|||
static inline void devm_pwm_put(struct device *dev, struct pwm_device *pwm)
|
||||
{
|
||||
}
|
||||
|
||||
static inline bool pwm_can_sleep(struct pwm_device *pwm)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
struct pwm_lookup {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue