All of lore.kernel.org
 help / color / mirror / Atom feed
From: Artem Bityutskiy <dedekind1@gmail.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Mika Westerberg <mika.westerberg@iki.fi>,
	"linux-input@vger.kernel.org" <linux-input@vger.kernel.org>
Subject: Re: [RFC PATCH 1/1] Input: gpio-keys: export gpio key information through sysfs
Date: Wed, 11 Nov 2009 08:50:11 +0200	[thread overview]
Message-ID: <1257922211.21596.823.camel@localhost> (raw)
In-Reply-To: <20091110171945.GA15263@core.coreip.homeip.net>

On Tue, 2009-11-10 at 09:19 -0800, Dmitry Torokhov wrote:
> On Tue, Nov 10, 2009 at 01:04:19PM +0200, Artem Bityutskiy wrote:
> > On Mon, 2009-11-09 at 09:18 -0800, Dmitry Torokhov wrote:
> > > 
> > > I am not sure at what level these attributes must be created. While the
> > > easiest way is indeed per-input device attribute (for that particular
> > > driver) the functionality does not really have anything to do with
> > > input... I'd probably prefer having this attribute elsewhere, maybe
> > > we should extend /sys/class/gpio/gpioN for these purposes?
> > > 
> > > > * could you please give an example of how would I switch off, say, the
> > > >   SW_CAMERA_LENS_COVER gpio by the keycode.
> > > 
> > > If the code lies in your driver then it is easy (the driver knows the
> > > mapping); otherwsie you'll have to go with GPIO number.
> > 
> > GPIO numbers are bad for us. We want to work with keycodes, and this is
> > input subsystem after all. We do not want to do any perversions like
> > making our user-space figuring out gpio numbers by the keycodes. This is
> > simply wrong and bad interface.
> > 
> > We want to have a simple way for the application to disable any key by
> > key code. This should be as simple as calling one single
> > "enable/disable" ioctl for /dev/input/event2. I do not see how this
> > could be done nicely with sysfs, still.
> > 
> 
> I understand the appeal of working with the keycodes but what you are
> asking is not simply ignoring certain keypresses (that is easy, just
> ignore corresponding events in userspace), you want to prevent system
> from waking up. In other words you want to "control PM layer through
> input layer" and I believe this is wrong.

Err, this is really about disabling keys. If we think about this in an
abstract way, you have an input device with many keys. And the device's
HW allows you to disable any of it's keys. When you disable the key, the
input device ignores it and does not generate any interrupt for it.

So this is really about ignoring keycodes but on the driver level, not
at the evdev level. We just want to make evdev pass the ioctl down to
the device. If the device does not support it, it'll return an error.
Otherwise the device will just mask out the key on the HW level.

So it is not about playing evil games with PM, it is just about
disabling separate keys on the HW level. We really can look at this that
way.

For me this looks like a good enough abstraction. And probably this may
be useful for other input devices.

I think Mika had some patch which implements this, right?

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2009-11-11  6:50 UTC|newest]

