diff options
Diffstat (limited to 'drivers/pwm/pwm-bcm-iproc.c')
| -rw-r--r-- | drivers/pwm/pwm-bcm-iproc.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/pwm/pwm-bcm-iproc.c b/drivers/pwm/pwm-bcm-iproc.c index 7251037d4dd5..97ec131eb7c1 100644 --- a/drivers/pwm/pwm-bcm-iproc.c +++ b/drivers/pwm/pwm-bcm-iproc.c @@ -68,8 +68,8 @@ static void iproc_pwmc_disable(struct iproc_pwmc *ip, unsigned int channel)  	ndelay(400);  } -static void iproc_pwmc_get_state(struct pwm_chip *chip, struct pwm_device *pwm, -				 struct pwm_state *state) +static int iproc_pwmc_get_state(struct pwm_chip *chip, struct pwm_device *pwm, +				struct pwm_state *state)  {  	struct iproc_pwmc *ip = to_iproc_pwmc(chip);  	u64 tmp, multi, rate; @@ -91,7 +91,7 @@ static void iproc_pwmc_get_state(struct pwm_chip *chip, struct pwm_device *pwm,  	if (rate == 0) {  		state->period = 0;  		state->duty_cycle = 0; -		return; +		return 0;  	}  	value = readl(ip->base + IPROC_PWM_PRESCALE_OFFSET); @@ -107,6 +107,8 @@ static void iproc_pwmc_get_state(struct pwm_chip *chip, struct pwm_device *pwm,  	value = readl(ip->base + IPROC_PWM_DUTY_CYCLE_OFFSET(pwm->hwpwm));  	tmp = (value & IPROC_PWM_PERIOD_MAX) * multi;  	state->duty_cycle = div64_u64(tmp, rate); + +	return 0;  }  static int iproc_pwmc_apply(struct pwm_chip *chip, struct pwm_device *pwm,  |