aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pwm
diff options
context:
space:
mode:
authorPhilip Avinash <avinashphilip@ti.com>2013-03-20 02:39:24 -0400
committerThierry Reding <thierry.reding@avionic-design.de>2013-03-22 06:35:20 -0400
commit1bf0f20bcc153f4f97bbcc52cd7f0596b427ef34 (patch)
tree5adda73328b8f89e92cd1ed4d30825d235c4fdcb /drivers/pwm
parent29258b215af83dbb4ad143cefe7a1e5d0384a605 (diff)
pwm: davinci: Add Kconfig support for ECAP & EHRPWM devices
Add EHRPWM and ECAP support build support for DAVINCI_DA8XX platforms. Also, since DAVINCI platforms doesn't support TI-PWM-Subsystem module, remove the select option for CONFIG_PWM_TIPWMSS. Also, update CONFIG_PWM_TIPWMSS compiler directive appropriately in pwm-tipwmss.h to fix the below compiler error upon removal of CONFIG_PWM_TIPWMSS for DAVINCI platforms. drivers/pwm/pwm-tiecap.c: In function 'ecap_pwm_probe': drivers/pwm/pwm-tiecap.c:263:4: error: 'PWMSS_ECAPCLK_EN' undeclared (first use in this function) drivers/pwm/pwm-tiecap.c:263:4: note: each undeclared identifier is reported only once for each function it appears in drivers/pwm/pwm-tiecap.c:264:17: error: 'PWMSS_ECAPCLK_EN_ACK' undeclared (first use in this function) drivers/pwm/pwm-tiecap.c: In function 'ecap_pwm_remove': drivers/pwm/pwm-tiecap.c:291:49: error: 'PWMSS_ECAPCLK_STOP_REQ' undeclared (first use in this function) make[2]: *** [drivers/pwm/pwm-tiecap.o] Error 1 make[1]: *** [drivers/pwm] Error 2 make: *** [drivers] Error 2 Signed-off-by: Philip Avinash <avinashphilip@ti.com> Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Diffstat (limited to 'drivers/pwm')
-rw-r--r--drivers/pwm/Kconfig8
-rw-r--r--drivers/pwm/pwm-tipwmss.h2
2 files changed, 4 insertions, 6 deletions
diff --git a/drivers/pwm/Kconfig b/drivers/pwm/Kconfig
index 0e0bfa035083..115b64453493 100644
--- a/drivers/pwm/Kconfig
+++ b/drivers/pwm/Kconfig
@@ -147,8 +147,7 @@ config PWM_TEGRA
147 147
148config PWM_TIECAP 148config PWM_TIECAP
149 tristate "ECAP PWM support" 149 tristate "ECAP PWM support"
150 depends on SOC_AM33XX 150 depends on SOC_AM33XX || ARCH_DAVINCI_DA8XX
151 select PWM_TIPWMSS
152 help 151 help
153 PWM driver support for the ECAP APWM controller found on AM33XX 152 PWM driver support for the ECAP APWM controller found on AM33XX
154 TI SOC 153 TI SOC
@@ -158,8 +157,7 @@ config PWM_TIECAP
158 157
159config PWM_TIEHRPWM 158config PWM_TIEHRPWM
160 tristate "EHRPWM PWM support" 159 tristate "EHRPWM PWM support"
161 depends on SOC_AM33XX 160 depends on SOC_AM33XX || ARCH_DAVINCI_DA8XX
162 select PWM_TIPWMSS
163 help 161 help
164 PWM driver support for the EHRPWM controller found on AM33XX 162 PWM driver support for the EHRPWM controller found on AM33XX
165 TI SOC 163 TI SOC
@@ -169,7 +167,7 @@ config PWM_TIEHRPWM
169 167
170config PWM_TIPWMSS 168config PWM_TIPWMSS
171 bool 169 bool
172 depends on SOC_AM33XX && (PWM_TIEHRPWM || PWM_TIECAP) 170 default y if SOC_AM33XX && (PWM_TIECAP || PWM_TIEHRPWM)
173 help 171 help
174 PWM Subsystem driver support for AM33xx SOC. 172 PWM Subsystem driver support for AM33xx SOC.
175 173
diff --git a/drivers/pwm/pwm-tipwmss.h b/drivers/pwm/pwm-tipwmss.h
index 11f76a1e266b..10ad8040408b 100644
--- a/drivers/pwm/pwm-tipwmss.h
+++ b/drivers/pwm/pwm-tipwmss.h
@@ -18,7 +18,6 @@
18#ifndef __TIPWMSS_H 18#ifndef __TIPWMSS_H
19#define __TIPWMSS_H 19#define __TIPWMSS_H
20 20
21#ifdef CONFIG_PWM_TIPWMSS
22/* PWM substem clock gating */ 21/* PWM substem clock gating */
23#define PWMSS_ECAPCLK_EN BIT(0) 22#define PWMSS_ECAPCLK_EN BIT(0)
24#define PWMSS_ECAPCLK_STOP_REQ BIT(1) 23#define PWMSS_ECAPCLK_STOP_REQ BIT(1)
@@ -28,6 +27,7 @@
28#define PWMSS_ECAPCLK_EN_ACK BIT(0) 27#define PWMSS_ECAPCLK_EN_ACK BIT(0)
29#define PWMSS_EPWMCLK_EN_ACK BIT(8) 28#define PWMSS_EPWMCLK_EN_ACK BIT(8)
30 29
30#ifdef CONFIG_PWM_TIPWMSS
31extern u16 pwmss_submodule_state_change(struct device *dev, int set); 31extern u16 pwmss_submodule_state_change(struct device *dev, int set);
32#else 32#else
33static inline u16 pwmss_submodule_state_change(struct device *dev, int set) 33static inline u16 pwmss_submodule_state_change(struct device *dev, int set)