On Mon, Mar 22, 2021 at 01:40:57PM +0200, Andy Shevchenko wrote: > On Mon, Mar 22, 2021 at 1:22 PM Uwe Kleine-König > wrote: > > On Mon, Mar 22, 2021 at 11:38:40AM +0200, Andy Shevchenko wrote: > > > On Monday, March 22, 2021, Thierry Reding wrote: > > > > On Fri, Jan 29, 2021 at 09:37:47PM +0100, Clemens Gruber wrote: > > > > > Thierry: Would you accept it if we continue to reset the registers in > > > > > .probe? > > > > > > > > Yes, I think it's fine to continue to reset the registers since that's > > > > basically what the driver already does. It'd be great if you could > > > > follow up with a patch that removes the reset and leaves the hardware in > > > > whatever state the bootloader has set up. Then we can take that patch > > > > for a ride and see if there are any complains about it breaking. If > > > > there are we can always try to fix them, but as a last resort we can > > > > also revert, which then may be something we have to live with. But I > > > > think we should at least try to make this consistent with how other > > > > drivers do this so that people don't stumble over this particular > > > > driver's > > > > > > I guess we may miss (a PCB / silicon design flaw or warm boot case) when > > > boot loader left device completely untouched and device either in wrong > > > state because if failed reset (saw this on PCA9555 which has a > > > corresponding errata), or simply we have done a warm reset of the system. > > > So, we also have to understand how to properly exit. > > > > I don't think that not resetting is a real problem. My argumentation > > goes as follows: > > > > When the PWM driver is loaded and the PWM configuration is invalid, it > > was already invalid for the time between power up (or warm start) and > > PWM driver load time. Then it doesn't really hurt to keep the PWM > > in this invalid state for a little moment longer until the consumer of > > the PWM becomes active. > > But this won't work in the cases when we have a chip with a shared > settings for period and/or duty cycle. You will never have a user come > due to -EBUSY. That's wrong, the first consumer to enable the PWM (in software) is supposed to be able to change the settings. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |