diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-04-13 21:41:55 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-05-19 16:25:39 +0100 |
commit | 1a189b97190d3f0f8cf0379a799d3555b2d648bb (patch) | |
tree | 823188b22214bc2c7aeca8539c45ac0bb6d7e4d8 | |
parent | b8291ad07a7f3b5b990900f0001198ac23ba893e (diff) |
[ARM] pxa: Add bare bones PWM API
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | arch/arm/Kconfig | 3 | ||||
-rw-r--r-- | include/linux/pwm.h | 31 |
2 files changed, 34 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index b786e68914d..c274dbb89a8 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -22,6 +22,9 @@ config ARM Europe. There is an ARM Linux project with a web page at <http://www.arm.linux.org.uk/>. +config HAVE_PWM + bool + config SYS_SUPPORTS_APM_EMULATION bool diff --git a/include/linux/pwm.h b/include/linux/pwm.h new file mode 100644 index 00000000000..3945f803d51 --- /dev/null +++ b/include/linux/pwm.h @@ -0,0 +1,31 @@ +#ifndef __LINUX_PWM_H +#define __LINUX_PWM_H + +struct pwm_device; + +/* + * pwm_request - request a PWM device + */ +struct pwm_device *pwm_request(int pwm_id, const char *label); + +/* + * pwm_free - free a PWM device + */ +void pwm_free(struct pwm_device *pwm); + +/* + * pwm_config - change a PWM device configuration + */ +int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns); + +/* + * pwm_enable - start a PWM output toggling + */ +int pwm_enable(struct pwm_device *pwm); + +/* + * pwm_disable - stop a PWM output toggling + */ +void pwm_disable(struct pwm_device *pwm); + +#endif /* __ASM_ARCH_PWM_H */ |