<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/mfd/stmpe.c, branch linux-5.6.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.6.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.6.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2019-06-19T15:09:10Z</updated>
<entry>
<title>treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 464</title>
<updated>2019-06-19T15:09:10Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2019-06-04T08:10:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1f67b599f8b8f976d2ea1a447c0f5e768a78ae8e'/>
<id>urn:sha1:1f67b599f8b8f976d2ea1a447c0f5e768a78ae8e</id>
<content type='text'>
Based on 1 normalized pattern(s):

  license terms gnu general public license version 2

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 11 file(s).

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Allison Randal &lt;allison@lohutok.net&gt;
Reviewed-by: Enrico Weigelt &lt;info@metux.net&gt;
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190604081202.373849232@linutronix.de
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branches 'ib-mfd-iio-input-5.1', 'ib-mfd-input-watchdog-5.1' and 'ib-mfd-platform-5.1' into ibs-for-mfd-merged</title>
<updated>2019-02-01T08:20:04Z</updated>
<author>
<name>Lee Jones</name>
</author>
<published>2019-02-01T08:20:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fa56a62d01496252aabfeca0a5903864690951ac'/>
<id>urn:sha1:fa56a62d01496252aabfeca0a5903864690951ac</id>
<content type='text'>
</content>
</entry>
<entry>
<title>mfd: stmpe: Preparations for STMPE ADC driver</title>
<updated>2019-01-16T12:36:12Z</updated>
<author>
<name>Stefan Agner</name>
</author>
<published>2018-12-21T13:46:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6377cfa3b857ced301f2079ac97de6c19057ab65'/>
<id>urn:sha1:6377cfa3b857ced301f2079ac97de6c19057ab65</id>
<content type='text'>
This prepares the MFD for the STMPE ADC driver. This commit introduces
devicetree settings that are used by the ADC and adds an init function.
Common ADC settings that are shared with the touchscreen driver can now
reside in the overlying MFD.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
Signed-off-by: Max Krummenacher &lt;max.krummenacher@toradex.com&gt;
Signed-off-by: Philippe Schenker &lt;philippe.schenker@toradex.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: Use of_node_name_eq() for node name comparisons</title>
<updated>2019-01-03T08:32:42Z</updated>
<author>
<name>Rob Herring</name>
</author>
<published>2018-12-05T19:50:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=38df91cc0b82d053234accf4429eafd2f5a4d401'/>
<id>urn:sha1:38df91cc0b82d053234accf4429eafd2f5a4d401</id>
<content type='text'>
Convert string compares of DT node names to use of_node_name_eq() helper
instead. This removes direct access to the node name pointer.

Signed-off-by: Rob Herring &lt;robh@kernel.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: stmpe: Fix bit clearing on STMPE1600</title>
<updated>2017-04-27T08:25:07Z</updated>
<author>
<name>Hugues Fruchet</name>
</author>
<published>2017-03-31T08:12:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b97eef5d77b53662b06603c1b18e21968029c925'/>
<id>urn:sha1:b97eef5d77b53662b06603c1b18e21968029c925</id>
<content type='text'>
GPIO bits clearing on pins assigned to STMPE1600
had no effects due to missing "clear registers"
settings within stmpe1600_regs[].
STMPE1600 does not have dedicated "clear registers",
but single "set/clear registers", hence stmpe1600_regs[]
"clear registers" (STMPE_IDX_GPCR_XXX) must be set to
same value as "set registers" (STMPE_IDX_GPSR_XXX), ie
STMPE1600_REG_GPSR_XXX.

Signed-off-by: Hugues Fruchet &lt;hugues.fruchet@st.com&gt;
Reviewed-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: stmpe: Fix RESET regression on STMPE2401</title>
<updated>2016-11-16T09:50:33Z</updated>
<author>
<name>Linus Walleij</name>
</author>
<published>2016-11-01T09:22:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f40584200bc4af7aa4399635b9ac213c62a13ae7'/>
<id>urn:sha1:f40584200bc4af7aa4399635b9ac213c62a13ae7</id>
<content type='text'>
Since commit c4dd1ba355aae2bc3d1213da6c66c53e3c31e028
("mfd: stmpe: Add reset support for all STMPE variant")
we're resetting the STMPE expanders before use.

This caused a regression on the STMP2401 on the Nomadik
NHK8815:

