From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Linux Input <linux-input@vger.kernel.org>,
Jiri Kosina <jkosina@suse.cz>,
linux-media@vger.kernel.org
Subject: Re: [PATCH] Input: switch completely over to the new versions of get/setkeycode
Date: Mon, 31 Jan 2011 10:30:36 -0200 [thread overview]
Message-ID: <4D46AB6C.4050108@redhat.com> (raw)
In-Reply-To: <20110131085640.GB30343@core.coreip.homeip.net>
Em 31-01-2011 06:56, Dmitry Torokhov escreveu:
> Input: switch completely over to the new versions of get/setkeycode
>
> All users of old style get/setkeycode methids have been converted so
> it is time to retire them.
>
> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
> ---
>
> Jiri, Mauro,
>
> There is not a good way to avoid crossing multiple subsystems but the
> changes are minimal, so if you are OK with the patch I'd like to move it
> through my tree for .39.
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>
>
> Thanks!
>
> drivers/hid/hid-input.c | 4 +-
> drivers/input/input.c | 55 ++++------------------------
> drivers/input/misc/ati_remote2.c | 4 +-
> drivers/input/sparse-keymap.c | 4 +-
> drivers/media/dvb/dvb-usb/dvb-usb-remote.c | 4 +-
> drivers/media/rc/rc-main.c | 4 +-
> include/linux/input.h | 12 ++----
> 7 files changed, 20 insertions(+), 67 deletions(-)
>
>
> diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
> index 7f552bf..ba2aeea 100644
> --- a/drivers/hid/hid-input.c
> +++ b/drivers/hid/hid-input.c
> @@ -888,8 +888,8 @@ int hidinput_connect(struct hid_device *hid, unsigned int force)
> hid->ll_driver->hidinput_input_event;
> input_dev->open = hidinput_open;
> input_dev->close = hidinput_close;
> - input_dev->setkeycode_new = hidinput_setkeycode;
> - input_dev->getkeycode_new = hidinput_getkeycode;
> + input_dev->setkeycode = hidinput_setkeycode;
> + input_dev->getkeycode = hidinput_getkeycode;
>
> input_dev->name = hid->name;
> input_dev->phys = hid->phys;
> diff --git a/drivers/input/input.c b/drivers/input/input.c
> index 11905b6..d6e8bd8 100644
> --- a/drivers/input/input.c
> +++ b/drivers/input/input.c
> @@ -791,22 +791,9 @@ int input_get_keycode(struct input_dev *dev, struct input_keymap_entry *ke)
> int retval;
>
> spin_lock_irqsave(&dev->event_lock, flags);
> -
> - if (dev->getkeycode) {
> - /*
> - * Support for legacy drivers, that don't implement the new
> - * ioctls
> - */
> - u32 scancode = ke->index;
> -
> - memcpy(ke->scancode, &scancode, sizeof(scancode));
> - ke->len = sizeof(scancode);
> - retval = dev->getkeycode(dev, scancode, &ke->keycode);
> - } else {
> - retval = dev->getkeycode_new(dev, ke);
> - }
> -
> + retval = dev->getkeycode(dev, ke);
> spin_unlock_irqrestore(&dev->event_lock, flags);
> +
> return retval;
> }
> EXPORT_SYMBOL(input_get_keycode);
> @@ -831,35 +818,7 @@ int input_set_keycode(struct input_dev *dev,
>
> spin_lock_irqsave(&dev->event_lock, flags);
>
> - if (dev->setkeycode) {
> - /*
> - * Support for legacy drivers, that don't implement the new
> - * ioctls
> - */
> - unsigned int scancode;
> -
> - retval = input_scancode_to_scalar(ke, &scancode);
> - if (retval)
> - goto out;
> -
> - /*
> - * We need to know the old scancode, in order to generate a
> - * keyup effect, if the set operation happens successfully
> - */
> - if (!dev->getkeycode) {
> - retval = -EINVAL;
> - goto out;
> - }
> -
> - retval = dev->getkeycode(dev, scancode, &old_keycode);
> - if (retval)
> - goto out;
> -
> - retval = dev->setkeycode(dev, scancode, ke->keycode);
> - } else {
> - retval = dev->setkeycode_new(dev, ke, &old_keycode);
> - }
> -
> + retval = dev->setkeycode(dev, ke, &old_keycode);
> if (retval)
> goto out;
>
> @@ -1846,11 +1805,11 @@ int input_register_device(struct input_dev *dev)
> dev->rep[REP_PERIOD] = 33;
> }
>
> - if (!dev->getkeycode && !dev->getkeycode_new)
> - dev->getkeycode_new = input_default_getkeycode;
> + if (!dev->getkeycode)
> + dev->getkeycode = input_default_getkeycode;
>
> - if (!dev->setkeycode && !dev->setkeycode_new)
> - dev->setkeycode_new = input_default_setkeycode;
> + if (!dev->setkeycode)
> + dev->setkeycode = input_default_setkeycode;
>
> dev_set_name(&dev->dev, "input%ld",
> (unsigned long) atomic_inc_return(&input_no) - 1);
> diff --git a/drivers/input/misc/ati_remote2.c b/drivers/input/misc/ati_remote2.c
> index 0b0e9be..9ccdb82 100644
> --- a/drivers/input/misc/ati_remote2.c
> +++ b/drivers/input/misc/ati_remote2.c
> @@ -612,8 +612,8 @@ static int ati_remote2_input_init(struct ati_remote2 *ar2)
> idev->open = ati_remote2_open;
> idev->close = ati_remote2_close;
>
> - idev->getkeycode_new = ati_remote2_getkeycode;
> - idev->setkeycode_new = ati_remote2_setkeycode;
> + idev->getkeycode = ati_remote2_getkeycode;
> + idev->setkeycode = ati_remote2_setkeycode;
>
> idev->name = ar2->name;
> idev->phys = ar2->phys;
> diff --git a/drivers/input/sparse-keymap.c b/drivers/input/sparse-keymap.c
> index 7729e54..337bf51 100644
> --- a/drivers/input/sparse-keymap.c
> +++ b/drivers/input/sparse-keymap.c
> @@ -210,8 +210,8 @@ int sparse_keymap_setup(struct input_dev *dev,
>
> dev->keycode = map;
> dev->keycodemax = map_size;
> - dev->getkeycode_new = sparse_keymap_getkeycode;
> - dev->setkeycode_new = sparse_keymap_setkeycode;
> + dev->getkeycode = sparse_keymap_getkeycode;
> + dev->setkeycode = sparse_keymap_setkeycode;
>
> return 0;
>
> diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
> index 347fbd4..b2b9415 100644
> --- a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
> +++ b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
> @@ -198,8 +198,8 @@ static int legacy_dvb_usb_remote_init(struct dvb_usb_device *d)
> d->input_dev = input_dev;
> d->rc_dev = NULL;
>
> - input_dev->getkeycode_new = legacy_dvb_usb_getkeycode;
> - input_dev->setkeycode_new = legacy_dvb_usb_setkeycode;
> + input_dev->getkeycode = legacy_dvb_usb_getkeycode;
> + input_dev->setkeycode = legacy_dvb_usb_setkeycode;
>
> /* set the bits for the keys */
> deb_rc("key map size: %d\n", d->props.rc.legacy.rc_map_size);
> diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c
> index 512a2f4..c376928 100644
> --- a/drivers/media/rc/rc-main.c
> +++ b/drivers/media/rc/rc-main.c
> @@ -966,8 +966,8 @@ struct rc_dev *rc_allocate_device(void)
> return NULL;
> }
>
> - dev->input_dev->getkeycode_new = ir_getkeycode;
> - dev->input_dev->setkeycode_new = ir_setkeycode;
> + dev->input_dev->getkeycode = ir_getkeycode;
> + dev->input_dev->setkeycode = ir_setkeycode;
> input_set_drvdata(dev->input_dev, dev);
>
> spin_lock_init(&dev->rc_map.lock);
> diff --git a/include/linux/input.h b/include/linux/input.h
> index e428382..056ae8a 100644
> --- a/include/linux/input.h
> +++ b/include/linux/input.h
> @@ -1154,8 +1154,6 @@ struct ff_effect {
> * sparse keymaps. If not supplied default mechanism will be used.
> * The method is being called while holding event_lock and thus must
> * not sleep
> - * @getkeycode_new: transition method
> - * @setkeycode_new: transition method
> * @ff: force feedback structure associated with the device if device
> * supports force feedback effects
> * @repeat_key: stores key code of the last key pressed; used to implement
> @@ -1234,14 +1232,10 @@ struct input_dev {
> void *keycode;
>
> int (*setkeycode)(struct input_dev *dev,
> - unsigned int scancode, unsigned int keycode);
> + const struct input_keymap_entry *ke,
> + unsigned int *old_keycode);
> int (*getkeycode)(struct input_dev *dev,
> - unsigned int scancode, unsigned int *keycode);
> - int (*setkeycode_new)(struct input_dev *dev,
> - const struct input_keymap_entry *ke,
> - unsigned int *old_keycode);
> - int (*getkeycode_new)(struct input_dev *dev,
> - struct input_keymap_entry *ke);
> + struct input_keymap_entry *ke);
>
> struct ff_device *ff;
>
next prev parent reply other threads:[~2011-01-31 12:30 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-31 8:56 [PATCH] Input: switch completely over to the new versions of get/setkeycode Dmitry Torokhov
2011-01-31 12:30 ` Mauro Carvalho Chehab [this message]
2011-01-31 12:32 ` Jiri Kosina
2011-01-31 17:21 ` Dmitry Torokhov
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=4D46AB6C.4050108@redhat.com \
--to=mchehab@redhat.com \
--cc=dmitry.torokhov@gmail.com \
--cc=jkosina@suse.cz \
--cc=linux-input@vger.kernel.org \
--cc=linux-media@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).