<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/regulator/of_regulator.c, branch linux-3.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-01-30T02:11:06Z</updated>
<entry>
<title>regulator: clear state each invocation of of_regulator_match</title>
<updated>2013-01-30T02:11:06Z</updated>
<author>
<name>Stephen Warren</name>
</author>
<published>2013-01-29T19:01:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a2f95c363701deba2205f81929b40222ea6f4f80'/>
<id>urn:sha1:a2f95c363701deba2205f81929b40222ea6f4f80</id>
<content type='text'>
of_regulator_match() saves some dynamcially allocated state into the
match table that's passed to it. By implementation and not contract, for
each match table entry, if non-NULL state is already present,
of_regulator_match() will not overwrite it. of_regulator_match() is
typically called each time a regulator is probe()d. This means it is
called with the same match table over and over again if a regulator
triggers deferred probe. This results in stale, kfree()d data being left
in the match table from probe to probe, which causes a variety of crashes
or use of invalid data.

Explicitly free all output state from of_regulator_match() before
generating new results in order to avoid this.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: stable@vger.kernel.org
</content>
</entry>
<entry>
<title>regulator: deprecate regulator-compatible DT property</title>
<updated>2012-09-25T12:44:47Z</updated>
<author>
<name>Stephen Warren</name>
</author>
<published>2012-09-24T19:25:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=13511def87b9f68697a0fc4c64ddacece585a471'/>
<id>urn:sha1:13511def87b9f68697a0fc4c64ddacece585a471</id>
<content type='text'>
When the bindings for the TPS6586x regulator were being proposed, I
asserted that DT node naming rules for bus child nodes should also be
applied to nodes inside the TPS6586x regulator node itself. In other
words, that each node providing regulator init data should be named
after the type of object it represented ("regulator") and hence that
some other property was required to indicate which regulator the node
described ("regulator-compatible"). In turn this led to multiple nodes
having the same name, thus requiring node names to use a unit address
to make them unique, thus requiring reg properties within the nodes and

However, subsequent discussion indicates that the rules I was asserting
only applies to standardized bus nodes, and within a device's own node,
the binding can basically do anything sane that it wants.

Hence, this change deprecates the register-compatible property, and
instead uses node names to replace this functionality. This greatly
simplifies the device tree content, making them smaller and more legible.

The code is changed such that old device trees continue to work.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: dt: regulator match by regulator-compatible</title>
<updated>2012-07-03T19:19:41Z</updated>
<author>
<name>Laxman Dewangan</name>
</author>
<published>2012-06-20T12:23:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5260cd2bc97318b8477b1d1e99c5a2c53764135b'/>
<id>urn:sha1:5260cd2bc97318b8477b1d1e99c5a2c53764135b</id>
<content type='text'>
Match the device's regulators with the property of
"regulator-compatible" of each regulator node.

Signed-off-by: Laxman Dewangan &lt;ldewangan@nvidia.com&gt;
Acked-by: Stephen Warren &lt;swarren@wwwdotorg.org&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: Fix setting constraints-&gt;ramp_delay in of_get_regulation_constraints</title>
<updated>2012-06-18T09:46:57Z</updated>
<author>
<name>Axel Lin</name>
</author>
<published>2012-06-18T05:59:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=086ccd4379ad6c9c7c7713ef5f61b9d12e995147'/>
<id>urn:sha1:086ccd4379ad6c9c7c7713ef5f61b9d12e995147</id>
<content type='text'>
Signed-off-by: Axel Lin &lt;axel.lin@gmail.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: Add ramp_delay configuration to constraints</title>
<updated>2012-06-17T20:08:52Z</updated>
<author>
<name>Yadwinder Singh Brar</name>
</author>
<published>2012-06-11T12:11:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6f0b2c696ca340cc2da381fe693fda3f8fdb2149'/>
<id>urn:sha1:6f0b2c696ca340cc2da381fe693fda3f8fdb2149</id>
<content type='text'>
For some hardwares ramp_delay for BUCKs is a configurable parameter which can
be configured through DT or board file.This patch adds ramp_delay to regulator
constraints and allow user to configure it for regulators which supports this
feature, through DT or board file. It will provide two ways of setting the
ramp_delay for a regulator:
	First, by setting it as constraints in board file(for configurable
regulators) and set_machine_constraints() will take care of setting it on
hardware by calling(the provided) .set_ramp_delay() operation(callback).
	Second, by setting it as data in regulator_desc(as fixed/default
ramp_delay rate) for a regulator in driver.

