<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/regulator, branch linux-2.6.30.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>regulator: da903x: add missing __devexit_p()</title>
<updated>2009-05-18T10:21:10+00:00</updated>
<author>
<name>Mike Frysinger</name>
<email>vapier@gentoo.org</email>
</author>
<published>2009-05-15T18:50:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5b4662f098b47f68d7fcea9b065d1513547fef12'/>
<id>5b4662f098b47f68d7fcea9b065d1513547fef12</id>
<content type='text'>
The remove function uses __devexit, so the .remove assignment needs
__devexit_p() to fix a build error with hotplug disabled.

Signed-off-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
CC: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
CC: Mike Rapoport &lt;mike@compulab.co.il&gt;
CC: Eric Miao &lt;eric.miao@marvell.com&gt;
Acked-by: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The remove function uses __devexit, so the .remove assignment needs
__devexit_p() to fix a build error with hotplug disabled.

Signed-off-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
CC: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
CC: Mike Rapoport &lt;mike@compulab.co.il&gt;
CC: Eric Miao &lt;eric.miao@marvell.com&gt;
Acked-by: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator: Fix default constraints for fixed voltage regulators</title>
<updated>2009-04-28T17:58:08+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@opensource.wolfsonmicro.com</email>
</author>
<published>2009-04-28T10:09:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3e59091828ed5406c879b899b4257fcef7271e2c'/>
<id>3e59091828ed5406c879b899b4257fcef7271e2c</id>
<content type='text'>
Default voltage constraints were being provided for fixed voltage
regulator where board constraints were not provided but these constraints
used INT_MIN as the default minimum voltage which is not a valid value
since it is less than zero. Use 1uV instead.

Also set the default values we set in the constraints themselves since
otherwise the max_uV constraint we determine will not be stored in the
actual constraint strucutre and will therefore not be used.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Default voltage constraints were being provided for fixed voltage
regulator where board constraints were not provided but these constraints
used INT_MIN as the default minimum voltage which is not a valid value
since it is less than zero. Use 1uV instead.

Also set the default values we set in the constraints themselves since
otherwise the max_uV constraint we determine will not be stored in the
actual constraint strucutre and will therefore not be used.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator/bq24022: fix bug in is_enabled function</title>
<updated>2009-04-28T17:58:08+00:00</updated>
<author>
<name>Philipp Zabel</name>
<email>philipp.zabel@gmail.com</email>
</author>
<published>2009-04-28T11:34:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=030853b7abdd6effb9cb44f29e60d1d7a9592210'/>
<id>030853b7abdd6effb9cb44f29e60d1d7a9592210</id>
<content type='text'>
This seems to be fallout from last October's regulator core rework.
It got noticed only because of recent regulator framework changes.

Signed-off-by: Philipp Zabel &lt;philipp.zabel@gmail.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This seems to be fallout from last October's regulator core rework.
It got noticed only because of recent regulator framework changes.

Signed-off-by: Philipp Zabel &lt;philipp.zabel@gmail.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator/virtual: fix strings compare predicates</title>
<updated>2009-04-28T17:58:07+00:00</updated>
<author>
<name>Mike Rapoport</name>
<email>mike@compulab.co.il</email>
</author>
<published>2009-04-26T08:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=aa61d558f0f9f8b303b9cab1e51e9886896ba1a3'/>
<id>aa61d558f0f9f8b303b9cab1e51e9886896ba1a3</id>
<content type='text'>
Signed-off-by: Mike Rapoport &lt;mike@compulab.co.il&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Mike Rapoport &lt;mike@compulab.co.il&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator core: fix double-free in regulator_register() error path</title>
<updated>2009-04-28T17:58:07+00:00</updated>
<author>
<name>Paul Walmsley</name>
<email>paul@pwsan.com</email>
</author>
<published>2009-04-25T11:28:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=53032dafc6b93ac178ca2340ff8eb4ee2b3d1a92'/>
<id>53032dafc6b93ac178ca2340ff8eb4ee2b3d1a92</id>
<content type='text'>
During regulator registration, any error after device_register() will
cause a double-free on the struct regulator_dev 'rdev'.  The bug is in
drivers/regulator/core.c:regulator_register():

...
scrub:
	device_unregister(&amp;rdev-&gt;dev);
clean:
	kfree(rdev);                           &lt;---
	rdev = ERR_PTR(ret);
	goto out;
...

device_unregister() calls regulator_dev_release() which frees rdev.  The
subsequent kfree corrupts memory and causes some OMAP3 systems to oops on
boot in regulator_get().

Applies against 2.6.30-rc3.

Signed-off-by: Paul Walmsley &lt;paul@pwsan.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During regulator registration, any error after device_register() will
cause a double-free on the struct regulator_dev 'rdev'.  The bug is in
drivers/regulator/core.c:regulator_register():

...
scrub:
	device_unregister(&amp;rdev-&gt;dev);
clean:
	kfree(rdev);                           &lt;---
	rdev = ERR_PTR(ret);
	goto out;
...

device_unregister() calls regulator_dev_release() which frees rdev.  The
subsequent kfree corrupts memory and causes some OMAP3 systems to oops on
boot in regulator_get().

Applies against 2.6.30-rc3.

