Re: [PATCH] PWM: Add support for configuring polarity of PWM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 23, 2012 at 12:51:11PM +0000, Philip, Avinash wrote:
> On Mon, Jul 23, 2012 at 14:00:32, Thierry Reding wrote:
> > On Wed, Jul 18, 2012 at 06:24:13PM +0530, Philip, Avinash wrote:
[...]
> > > +
> > > +	if (test_bit(PWMF_ENABLED, &pwm->flags)) {
> > > +		dev_err(pwm->chip->dev,
> > > +			"Polarity configuration Failed!, PWM device enabled\n");
> > > +		return -EBUSY;
> > > +	}
> > 
> > Maybe something like: "polarity cannot be configured while PWM device is
> > enabled"?
> 
> Ok I will update.
> 
> > Though I'm not sure the error message is all that useful. I'd
> > expect the user driver to handle -EBUSY specially.
> 
> On EBUSY, client driver has to rework on it. Nothing to be done from
> framework

Exactly, so I think that if an error is displayed because the PWM has
been enabled, then that client (== user) driver should output an error
message, not the framework. Also, it really shouldn't happen because it
clearly is a driver problem that needs to be fixed.

> > >  /*
> > >   * pwm_enable - start a PWM output toggling
> > >   */
> > > @@ -37,6 +47,7 @@ struct pwm_chip;
> > >  enum {
> > >  	PWMF_REQUESTED = 1 << 0,
> > >  	PWMF_ENABLED = 1 << 1,
> > > +	PWMF_POLARITY_INVERSE = 1 << 2,
> > 
> > This should be named PWMF_POLARITY_INVERSED for consistency.
> 
> Ok I will correct it.
> 
> > I'm not sure that we really need this flag, though. It isn't used anywhere. But
> > maybe you have a use-case in mind?
> 
> It can be used to find the polarity of the PWM at runtime.

Yes, but is there any use-case where this information would be required?

Thierry

Attachment: pgp5ctv1fWBrQ.pgp
Description: PGP signature


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux