<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/mfd/asic3.c, branch linux-4.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-06-04T07:44:17Z</updated>
<entry>
<title>mfd: asic3: Fix broken MMC card detection</title>
<updated>2018-06-04T07:44:17Z</updated>
<author>
<name>Robert Jarzmik</name>
</author>
<published>2018-05-26T09:31:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4eb1d7fcbc80ec3fc2d628ad8ab7324d8837205e'/>
<id>urn:sha1:4eb1d7fcbc80ec3fc2d628ad8ab7324d8837205e</id>
<content type='text'>
The MMC framework requires the ocr_mask to be provided. Without it, the
SD card is not detected, especially on the hx4700 platform.

Signed-off-by: Robert Jarzmik &lt;robert.jarzmik@free.fr&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: asic3: Make use of raw_spinlock variants</title>
<updated>2017-04-27T08:25:05Z</updated>
<author>
<name>Julia Cartwright</name>
</author>
<published>2017-03-21T22:43:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=93ad4471912029f7519c23da56538a5d54552124'/>
<id>urn:sha1:93ad4471912029f7519c23da56538a5d54552124</id>
<content type='text'>
The asic3 mfd driver currently implements an irq_chip for handling
interrupts; due to how irq_chip handling is done, it's necessary for the
irq_chip methods to be invoked from hardirq context, even on a a
real-time kernel.  Because the spinlock_t type becomes a "sleeping"
spinlock w/ RT kernels, it is not suitable to be used with irq_chips.

A quick audit of the operations under the lock reveal that they do only
minimal, bounded work, and are therefore safe to do under a raw spinlock.

Signed-off-by: Julia Cartwright &lt;julia@ni.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: asic3: Use gpiochip data pointer</title>
<updated>2016-04-19T06:58:06Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2016-03-30T08:48:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=082cc468385dbc7bbdc234bf6f2577e64fc00bbb'/>
<id>urn:sha1:082cc468385dbc7bbdc234bf6f2577e64fc00bbb</id>
<content type='text'>
This makes the driver use the data pointer added to the gpio_chip
to store a pointer to the state container instead of relying on
container_of().

Cc: Paul Parsons &lt;lost.distance@yahoo.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: asic3: Fix a plethora of Checkpatch errors and warnings</title>
<updated>2016-01-14T08:44:00Z</updated>
<author>
<name>Lee Jones</name>
</author>
<published>2015-10-28T14:11:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d43c4290ff5c37e5ba8702301ad51786a37979ed'/>
<id>urn:sha1:d43c4290ff5c37e5ba8702301ad51786a37979ed</id>
<content type='text'>
ERROR: Macros with complex values should be enclosed in parentheses
+#define INIT_CDEX(_name, _rate)        \
+       [ASIC3_CLOCK_##_name] = {               \
+               .cdex = CLOCK_CDEX_##_name,     \
+               .rate = _rate,                  \
+       }

WARNING: line over 80 characters
+                                                           ASIC3_GPIO_INT_STATUS);

WARNING: void function return statements are not generally useful
+       return;
+}

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+       msleep(1);

WARNING: msleep &lt; 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt
+               msleep(1);
WARNING: line over 80 characters
+               asic-&gt;tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE &gt;&gt; asic-&gt;bus_shift) +

WARNING: Prefer [subsystem eg: netdev]_err([subsystem]dev, ... then dev_err(dev, ... then p
r_err(...  to printk(KERN_ERR ...
+               printk(KERN_ERR "kzalloc failed\n");

WARNING: Possible unnecessary 'out of memory' message
+       if (asic == NULL) {
+               printk(KERN_ERR "kzalloc failed\n");

WARNING: Missing a blank line after declarations
+       int retval = 0;
+       retval = platform_driver_probe(&amp;asic3_device_driver, asic3_probe);

total: 1 errors, 13 warnings, 1081 lines checked

Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: asic3: Be sure to clamp return value</title>
<updated>2016-01-14T08:43:43Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2015-12-22T14:47:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f8e3a514bf98a94255bd1534a21aebaf795b7a13'/>
<id>urn:sha1:f8e3a514bf98a94255bd1534a21aebaf795b7a13</id>
<content type='text'>
As we want gpio_chip .get() calls to be able to return negative
error codes and propagate to drivers, we need to go over all
drivers and make sure their return values are clamped to [0,1].
We do this by using the ret = !!(val) design pattern.

Cc: Paul Parsons &lt;lost.distance@yahoo.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>genirq: Remove irq argument from irq flow handlers</title>
<updated>2015-09-16T13:47:51Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2015-09-14T08:42:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bd0b9ac405e1794d72533c3d487aa65b6b955a0c'/>
<id>urn:sha1:bd0b9ac405e1794d72533c3d487aa65b6b955a0c</id>
<content type='text'>
Most interrupt flow handlers do not use the irq argument. Those few
which use it can retrieve the irq number from the irq descriptor.

Remove the argument.

Search and replace was done with coccinelle and some extra helper
scripts around it. Thanks to Julia for her help!

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Julia Lawall &lt;Julia.Lawall@lip6.fr&gt;
Cc: Jiang Liu &lt;jiang.liu@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>mfd: Kill off set_irq_flags usage</title>
<updated>2015-08-11T14:09:01Z</updated>
<author>
<name>Rob Herring</name>
</author>
<published>2015-07-27T20:55:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9bd09f345e62257958342f712efef644494274fb'/>
<id>urn:sha1:9bd09f345e62257958342f712efef644494274fb</id>
<content type='text'>
set_irq_flags is ARM specific with custom flags which have genirq
equivalents. Convert drivers to use the genirq interfaces directly, so we
can kill off set_irq_flags. The translation of flags is as follows:

IRQF_VALID -&gt; !IRQ_NOREQUEST
IRQF_PROBE -&gt; !IRQ_NOPROBE
IRQF_NOAUTOEN -&gt; IRQ_NOAUTOEN

For IRQs managed by an irqdomain, the irqdomain core code handles clearing
and setting IRQ_NOREQUEST already, so there is no need to do this in
.map() functions and we can simply remove the set_irq_flags calls. Some
users also modify IRQ_NOPROBE and this has been maintained although it
is not clear that is really needed. There appears to be a great deal of
blind copy and paste of this code.

Signed-off-by: Rob Herring &lt;robh@kernel.org&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd/asic3: Fix race in installing chained IRQ handler</title>
<updated>2015-06-25T09:56:52Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2015-06-21T18:16:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c30e30478c74e5be2fa3bbe954084a31f0d60570'/>
<id>urn:sha1:c30e30478c74e5be2fa3bbe954084a31f0d60570</id>
<content type='text'>
Fix a race where a pending interrupt could be received and the handler
called before the handler's data has been setup, by converting to
irq_set_chained_handler_and_data().

Search and conversion was done with coccinelle:

@@
expression E1, E2, E3;
@@
(
-if (irq_set_chained_handler(E1, E3) != 0)
-   BUG();
|
-irq_set_chained_handler(E1, E3);
)
-irq_set_handler_data(E1, E2);
+irq_set_chained_handler_and_data(E1, E3, E2);

@@
expression E1, E2, E3;
@@
(
-if (irq_set_chained_handler(E1, E3) != 0)
-   BUG();
...
|
-irq_set_chained_handler(E1, E3);
...
)
-irq_set_handler_data(E1, E2);
+irq_set_chained_handler_and_data(E1, E3, E2);

Reported-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Julia Lawall &lt;Julia.Lawall@lip6.fr&gt;
Cc: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Cc: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>driver:gpio remove all usage of gpio_remove retval in driver</title>
<updated>2014-09-18T18:03:10Z</updated>
<author>
<name>abdoulaye berthe</name>
</author>
<published>2014-07-12T20:30:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=88d5e520aa9701eb3e4f46165e02097cc03d363a'/>
<id>urn:sha1:88d5e520aa9701eb3e4f46165e02097cc03d363a</id>
<content type='text'>
this remove all reference to gpio_remove retval in all driver
except pinctrl and gpio. the same thing is done for gpio and
pinctrl in two different patches.

Signed-off-by: Abdoulaye Berthe &lt;berthe.ab@gmail.com&gt;
Acked-by: Michael Büsch &lt;m@bues.ch&gt;
Acked-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
Acked-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Acked-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: asic3: Fix potential null pointer dereference</title>
<updated>2014-07-09T13:58:01Z</updated>
<author>
<name>Sachin Kamat</name>
</author>
<published>2014-06-10T10:00:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=44b61a9f23dabf27303d32b4947f017f69ca90f6'/>
<id>urn:sha1:44b61a9f23dabf27303d32b4947f017f69ca90f6</id>
<content type='text'>
We previously assumed 'mem_sdio' could be null but it is
dereferenced in ioremap(). Add a check to avoid a potential
null pointer dereference error.

Signed-off-by: Sachin Kamat &lt;sachin.kamat@linaro.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
</feed>