regulator_set_voltage_time_sel() will give preference to
constraints-&gt;ramp_delay while reading ramp_delay rate for regulator. Similarly
users should also take care accordingly while refering ramp_delay rate(in case
of implementing their private .set_voltage_time_sel() callbacks for different
regulators).

[Rewrote subject for 80 columns -- broonie]

Signed-off-by: Yadwinder Singh Brar &lt;yadi.brar@samsung.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: Add generic DT parsing for regulators</title>
<updated>2012-05-04T12:25:15Z</updated>
<author>
<name>Thierry Reding</name>
</author>
<published>2012-04-26T14:52:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1c8fa58f4750e9ad722fbf899866c312ffabab67'/>
<id>urn:sha1:1c8fa58f4750e9ad722fbf899866c312ffabab67</id>
<content type='text'>
Looking up init data for regulators found on chips is a common operation
that can be handled in a generic way. The new helper function introduced
by this patch looks up the children of a given node by names specified
in a match table and fills that match table with information parsed from
the DT.

This is based on work by Rhyland Klein &lt;rklein@nvidia.com&gt;.

Signed-off-by: Thierry Reding &lt;thierry.reding@avionic-design.de&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: Set apply_uV only when min and max voltages are defined</title>
<updated>2012-01-26T11:01:21Z</updated>
<author>
<name>Karol Lewandowski</name>
</author>
<published>2012-01-25T09:31:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8a093049c604ab32d94bcc5baa24f7939d5e3f7b'/>
<id>urn:sha1:8a093049c604ab32d94bcc5baa24f7939d5e3f7b</id>
<content type='text'>
apply_uV is errornously set when regulator is instantiated from device
tree, even when it doesn't contain any voltage constraints.

This commit fixes error:

  machine_constraints_voltage: CHARGER: failed to apply 0uV constraint

for following regulator description in DTS:

  CHARGER {
	regulator-min-microamp = &lt;100000&gt;;
	regulator-max-microamp = &lt;200000&gt;;
  }

Signed-off-by: Karol Lewandowski &lt;k.lewandowsk@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: pass device_node to of_get_regulator_init_data()</title>
<updated>2011-12-05T19:10:17Z</updated>
<author>
<name>Shawn Guo</name>
</author>
<published>2011-12-01T09:21:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d9a861cce10596ae1f10cffefe1ad4519a253475'/>
<id>urn:sha1:d9a861cce10596ae1f10cffefe1ad4519a253475</id>
<content type='text'>
It's not always true that the device_node of regulator can be found
at dev-&gt;of_node at the time when of_get_regulator_init_data() is being
called, because in some cases the regulator nodes in device tree do
not have 'struct device' behind them until regulator_dev gets created
for it by core function regulator_register().

The patch adds device_node as a new parameter to
of_get_regulator_init_data(), so that caller can pass in the node of
regulator directly.

Signed-off-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Cc: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: Liam Girdwood &lt;lrg@ti.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: If a single voltage is set with device tree then set apply_uV</title>
<updated>2011-12-05T18:59:10Z</updated>
<author>
<name>Mark Brown</name>
</author>
<published>2011-12-05T10:58:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ab62aa931ed3512bc67857a03636756b96c78eae'/>
<id>urn:sha1:ab62aa931ed3512bc67857a03636756b96c78eae</id>
<content type='text'>
Otherwise there is no way in the bindings to configure a fixed voltage
via software. It seems reasonable to assume that if the binding explicitly
specifies a voltage we want to actually use that voltage.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
<entry>
<title>regulator: export of_get_regulator_init_data</title>
<updated>2011-11-27T11:29:21Z</updated>
<author>
<name>Axel Lin</name>
</author>
<published>2011-11-26T10:50:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e69af5e9677b1e5bf2a2432747ecd714aa537f2a'/>
<id>urn:sha1:e69af5e9677b1e5bf2a2432747ecd714aa537f2a</id>
<content type='text'>
of_get_regulator_init_data is called in drivers/regulator/fixed.c
which could be a module.

Export of_get_regulator_init_data to fix below build error:
ERROR: "of_get_regulator_init_data" [drivers/regulator/fixed.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

Reported-by: Randy Dunlap &lt;rdunlap@xenotime.net&gt;
Signed-off-by: Axel Lin &lt;axel.lin@gmail.com&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
</content>
</entry>
</feed>
