Re: lm90 driver no longer working on PCs in 3.13

From: Mark Brown
Date: Sun Jan 26 2014 - 16:23:17 EST


On Sun, Jan 26, 2014 at 09:49:36PM +0100, Jean Delvare wrote:
> On Sun, 26 Jan 2014 12:44:38 -0800, Guenter Roeck wrote:

> > Maybe there is some configuration option, or maybe something needs to be
> > configured from user space. I found neither.

> Neither would be acceptable to my eyes anyway. Things worked out of the
> box before, they should keep working out of the box.

They only worked with a debug option turned on and generated warnings
every time they were used... that kernel config would've been actively
broken for devices that wanted to do anything at all interesting with
the regulators and would've been prone to issues with init ordering and
races in any cases where there are actually regulators.

> > Another possible fix would be to have the regulator core return -ENODEV
> > instead of -EPROBE_DEFER on non-dt systems. No idea if this would be acceptable
> > or even feasible.

> Well, either the regulator subsystem gets fixed (or provides a suitable
> API for drivers like lm90 and we update the lm90 driver to use it), or
> I'll just revert the problematic commit for now. This is a severe
> regression, we just can't leave things that way.

It's not an issue in the driver, it's an issue in the combination of the
platform and the kernel config. If the regulator API is going to be
turned on for the platform then either the platform needs to configure
the supplies or it needs to tell the regulator core that it's safe to
start using dummy regulators.

What is this platform and why does it have the regulator API enabled in
the first place?

Attachment: signature.asc
Description: Digital signature