Messages in this thread |  | | Date | Mon, 20 Oct 2014 13:19:12 +0300 | Subject | Re: [PATCH v8 3/4] gpiolib: add irq_not_threaded flag to gpio_chip | From | Octavian Purdila <> |
| |
On Mon, Oct 20, 2014 at 8:08 AM, Alexandre Courbot <gnurou@gmail.com> wrote: > > On Wed, Oct 15, 2014 at 11:48 PM, Octavian Purdila > <octavian.purdila@intel.com> wrote: > > Some GPIO chips (e.g. the DLN2 USB adapter) have blocking get/set > > operation but do not need a threaded irq handler. > > Sorry if you already explained this (I have been a little bit late > with the GPIO reviews recently), but does this optimization bring a > significant benefit that justifies adding another field in struct > gpio_chip? If so it would be nice to have it in the commit message. If > not, do we need this at all?
Hi Alexandre,
In the case DLN2 USB GPIO adapter the GPIO interrupt is generated in the completion routine of a receive URB, which means that we are in interrupt context. If a threaded irq is used, we would have to schedule work instead of running to interrupt handler directly which is unnecessary and adds latency.
BTW, AFAIC Linus W already merged this patch in his next tree, I am keeping it in this series because it was not pulled in the mfd-next tree.
Thanks, Tavi
|  |