lkml.org 
[lkml]   [2015]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] gpiolib: debugfs: display gpios requested as irq only
Hi Johan,
On 05/18/2015 02:02 PM, Johan Hovold wrote:
> On Fri, May 15, 2015 at 04:25:21PM +0300, grygorii.strashko@linaro.org wrote:
>> From: Grygorii Strashko <grygorii.strashko@linaro.org>
>>
>> Now GPIOs, wich are requested as IRQ only, will not be displayed
>> through GPIO debugfs. For example:
>> # cat /proc/interrupts
>> CPU0 CPU1
>> ...
>> 209: 0 0 4805d000.gpio 11 Edge 0-0021
>>
>> # cat /debug/gpio
>> ...
>> GPIOs 160-191, platform/4805d000.gpio, gpio:
>> <--- no info about gpio used as IRQ only here
>>
>> GPIOs 192-223, platform/48051000.gpio, gpio:
>> gpio-203 (vtt_fixed ) out hi
>> ...
>>
>> Hence, improve GPIO debugfs code to show such kind of gpio and print
>> IRQ number also. In addition, add marker "requested" for GPIOs wich
>> were requested by using gpioX_request().
>>
>> After this patch sys/kernel/debug/gpio will produce following output:
>>
>> # cat /debug/gpio
>> ...
>> GPIOs 160-191, platform/4805d000.gpio, gpio:
>> gpio-171 ((null) ) in hi IRQ209
>>
>> GPIOs 192-223, platform/48051000.gpio, gpio:
>> gpio-203 (vtt_fixed ) out hi requested
>
> This is backwards. All gpios *should* be requested. *If* we are to
> include not-requested gpios in the debug output, then it is those pins
> that need to be marked as not-requested.

Sry, but I didn't fully understand your point here ( - Why is it backward?
Now GPIO can be requested in three ways:
1) As pure GPIO (gpioX_request())
2) As pure GPIO IRQ, especially in DT boot case.
DT:
interrupt-parent = <&gpio6>;
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
Code:
platform_get_irq() or of_irq_get()
request_irq()
3) combination of (1) and (2) with one restriction
- GPIO direction should be 'In' and can't be changed.

Personally I'm using this case for debug purposes to do a fast check of GPIO pin state
through GPIO sysfs (GPIO export) when such GPIO is used as GPIO IRQ in some driver
and I don't see that corresponding IRQ is triggered as expected.

So, this patch just adds missed information in GPIO debugfs for the case (2) in general.

Of course, format of the marker "requested" is discussable. Could be:
- "requested" --> "not-requested"
- "I R" or "I G" where I - IRQ, G - GPIO, R - requested
- etc.

>
> The irq-number mapping could perhaps be useful, but it should go in a
> separate patch. I'd suggest adding a '-' before the irq-number (e.g.
> "IRQ-209").

I've thought about this, but finally decided not to split it.
Could be done, if you insist )

--
regards,
-grygorii


\
 
 \ /
  Last update: 2015-05-18 15:21    [W:0.074 / U:0.504 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site