All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiada Wang <jiada_wang@mentor.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: <nick@shmanahar.org>, <linux-input@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <george_davis@mentor.com>
Subject: Re: [PATCH v1 03/63] Input: atmel_mxt_ts - only read messages in mxt_acquire_irq() when necessary
Date: Wed, 21 Aug 2019 22:26:31 +0900	[thread overview]
Message-ID: <558e1227-7671-0838-d4e0-f234833c0973@mentor.com> (raw)
In-Reply-To: <20190816171622.GF121898@dtor-ws>

Hi Dmitry

On 2019/08/17 2:16, Dmitry Torokhov wrote:
> On Fri, Aug 16, 2019 at 05:28:52PM +0900, Jiada Wang wrote:
>> From: Nick Dyer <nick.dyer@itdev.co.uk>
>>
>> The workaround of reading all messages until an invalid is received is a
>> way of forcing the CHG line high, which means that when using
>> edge-triggered interrupts the interrupt can be acquired.
>>
>> With level-triggered interrupts the workaround is unnecessary.
>>
>> Also, most recent maXTouch chips have a feature called RETRIGEN which, when
>> enabled, reasserts the interrupt line every cycle if there are messages
>> waiting. This also makes the workaround unnecessary.
>>
>> Note: the RETRIGEN feature is only in some firmware versions/chips, it's
>> not valid simply to enable the bit.
> 
> Instead of trying to work around of misconfiguration for IRQ/firmware,
> can we simply error out of probe if we see a level interrupt with
> !RETRIGEN firmware?
> 
I think for old firmwares, which doesn't support RETRIGEN feature, this 
workaround is needed, otherwise we will break all old firmwares, which 
configured with edge-triggered IRQ

for recent firmwares which support RETRIGEN feature, we can fail probe, 
if RETRIGEN is not enabled, and configured with edge-triggered IRQ.

what is your thought?

Thanks,
Jiada
> Thanks.
> 

WARNING: multiple messages have this Message-ID (diff)
From: Jiada Wang <jiada_wang@mentor.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: nick@shmanahar.org, linux-input@vger.kernel.org,
	linux-kernel@vger.kernel.org, george_davis@mentor.com
Subject: Re: [PATCH v1 03/63] Input: atmel_mxt_ts - only read messages in mxt_acquire_irq() when necessary
Date: Wed, 21 Aug 2019 22:26:31 +0900	[thread overview]
Message-ID: <558e1227-7671-0838-d4e0-f234833c0973@mentor.com> (raw)
In-Reply-To: <20190816171622.GF121898@dtor-ws>

Hi Dmitry

On 2019/08/17 2:16, Dmitry Torokhov wrote:
> On Fri, Aug 16, 2019 at 05:28:52PM +0900, Jiada Wang wrote:
>> From: Nick Dyer <nick.dyer@itdev.co.uk>
>>
>> The workaround of reading all messages until an invalid is received is a
>> way of forcing the CHG line high, which means that when using
>> edge-triggered interrupts the interrupt can be acquired.
>>
>> With level-triggered interrupts the workaround is unnecessary.
>>
>> Also, most recent maXTouch chips have a feature called RETRIGEN which, when
>> enabled, reasserts the interrupt line every cycle if there are messages
>> waiting. This also makes the workaround unnecessary.
>>
>> Note: the RETRIGEN feature is only in some firmware versions/chips, it's
>> not valid simply to enable the bit.
> 
> Instead of trying to work around of misconfiguration for IRQ/firmware,
> can we simply error out of probe if we see a level interrupt with
> !RETRIGEN firmware?
> 
I think for old firmwares, which doesn't support RETRIGEN feature, this 
workaround is needed, otherwise we will break all old firmwares, which 
configured with edge-triggered IRQ

for recent firmwares which support RETRIGEN feature, we can fail probe, 
if RETRIGEN is not enabled, and configured with edge-triggered IRQ.

what is your thought?

Thanks,
Jiada
> Thanks.
> 

  reply	other threads:[~2019-08-21 13:26 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-16  8:28 [PATCH v1 00/63] atmel_mxt_ts misc Jiada Wang
2019-08-16  8:28 ` Jiada Wang
2019-08-16  8:28 ` [PATCH v1 01/63] Input: introduce input_mt_report_slot_inactive Jiada Wang
2019-08-16  8:28   ` Jiada Wang
2019-08-16 17:12   ` Dmitry Torokhov
2019-08-21  9:13     ` Jiada Wang
2019-08-21  9:13       ` Jiada Wang
2019-08-16  8:28 ` [PATCH v1 02/63] Input: atmel_mxt_ts - rework sysfs init/remove Jiada Wang
2019-08-16  8:28   ` Jiada Wang
2019-08-16  8:28 ` [PATCH v1 03/63] Input: atmel_mxt_ts - only read messages in mxt_acquire_irq() when necessary Jiada Wang
2019-08-16  8:28   ` Jiada Wang
2019-08-16 17:16   ` Dmitry Torokhov
2019-08-21 13:26     ` Jiada Wang [this message]
2019-08-21 13:26       ` Jiada Wang
2019-08-21 17:54       ` Dmitry Torokhov
2019-08-22  3:37         ` Jiada Wang
2019-08-22  3:37           ` Jiada Wang
2019-08-16  8:28 ` [PATCH v1 04/63] Input: atmel_mxt_ts - split large i2c transfers into blocks Jiada Wang
2019-08-16  8:28   ` Jiada Wang
2019-08-16 17:18   ` Dmitry Torokhov
2019-08-22  5:24     ` Jiada Wang
2019-08-22  5:24       ` Jiada Wang
2019-08-16 17:32 ` [PATCH v1 00/63] atmel_mxt_ts misc Dmitry Torokhov
2019-08-19  9:29   ` Jiada Wang
2019-08-19  9:29     ` Jiada Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=558e1227-7671-0838-d4e0-f234833c0973@mentor.com \
    --to=jiada_wang@mentor.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=george_davis@mentor.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nick@shmanahar.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.