[PATCHv2 1/4] pwm: Add Freescale FTM PWM driver support

Sascha Hauer s.hauer at pengutronix.de
Mon Sep 2 04:56:31 EDT 2013


On Mon, Sep 02, 2013 at 03:33:37AM +0000, Xiubo Li-B47053 wrote:
> 
> > > +static void fsl_pwm_free(struct pwm_chip *chip, struct pwm_device
> > > +*pwm) {
> > > +	struct fsl_pwm_chip *fpc;
> > > +	struct fsl_pwm_data *pwm_data;
> > > +
> > > +	fpc = to_fsl_chip(chip);
> > > +
> > > +	pwm_data = pwm_get_chip_data(pwm);
> > > +	if (!pwm_data)
> > > +		return;
> > 
> > THis check seems unnecessary.
> > 
> 
> But if do not check it here, I must check it in the following code.
> 
> > > +
> > > +	if (pwm_data->available != FSL_AVAILABLE)
> > > +		return;
> > > +
> 
> So the ' struct fsl_pwm_data' may be removed in the future.
> 
> > 
> > > +
> > > +
> > > +	pwm_data->period_cycles = period_cycles;
> > > +	pwm_data->duty_cycles = duty_cycles;
> > 
> > These fields are set but never read. Please drop them.
> > 
> > If you drop the 'available' field also the you can drop chip_data
> > completely.
> > 
> 
> I think I may move the 'available' field to the PWM driver data struct.

You simply don't need the available field. You don't need to track
whether they are available. If a user enables a pwm which is not routed
out of the SoC (disabled in the iomux) simply nothing will happen except
for a slightly increased power consumption.

Sascha


-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the linux-arm-kernel mailing list