From 715863cd28ca0e72e80a064732797d4ed324729a Mon Sep 17 00:00:00 2001 From: Thomas Ingleby Date: Thu, 24 Jul 2014 14:20:01 +0100 Subject: [PATCH] pwm: add period write replace hook Signed-off-by: Thomas Ingleby --- include/mraa_adv_func.h | 2 ++ src/pwm/pwm.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/include/mraa_adv_func.h b/include/mraa_adv_func.h index ab265af..98f21ab 100644 --- a/include/mraa_adv_func.h +++ b/include/mraa_adv_func.h @@ -49,4 +49,6 @@ typedef struct { mraa_result_t (*i2c_init_pre) (unsigned int bus); mraa_result_t (*i2c_init_post) (mraa_i2c_context dev); + + mraa_result_t (*pwm_period_replace) (mraa_pwm_context dev, int period); } mraa_adv_func_t; diff --git a/src/pwm/pwm.c b/src/pwm/pwm.c index b590b8b..a0ffb4b 100644 --- a/src/pwm/pwm.c +++ b/src/pwm/pwm.c @@ -60,6 +60,9 @@ mraa_pwm_setup_duty_fp(mraa_pwm_context dev) static mraa_result_t mraa_pwm_write_period(mraa_pwm_context dev, int period) { + if (advance_func->pwm_period_replace != NULL) + return advance_func->pwm_period_replace(dev,period); + char bu[MAX_SIZE]; snprintf(bu,MAX_SIZE ,"/sys/class/pwm/pwmchip%d/pwm%d/period", dev->chipid, dev->pin);