From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lee Jones Subject: Re: [RESEND v2 04/10] gpio: stmpe: write int status register only when needed Date: Wed, 10 Aug 2016 09:29:22 +0100 Message-ID: <20160810082922.GJ1581@dell> References: <1470814755-19447-1-git-send-email-patrice.chotard@st.com> <1470814755-19447-5-git-send-email-patrice.chotard@st.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1470814755-19447-5-git-send-email-patrice.chotard@st.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: patrice.chotard@st.com Cc: gnurou@gmail.com, amelie.delaunay@st.com, vireshk@kernel.org, linus.walleij@linaro.org, linux-gpio@vger.kernel.org, thierry.reding@gmail.com, kernel@pengutronix.de, dinguyen@opensource.altera.com, shawnguo@kernel.org, shiraz.linux.kernel@gmail.com, linux-arm-kernel@lists.infradead.org List-Id: linux-gpio@vger.kernel.org T24gV2VkLCAxMCBBdWcgMjAxNiwgcGF0cmljZS5jaG90YXJkQHN0LmNvbSB3cm90ZToKCj4gRnJv bTogUGF0cmljZSBDaG90YXJkIDxwYXRyaWNlLmNob3RhcmRAc3QuY29tPgo+IAo+IE9uIFNUTVBF ODAxLzE4MDEgZGF0YXNoZWV0cywgaXQncyBtZW50aW9ubmVkIHdyaXRpbmcKPiBpbiBpbnRlcnJ1 cHQgc3RhdHVzIHJlZ2lzdGVyIGhhcyBubyBlZmZlY3QsIGJpdHMgYXJlCj4gY2xlYXJlZCB3aGVu IHJlYWRpbmcuCj4gCj4gU2lnbmVkLW9mZi1ieTogQW1lbGllIERFTEFVTkFZIDxhbWVsaWUuZGVs YXVuYXlAc3QuY29tPgo+IFNpZ25lZC1vZmYtYnk6IFBhdHJpY2UgQ2hvdGFyZCA8cGF0cmljZS5j aG90YXJkQHN0LmNvbT4KPiBSZXZpZXdlZC1ieTogTGludXMgV2FsbGVpaiA8bGludXMud2FsbGVp akBsaW5hcm8ub3JnPgo+IC0tLQo+ICBkcml2ZXJzL2dwaW8vZ3Bpby1zdG1wZS5jIHwgMTIgKysr KysrKystLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25z KC0pCgpBcHBsaWVkLCB0aGFua3MuCgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwaW8vZ3Bpby1z dG1wZS5jIGIvZHJpdmVycy9ncGlvL2dwaW8tc3RtcGUuYwo+IGluZGV4IGJmYzkxOGMuLjI3ODli ZGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncGlvL2dwaW8tc3RtcGUuYwo+ICsrKyBiL2RyaXZl cnMvZ3Bpby9ncGlvLXN0bXBlLmMKPiBAQCAtMzU1LDEyICszNTUsMTYgQEAgc3RhdGljIGlycXJl dHVybl90IHN0bXBlX2dwaW9faXJxKGludCBpcnEsIHZvaWQgKmRldikKPiAgCQkJc3RhdCAmPSB+ KDEgPDwgYml0KTsKPiAgCQl9Cj4gIAo+IC0JCXN0bXBlX3JlZ193cml0ZShzdG1wZSwgc3RhdG1z YnJlZyArIGksIHN0YXR1c1tpXSk7Cj4gLQo+IC0JCS8qIEVkZ2UgZGV0ZWN0IHJlZ2lzdGVyIGlz IG5vdCBwcmVzZW50IG9uIDgwMSBhbmQgMTgwMSAqLwo+IC0JCWlmIChzdG1wZS0+cGFydG51bSAh PSBTVE1QRTgwMSB8fCBzdG1wZS0+cGFydG51bSAhPSBTVE1QRTE4MDEpCj4gKwkJLyoKPiArCQkg KiBpbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyIHdyaXRlIGhhcyBubyBlZmZlY3Qgb24KPiArCQkg KiA4MDEgYW5kIDE4MDEsIGJpdHMgYXJlIGNsZWFyZWQgd2hlbiByZWFkLgo+ICsJCSAqIEVkZ2Ug ZGV0ZWN0IHJlZ2lzdGVyIGlzIG5vdCBwcmVzZW50IG9uIDgwMSBhbmQgMTgwMQo+ICsJCSAqLwo+ ICsJCWlmIChzdG1wZS0+cGFydG51bSAhPSBTVE1QRTgwMSB8fCBzdG1wZS0+cGFydG51bSAhPSBT VE1QRTE4MDEpIHsKPiArCQkJc3RtcGVfcmVnX3dyaXRlKHN0bXBlLCBzdGF0bXNicmVnICsgaSwg c3RhdHVzW2ldKTsKPiAgCQkJc3RtcGVfcmVnX3dyaXRlKHN0bXBlLCBzdG1wZS0+cmVnc1tTVE1Q RV9JRFhfR1BFRFJfTVNCXQo+ICAJCQkJCSsgaSwgc3RhdHVzW2ldKTsKPiArCQl9Cj4gIAl9Cj4g IAo+ICAJcmV0dXJuIElSUV9IQU5ETEVEOwoKLS0gCkxlZSBKb25lcwpMaW5hcm8gU1RNaWNyb2Vs ZWN0cm9uaWNzIExhbmRpbmcgVGVhbSBMZWFkCkxpbmFyby5vcmcg4pSCIE9wZW4gc291cmNlIHNv ZnR3YXJlIGZvciBBUk0gU29DcwpGb2xsb3cgTGluYXJvOiBGYWNlYm9vayB8IFR3aXR0ZXIgfCBC bG9nCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51 eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1h cm0ta2VybmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: lee.jones@linaro.org (Lee Jones) Date: Wed, 10 Aug 2016 09:29:22 +0100 Subject: [RESEND v2 04/10] gpio: stmpe: write int status register only when needed In-Reply-To: <1470814755-19447-5-git-send-email-patrice.chotard@st.com> References: <1470814755-19447-1-git-send-email-patrice.chotard@st.com> <1470814755-19447-5-git-send-email-patrice.chotard@st.com> Message-ID: <20160810082922.GJ1581@dell> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, 10 Aug 2016, patrice.chotard at st.com wrote: > From: Patrice Chotard > > On STMPE801/1801 datasheets, it's mentionned writing > in interrupt status register has no effect, bits are > cleared when reading. > > Signed-off-by: Amelie DELAUNAY > Signed-off-by: Patrice Chotard > Reviewed-by: Linus Walleij > --- > drivers/gpio/gpio-stmpe.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) Applied, thanks. > diff --git a/drivers/gpio/gpio-stmpe.c b/drivers/gpio/gpio-stmpe.c > index bfc918c..2789bdc 100644 > --- a/drivers/gpio/gpio-stmpe.c > +++ b/drivers/gpio/gpio-stmpe.c > @@ -355,12 +355,16 @@ static irqreturn_t stmpe_gpio_irq(int irq, void *dev) > stat &= ~(1 << bit); > } > > - stmpe_reg_write(stmpe, statmsbreg + i, status[i]); > - > - /* Edge detect register is not present on 801 and 1801 */ > - if (stmpe->partnum != STMPE801 || stmpe->partnum != STMPE1801) > + /* > + * interrupt status register write has no effect on > + * 801 and 1801, bits are cleared when read. > + * Edge detect register is not present on 801 and 1801 > + */ > + if (stmpe->partnum != STMPE801 || stmpe->partnum != STMPE1801) { > + stmpe_reg_write(stmpe, statmsbreg + i, status[i]); > stmpe_reg_write(stmpe, stmpe->regs[STMPE_IDX_GPEDR_MSB] > + i, status[i]); > + } > } > > return IRQ_HANDLED; -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org ? Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog