Thread (3 messages) 3 messages, 3 authors, 2009-11-27

Re: [PATCH v2 1/2] Input: gpio-keys - allow platform to specify exact irq flags

From: Mika Westerberg <hidden>
Date: 2009-11-27 10:58:51

Possibly related (same subject, not in this thread)

On Thu, Nov 26, 2009 at 07:35:07AM +0100, ext Dmitry Torokhov wrote:
On Tue, Nov 24, 2009 at 07:39:28PM +0100, Ferenc Wagner wrote:
quoted
Mika Westerberg [off-list ref] writes:
quoted
So I'll try to implement this gpio-keys muting so that it allows
also multiple buttons to share single IRQ line.
Thanks.  But you'd better wait for Dmitry's response, because I'm by no
means authoritative in this business.
I would not refuse a reasonable patch as long as there is a use case for
it. The only think is that I would prefer to keep compatibility with the
current format of the platform data, otherwise we will screw up embedded
guys that are currently using the driver. But if compatibility results
in too ugly code then I reserve the right to invoke "out of tree drivers
- don't care" card ;)
How about if we just add one field to struct gpio_keys_button?
	...
	bool can_disable;

Then gpio_keys uses this field when it decides what irqflags it
is going to pass to request_irq() (we don't allow platform data
to pass exact flags). So in case of can_disable is set, we don't
pass IRQF_SHARED to request_irq().

When support for sharing single IRQ between multiple buttons arrives
this field is still valid and we just need to take care of disable IRQ
line only when all buttons that share it, are disabled.

This won't break existing users of gpio_keys and allows future
extension to support case of multiple buttons sharing single
IRQ line, right?

Thanks,
MW
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help