stmpe-i2c 0-0043: stmpe2401 detected, chip id: 0x101
nmk-i2c 101f8000.i2c0: write to slave 0x43 timed out
nmk-i2c 101f8000.i2c0: no ack received after address transmission
stmpe-i2c 0-0044: stmpe2401 detected, chip id: 0x101
nmk-i2c 101f8000.i2c0: write to slave 0x44 timed out
nmk-i2c 101f8000.i2c0: no ack received after address transmission

It turns out that we start to poll for the reset bit to
go low again too quickly: the STMPE2401 is not yet online and
ready to be asked for the status of the RESET bit.

By introducing a 10ms delay before starting to hammer
the register for information, we get back to normal:

stmpe-i2c 0-0043: stmpe2401 detected, chip id: 0x101
stmpe-i2c 0-0044: stmpe2401 detected, chip id: 0x101

Cc: stable@vger.kernel.org
Cc: Amelie Delaunay &lt;amelie.delaunay@st.com&gt;
Fixes: c4dd1ba355aa ("mfd: stmpe: Add reset support for all STMPE variant")
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: Add STMPE1600 support</title>
<updated>2016-08-10T08:25:18Z</updated>
<author>
<name>Patrice Chotard</name>
</author>
<published>2016-08-10T07:39:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6bb9f0d93399cbde14fc6a1532341a14a85d2df4'/>
<id>urn:sha1:6bb9f0d93399cbde14fc6a1532341a14a85d2df4</id>
<content type='text'>
STMPE1600 is a 16-bit port expander.
Datasheet is available here :
http://www2.st.com/content/st_com/en/products/interfaces-and-transceivers/
i-o-expanders-and-level-translators/i-o-expanders/stmpe1600.html

Signed-off-by: Amelie DELAUNAY &lt;amelie.delaunay@st.com&gt;
Signed-off-by: Patrice Chotard &lt;patrice.chotard@st.com&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: stmpe: Rework registers access</title>
<updated>2016-08-10T08:24:39Z</updated>
<author>
<name>Patrice Chotard</name>
</author>
<published>2016-08-10T07:39:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=897ac6674c64ca94df5b70ea5c6815a296e1d32a'/>
<id>urn:sha1:897ac6674c64ca94df5b70ea5c6815a296e1d32a</id>
<content type='text'>
this update allows to use registers map as following :
regs[reg_index + offset] instead of
regs[reg_index] + offset

This makes code clearer and will facilitate the addition of STMPE1600
on which LSB and MSB registers are respectively located at addr and addr + 1.
Despite for all others STMPE variant, LSB and MSB registers are respectively
located in reverse order at addr + 1 and addr.

For variant which have 3 registers's bank, we use LSB,CSB and MSB indexes
which contains respectively LSB (or LOW), CSB (or MID) and MSB (or HIGH)
register addresses (STMPE1801/STMPE24xx).
For variant which have 2 registers's bank, we use LSB and CSB indexes only.
In this case the CSB index contains the MSB regs address (STMPE 1601).

Signed-off-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Reviewed-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: stmpe: Use generic bit mask name</title>
<updated>2016-08-10T08:24:29Z</updated>
<author>
<name>Patrice Chotard</name>
</author>
<published>2016-08-10T07:39:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c16bee7897bffc3814390c9279bf01137a6bd595'/>
<id>urn:sha1:c16bee7897bffc3814390c9279bf01137a6bd595</id>
<content type='text'>
In order to prepare the ground to STMPE1600,
as STMPE1600's SYS_CTRL register has the same layout as
STMPE801 variant, unify STMPExxx_REG_SYS_CTRL_RESET/INT_EN/INT_HI
bit masks to more generic STMPE_SYS_CTRL_RESET/INT_EN/INT_HI

Signed-off-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
<entry>
<title>mfd: stmpe: Add reset support for all STMPE variant</title>
<updated>2016-08-10T08:23:33Z</updated>
<author>
<name>Patrice Chotard</name>
</author>
<published>2016-08-10T07:39:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c4dd1ba355aae2bc3d1213da6c66c53e3c31e028'/>
<id>urn:sha1:c4dd1ba355aae2bc3d1213da6c66c53e3c31e028</id>
<content type='text'>
Reset was only implemented for STMPE1801 variant despite
all variant have a SOFT_RESET bit.

For STMPE2401/2403/801/1601/1801 SOFT_RESET bit is bit 7
of SYS_CTRL register.
For STMPE610/811 (which have the same variant id) SOFT_RESET
bit is bit 1 of SYS_CTRL register.

Signed-off-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
</content>
</entry>
</feed>
