<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/mfd, branch v3.0.56</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/mfd?h=v3.0.56</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/mfd?h=v3.0.56'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-08-15T19:04:30Z</updated>
<entry>
<title>ARM: pxa: remove irq_to_gpio from ezx-pcap driver</title>
<updated>2012-08-15T19:04:30Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2012-08-05T14:58:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9f75ebd871f7f0a613fdb4e1231fbd540916872c'/>
<id>urn:sha1:9f75ebd871f7f0a613fdb4e1231fbd540916872c</id>
<content type='text'>
commit 59ee93a528b94ef4e81a08db252b0326feff171f upstream.

The irq_to_gpio function was removed from the pxa platform
in linux-3.2, and this driver has been broken since.

There is actually no in-tree user of this driver that adds
this platform device, but the driver can and does get enabled
on some platforms.

Without this patch, building ezx_defconfig results in:

drivers/mfd/ezx-pcap.c: In function 'pcap_isr_work':
drivers/mfd/ezx-pcap.c:205:2: error: implicit declaration of function 'irq_to_gpio' [-Werror=implicit-function-declaration]

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Acked-by: Haojian Zhuang &lt;haojian.zhuang@gmail.com&gt;
Cc: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Cc: Daniel Ribeiro &lt;drwyrm@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>random: remove rand_initialize_irq()</title>
<updated>2012-08-15T19:04:28Z</updated>
<author>
<name>Theodore Ts'o</name>
<email>tytso@mit.edu</email>
</author>
<published>2012-07-15T00:27:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b6b847a93be87fc9974d8232984668a5a59754df'/>
<id>urn:sha1:b6b847a93be87fc9974d8232984668a5a59754df</id>
<content type='text'>
commit c5857ccf293968348e5eb4ebedc68074de3dcda6 upstream.

With the new interrupt sampling system, we are no longer using the
timer_rand_state structure in the irq descriptor, so we can stop
initializing it now.

[ Merged in fixes from Sedat to find some last missing references to
  rand_initialize_irq() ]

Signed-off-by: "Theodore Ts'o" &lt;tytso@mit.edu&gt;
Signed-off-by: Sedat Dilek &lt;sedat.dilek@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mfd: wm831x: Feed the device UUID into device_add_randomness()</title>
<updated>2012-08-15T19:04:28Z</updated>
<author>
<name>Mark Brown</name>
<email>broonie@opensource.wolfsonmicro.com</email>
</author>
<published>2012-07-05T20:23:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f99ef862a7235bb06e963bd99e3c4287f5b8f6fd'/>
<id>urn:sha1:f99ef862a7235bb06e963bd99e3c4287f5b8f6fd</id>
<content type='text'>
commit 27130f0cc3ab97560384da437e4621fc4e94f21c upstream.

wm831x devices contain a unique ID value. Feed this into the newly added
device_add_randomness() to add some per device seed data to the pool.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>random: make 'add_interrupt_randomness()' do something sane</title>
<updated>2012-08-15T19:04:12Z</updated>
<author>
<name>Theodore Ts'o</name>
<email>tytso@mit.edu</email>
</author>
<published>2012-07-02T11:52:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=aa88dea2270f685349ab7b92169600452fe73b62'/>
<id>urn:sha1:aa88dea2270f685349ab7b92169600452fe73b62</id>
<content type='text'>
commit 775f4b297b780601e61787b766f306ed3e1d23eb upstream.

We've been moving away from add_interrupt_randomness() for various
reasons: it's too expensive to do on every interrupt, and flooding the
CPU with interrupts could theoretically cause bogus floods of entropy
from a somewhat externally controllable source.

This solves both problems by limiting the actual randomness addition
to just once a second or after 64 interrupts, whicever comes first.
During that time, the interrupt cycle data is buffered up in a per-cpu
pool.  Also, we make sure the the nonblocking pool used by urandom is
initialized before we start feeding the normal input pool.  This
assures that /dev/urandom is returning unpredictable data as soon as
possible.

(Based on an original patch by Linus, but significantly modified by
tytso.)

Tested-by: Eric Wustrow &lt;ewust@umich.edu&gt;
Reported-by: Eric Wustrow &lt;ewust@umich.edu&gt;
Reported-by: Nadia Heninger &lt;nadiah@cs.ucsd.edu&gt;
Reported-by: Zakir Durumeric &lt;zakir@umich.edu&gt;
Reported-by: J. Alex Halderman &lt;jhalderm@umich.edu&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: "Theodore Ts'o" &lt;tytso@mit.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mfd: Clear twl6030 IRQ status register only once</title>
<updated>2012-04-13T15:14:08Z</updated>
<author>
<name>Nishanth Menon</name>
<email>nm@ti.com</email>
</author>
<published>2012-02-23T02:03:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=40788de827b48ddfeda82e1aa401a3d9a7ece136'/>
<id>urn:sha1:40788de827b48ddfeda82e1aa401a3d9a7ece136</id>
<content type='text'>
commit 3f8349e6e98ba0455437724589072523865eae5e upstream.

TWL6030 family of PMIC use a shadow interrupt status register
while kernel processes the current interrupt event.
However, any write(0 or 1) to register INT_STS_A, INT_STS_B or
INT_STS_C clears all 3 interrupt status registers.