Signed-off-by: Paul Walmsley &lt;paul@pwsan.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/regulator: fix when type is different from REGULATOR_VOLTAGE or REGULATOR_CURRENT</title>
<updated>2009-04-28T17:58:07+00:00</updated>
<author>
<name>Diego Liziero</name>
<email>diegoliz@gmail.com</email>
</author>
<published>2009-04-14T01:04:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=cd78dfc6c6e321a310a73ef7b0df3d262704dd55'/>
<id>cd78dfc6c6e321a310a73ef7b0df3d262704dd55</id>
<content type='text'>
When regulator_desc-&gt;type is something different from REGULATOR_VOLTAGE or REGULATOR_CURRENT
the if should probably return ERR_PTR(-EINVAL)

The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

@@ expression E; constant C; @@
(
- !E == C
+ E != C
)

Signed-off-by: Diego Liziero &lt;diegoliz@gmail.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When regulator_desc-&gt;type is something different from REGULATOR_VOLTAGE or REGULATOR_CURRENT
the if should probably return ERR_PTR(-EINVAL)

The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

@@ expression E; constant C; @@
(
- !E == C
+ E != C
)

Signed-off-by: Diego Liziero &lt;diegoliz@gmail.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>unreachable code in drms_uA_update()</title>
<updated>2009-04-28T17:58:06+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>error27@gmail.com</email>
</author>
<published>2009-04-08T10:52:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=036de8efae4b81f8e1504fab654070cecce6dfa9'/>
<id>036de8efae4b81f8e1504fab654070cecce6dfa9</id>
<content type='text'>
I removed the extra semi-colon and indented the return statement.

The unreachable code was found by smatch (http://repo.or.cz/w/smatch.git).
The patch was compile tested.

regards,
dan carpenter

Signed-off-by: Dan Carpenter &lt;error27@gmail.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I removed the extra semi-colon and indented the return statement.

The unreachable code was found by smatch (http://repo.or.cz/w/smatch.git).
The patch was compile tested.

regards,
dan carpenter

Signed-off-by: Dan Carpenter &lt;error27@gmail.com&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator: twl4030 VAUX3 supports 3.0V</title>
<updated>2009-03-31T10:29:54+00:00</updated>
<author>
<name>Adrian Hunter</name>
<email>adrian.hunter@nokia.com</email>
</author>
<published>2009-03-06T12:51:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d6bb69cfa88b8ac9f952de4fada5b216d5ba8830'/>
<id>d6bb69cfa88b8ac9f952de4fada5b216d5ba8830</id>
<content type='text'>
TWL4030 and TWL5030 support 3.0V on VAUX3.

Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
TWL4030 and TWL5030 support 3.0V on VAUX3.

Signed-off-by: Adrian Hunter &lt;adrian.hunter@nokia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator: Support disabling of unused regulators by machines</title>
<updated>2009-03-31T08:56:29+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@opensource.wolfsonmicro.com</email>
</author>
<published>2009-03-16T19:36:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=ca7255614e0861e36480103f4a402a115803d7b5'/>
<id>ca7255614e0861e36480103f4a402a115803d7b5</id>
<content type='text'>
At present it is not possible for machine constraints to disable
regulators which have been left on when the system starts, for example
as a result of fixed default configurations in hardware. This means that
power may be wasted by these regulators if they are not in use.

Provide intial support for this with a late_initcall which will disable
any unused regulators if the machine has enabled this feature by calling
regulator_has_full_constraints(). If this has not been called then print
a warning to encourage users to fully specify their constraints so that
we can change this to be the default behaviour in future.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
At present it is not possible for machine constraints to disable
regulators which have been left on when the system starts, for example
as a result of fixed default configurations in hardware. This means that
power may be wasted by these regulators if they are not in use.

Provide intial support for this with a late_initcall which will disable
any unused regulators if the machine has enabled this feature by calling
regulator_has_full_constraints(). If this has not been called then print
a warning to encourage users to fully specify their constraints so that
we can change this to be the default behaviour in future.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>regulator: Don't increment use_count for boot_on regulators</title>
<updated>2009-03-31T08:56:29+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@opensource.wolfsonmicro.com</email>
</author>
<published>2009-03-16T19:36:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=50f075963f127d713ff0c30359baefc0f89d9ae2'/>
<id>50f075963f127d713ff0c30359baefc0f89d9ae2</id>
<content type='text'>
Don't set use_count for regulators that are enabled at boot since this
stops the supply being disabled by well-behaved consumers which do
balanced enables and disabled. Any consumers which don't do disables
which are not matched by enables are unable to share regulators - shared
regulators are the common case so the API should facilitate them.

Consumers that want to disable regulators that are enabled when they
start have two options:

 - Do a regulator_enable() prior to the disable to bring the use count
   in sync with the hardware state; this will ensure that if the
   regulator was enabled by another driver then this consumer will play
   nicely with it.
 - Use regulator_force_disable(); this explicitly bypasses any checks
   done by the core and documents the inability of the driver to share
   the supply.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't set use_count for regulators that are enabled at boot since this
stops the supply being disabled by well-behaved consumers which do
balanced enables and disabled. Any consumers which don't do disables
which are not matched by enables are unable to share regulators - shared
regulators are the common case so the API should facilitate them.

Consumers that want to disable regulators that are enabled when they
start have two options:

 - Do a regulator_enable() prior to the disable to bring the use count
   in sync with the hardware state; this will ensure that if the
   regulator was enabled by another driver then this consumer will play
   nicely with it.
 - Use regulator_force_disable(); this explicitly bypasses any checks
   done by the core and documents the inability of the driver to share
   the supply.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Liam Girdwood &lt;lrg@slimlogic.co.uk&gt;
</pre>
</div>
</content>
</entry>
</feed>
