2 * Intel Low Power Subsystem PWM controller driver
4 * Copyright (C) 2014, Intel Corporation
6 * Derived from the original pwm-lpss.c
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
16 #include <linux/device.h>
17 #include <linux/pwm.h>
21 struct pwm_lpss_chip {
24 const struct pwm_lpss_boardinfo *info;
25 u32 saved_ctrl[MAX_PWMS];
28 struct pwm_lpss_boardinfo {
29 unsigned long clk_rate;
31 unsigned long base_unit_bits;
33 /* Some devices have AML code messing with the state underneath us */
34 bool check_power_on_resume;
37 struct pwm_lpss_chip *pwm_lpss_probe(struct device *dev, struct resource *r,
38 const struct pwm_lpss_boardinfo *info);
39 int pwm_lpss_remove(struct pwm_lpss_chip *lpwm);
40 int pwm_lpss_suspend(struct device *dev);
41 int pwm_lpss_resume(struct device *dev);
43 #endif /* __PWM_LPSS_H */