Since clear of the interrupt is done on 32k clk, depending on I2C
bus speed, we could in-adverently clear the status of a interrupt
status pending on shadow register in the current implementation.
This is due to the fact that multi-byte i2c write operation into
three seperate status register could result in multiple load
and clear of status and result in lost interrupts.

Instead, doing a single byte write to INT_STS_A register with 0x0
will clear all three interrupt status registers without the related
risk.

Acked-by: Santosh Shilimkar &lt;santosh.shilimkar@ti.com&gt;
Signed-off-by: Nishanth Menon &lt;nm@ti.com&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mfd: Fix cs5535 section mismatch</title>
<updated>2012-03-12T17:33:10Z</updated>
<author>
<name>Christian Gmeiner</name>
<email>christian.gmeiner@gmail.com</email>
</author>
<published>2011-12-13T20:30:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3c75a0e28889e755119ab32310a3385416cd6e7d'/>
<id>urn:sha1:3c75a0e28889e755119ab32310a3385416cd6e7d</id>
<content type='text'>
commit 97e43c983c721a47546e6db3b7711dcd912a6481 upstream.

Silence following warnings:
WARNING: drivers/mfd/cs5535-mfd.o(.data+0x20): Section mismatch in
reference from the variable cs5535_mfd_drv to the function
.devinit.text:cs5535_mfd_probe()
The variable cs5535_mfd_drv references
the function __devinit cs5535_mfd_probe()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

WARNING: drivers/mfd/cs5535-mfd.o(.data+0x28): Section mismatch in
reference from the variable cs5535_mfd_drv to the function
.devexit.text:cs5535_mfd_remove()
The variable cs5535_mfd_drv references
the function __devexit cs5535_mfd_remove()
If the reference is valid then annotate the
variable with __exit* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

Rename the variable from *_drv to *_driver so
modpost ignore the OK references to __devinit/__devexit
functions.

Signed-off-by: Christian Gmeiner &lt;christian.gmeiner@gmail.com&gt;
Acked-by: Andres Salomon &lt;dilinger@queued.net&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mfd: Fix ACPI conflict check</title>
<updated>2012-03-12T17:32:48Z</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2012-02-18T16:54:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d7838b04ecb08709b09063a8ada0aa2d29636c12'/>
<id>urn:sha1:d7838b04ecb08709b09063a8ada0aa2d29636c12</id>
<content type='text'>
commit 81b5482c32769abb6dfb979560dab2f952ba86fa upstream.

The code is currently always checking the first resource of every
device only (several times.) This has been broken since the ACPI check
was added in February 2010 in commit
91fedede0338eb6203cdd618d8ece873fdb7c22c.

Fix the check to run on each resource individually, once.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mfd: Turn on the twl4030-madc MADC clock</title>
<updated>2012-01-06T22:14:11Z</updated>
<author>
<name>Kyle Manna</name>
<email>kyle@kylemanna.com</email>
</author>
<published>2011-08-12T03:33:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cb3b250af580752ed54642e37640daf714b30ad3'/>
<id>urn:sha1:cb3b250af580752ed54642e37640daf714b30ad3</id>
<content type='text'>
commit 3d6271f92e98094584fd1e609a9969cd33e61122 upstream.

Without turning the MADC clock on, no MADC conversions occur.

$ cat /sys/class/hwmon/hwmon0/device/in8_input
[   53.428436] twl4030_madc twl4030_madc: conversion timeout!
cat: read error: Resource temporarily unavailable

Signed-off-by: Kyle Manna &lt;kyle@kylemanna.com&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mfd: Check for twl4030-madc NULL pointer</title>
<updated>2012-01-06T22:14:11Z</updated>
<author>
<name>Kyle Manna</name>
<email>kyle@kylemanna.com</email>
</author>
<published>2011-08-12T03:33:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b5e0e13b29aa292a2ece89a78757a55e85e9e626'/>
<id>urn:sha1:b5e0e13b29aa292a2ece89a78757a55e85e9e626</id>
<content type='text'>
commit d0e84caeb4cd535923884735906e5730329505b4 upstream.

If the twl4030-madc device wasn't registered, and another device, such
as twl4030-madc-hwmon, calls twl4030_madc_conversion() a NULL pointer is
dereferenced.

Signed-off-by: Kyle Manna &lt;kyle@kylemanna.com&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mfd: Copy the device pointer to the twl4030-madc structure</title>
<updated>2012-01-06T22:14:11Z</updated>
<author>
<name>Kyle Manna</name>
<email>kyle@kylemanna.com</email>
</author>
<published>2011-08-12T03:33:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3ad5a4fbba0c5c863b0a42e2a6a5007de76d3102'/>
<id>urn:sha1:3ad5a4fbba0c5c863b0a42e2a6a5007de76d3102</id>
<content type='text'>
commit 66cc5b8e50af87b0bbd0f179d76d2826f4549c13 upstream.

Worst case this fixes the following error:
[   72.086212] (NULL device *): conversion timeout!

Best case it prevents a crash

Signed-off-by: Kyle Manna &lt;kyle@kylemanna.com&gt;
Signed-off-by: Samuel Ortiz &lt;sameo@linux.intel.com&gt;

</content>
</entry>
</feed>