Thread overview: 101+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-23 12:15 [RFC PATCH 0/1] Enabling/disabling separate gpio-keys buttons Mika Westerberg
2009-10-23 12:15 ` [RFC PATCH 1/1] Input: gpio-keys: export gpio key information through sysfs Mika Westerberg
2009-10-28  5:43   ` Dmitry Torokhov
2009-10-28 10:50     ` Mika Westerberg
2009-11-04  9:06       ` Mika Westerberg
2009-11-04  9:25         ` Artem Bityutskiy
2009-11-06  7:52           ` Dmitry Torokhov
2009-11-09 15:09             ` Artem Bityutskiy
2009-11-09 17:18               ` Dmitry Torokhov
2009-11-10 11:04                 ` Artem Bityutskiy
2009-11-10 17:19                   ` Dmitry Torokhov
2009-11-11  6:50                     ` Artem Bityutskiy [this message]
2009-11-11  8:19                       ` Dmitry Torokhov
2009-11-11  8:52                         ` Artem Bityutskiy
2009-11-11  9:59                           ` Dmitry Torokhov
2009-11-11 10:26                             ` Artem Bityutskiy
2009-11-11 10:30                               ` Artem Bityutskiy
2009-11-11 17:40                               ` Dmitry Torokhov
2009-11-12  5:31                                 ` Artem Bityutskiy
2009-11-19  7:23                               ` [PATCH 0/2] Input: gpio-keys: support for disabling GPIOs Mika Westerberg
2009-11-19  7:23                                 ` [PATCH 1/2] Input: gpio-keys: allow drivers to specify whether IRQ can be shared Mika Westerberg
2009-11-19  7:23                                   ` [PATCH 2/2] Input: gpio-keys: added support for disabling gpios through sysfs Mika Westerberg
2009-11-20  8:40                                     ` Dmitry Torokhov
2009-11-20 12:17                                       ` Mika Westerberg
2009-11-23 12:39                                       ` [PATCH v2 0/2] Input: gpio-keys: support for disabling GPIOs Mika Westerberg
2009-11-23 12:39                                         ` [PATCH v2 1/2] Input: gpio-keys - allow platform to specify exact irq flags Mika Westerberg
2009-11-23 12:39                                           ` [PATCH v2 2/2] Input: gpio-keys - added support for disabling gpios through sysfs Mika Westerberg
2009-11-23 16:42                                           ` [PATCH v2 1/2] Input: gpio-keys - allow platform to specify exact irq flags Ferenc Wagner
2009-11-23 17:24                                             ` Dmitry Torokhov
2009-11-23 18:50                                               ` Ferenc Wagner
2009-11-24  6:37                                                 ` Mika Westerberg
2009-11-24 11:05                                                   ` Ferenc Wagner
2009-11-24 17:02                                                     ` Mika Westerberg
2009-11-24 18:39                                                       ` Ferenc Wagner
2009-11-26  6:35                                                         ` Dmitry Torokhov
2009-11-27 10:54                                                           ` Mika Westerberg
2009-11-28 12:16                                                             ` Ferenc Wagner
2009-11-28 13:27                                                               ` Mika Westerberg
2009-11-29 12:26                                                                 ` Ferenc Wagner
2009-11-29 12:26                                                                 ` Ferenc Wagner
2009-11-29 16:04                                                                   ` Alan Stern
2009-11-29 16:04                                                                   ` [linux-pm] " Alan Stern
2009-11-29 22:58                                                                     ` Ferenc Wagner
2009-11-30  8:27                                                                       ` Mika Westerberg
2009-11-30  8:27                                                                       ` [linux-pm] " Mika Westerberg
2009-11-30  9:14                                                                         ` Dmitry Torokhov
2009-11-30  9:14                                                                         ` [linux-pm] " Dmitry Torokhov
2009-11-30  9:37                                                                           ` Mika Westerberg
2009-11-30  9:37                                                                           ` [linux-pm] " Mika Westerberg
2009-12-01  0:07                                                                             ` Ferenc Wagner
2009-11-30 20:59                                                                         ` Ferenc Wagner
2009-12-01  0:37                                                                           ` Dmitry Torokhov
2009-12-01  1:05                                                                             ` Ferenc Wagner
2009-11-29 22:58                                                                     ` Ferenc Wagner
2009-11-30  9:16                                                                     ` [linux-pm] " Dmitry Torokhov
2009-11-30 15:00                                                                       ` Alan Stern
2009-11-30 19:05                                                                         ` Ferenc Wagner
2009-11-30 19:05                                                                         ` [linux-pm] " Ferenc Wagner
2009-11-30 19:30                                                                           ` Alan Stern
2009-11-30 20:51                                                                             ` Ferenc Wagner
2009-11-30 21:59                                                                               ` Alan Stern
2009-11-30 21:59                                                                               ` [linux-pm] " Alan Stern
2009-12-01 10:08                                                                                 ` Ferenc Wagner
2009-12-01 10:08                                                                                 ` [linux-pm] " Ferenc Wagner
2009-12-01 15:11                                                                                   ` Alan Stern
2009-12-01 15:11                                                                                   ` Alan Stern
2009-11-30 20:51                                                                             ` Ferenc Wagner
2009-11-30 19:30                                                                           ` Alan Stern
2009-12-06  8:47                                                                           ` Pavel Machek
2009-12-06  8:47                                                                           ` [linux-pm] " Pavel Machek
2009-12-08  4:22                                                                             ` Dmitry Torokhov
2009-12-08 13:03                                                                               ` Artem Bityutskiy
2009-12-08 13:03                                                                               ` [linux-pm] " Artem Bityutskiy
2009-12-08 17:42                                                                                 ` Dmitry Torokhov
2009-12-08 17:42                                                                                 ` [linux-pm] " Dmitry Torokhov
2009-12-09  7:31                                                                                   ` Artem Bityutskiy
2009-12-09  7:31                                                                                   ` [linux-pm] " Artem Bityutskiy
2009-12-09 18:03                                                                                     ` Dmitry Torokhov
2009-12-09 21:08                                                                                       ` Pavel Machek
2009-12-09 21:48                                                                                         ` Dmitry Torokhov
2009-12-09 21:48                                                                                         ` [linux-pm] " Dmitry Torokhov
2009-12-10 10:13                                                                                           ` Pavel Machek
2009-12-10 10:13                                                                                           ` Pavel Machek
2009-12-09 21:08                                                                                       ` Pavel Machek
2009-12-10  9:19                                                                                       ` [linux-pm] " Artem Bityutskiy
2009-12-10  9:19                                                                                       ` Artem Bityutskiy
2009-12-09 18:03                                                                                     ` Dmitry Torokhov
2009-12-08  4:22                                                                             ` Dmitry Torokhov
2009-11-30 15:00                                                                       ` Alan Stern
2009-11-30  9:16                                                                     ` Dmitry Torokhov
2009-12-06  8:46                                                                   ` [linux-pm] " Pavel Machek
2009-12-06  8:46                                                                   ` Pavel Machek
2009-11-20  8:38                                   ` [PATCH 1/2] Input: gpio-keys: allow drivers to specify whether IRQ can be shared Dmitry Torokhov
2009-11-20 10:08                                     ` Ferenc Wagner
2009-11-11 10:36                           ` [RFC PATCH 0/2] Input: adding new ioctl()s for enabling/disabling events Mika Westerberg
2009-11-11 10:36                             ` [RFC PATCH 1/2] Input: added 2 new ioctl()s for setting/getting event state Mika Westerberg
2009-11-11 10:36                               ` [RFC PATCH 2/2] Input: gpio-keys: implemented support for enabling/disabling gpios Mika Westerberg
2009-11-11 14:37                                 ` Ferenc Wagner
2009-11-11 14:52                                   ` Mika Westerberg
2009-11-11 17:08                                     ` Dmitry Torokhov
2009-11-12  6:23                                       ` Mika Westerberg

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=1257922211.21596.823.camel@localhost \
    --to=dedekind1@gmail.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=mika.westerberg@iki.fi \
    /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.