[PATCH] pwm: Fix compilation error when CONFIG_PWM is not defined

From: Tushar Behera
Date: Tue Sep 11 2012 - 02:07:17 EST

As per Documentation/pwm.txt, PWM_LOOKUP and pwm_add_table are used in
board support files to add PWM chip entries. Currently these
definitions are protected within CONFIG_PWM macro in

Otherwise, we have to add ifdef's in machine file to fix following
compilation error.

error: array type has incomplete element type
error: implicit declaration of function âPWM_LOOKUPâ [-Werror=implicit-function-declaration]
error: implicit declaration of function âpwm_add_tableâ [-Werror=implicit-function-declaration]
error: bit-field â<anonymous>â width not an integer constant

Reported-by: Sachin Kamat <sachin.kamat@xxxxxxxxxx>
Signed-off-by: Tushar Behera <tushar.behera@xxxxxxxxxx>
include/linux/pwm.h | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/include/linux/pwm.h b/include/linux/pwm.h
index 21d076c..87e7f45 100644
--- a/include/linux/pwm.h
+++ b/include/linux/pwm.h
@@ -124,6 +124,7 @@ struct pwm_device *pwm_request_from_chip(struct pwm_chip *chip,

struct pwm_device *pwm_get(struct device *dev, const char *consumer);
void pwm_put(struct pwm_device *pwm);

struct pwm_lookup {
struct list_head list;
@@ -141,8 +142,10 @@ struct pwm_lookup {
.con_id = _con_id, \

+#ifdef CONFIG_PWM
void pwm_add_table(struct pwm_lookup *table, size_t num);
+static void pwm_add_table(struct pwm_lookup *table, size_t num) {}

#endif /* __LINUX_PWM_H */

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/