Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [PATCH 2/3] input: evdev: add new ioctl EVIOCSIFTYPE / EVIOCGIFTYPE | Date | Fri, 27 Nov 2015 17:59:04 +0100 |
| |
On Friday 27 November 2015 18:00:31 WEN Pingbo wrote: > This patch depends on 'introduce new evdev interface'. > > Userspace cat set / get evdev interface type via the two ioctl > commands. And default interface type is EV_IF_LEGACY, so the old binary > will work normal with new kernel. Maybe we should change this default > option to encourage people to move to new interface. > > And since all events are stored as input_value in evdev, there are no > need to flush evdev_client's buffer if we change clk_type and if_type.
I would split out the change to evdev_set_clk_type into a separate patch.
> + case EVIOCSIFTYPE: > + if (get_user(if_type, ip)) > + return -EFAULT; > + > + return evdev_set_if_type(client, if_type); > + case EVIOCGIFTYPE: > + return put_user(client->if_type, ip); > }
This look asymmetric: EVIOCSIFTYPE uses a EVDEV_* constant, while EVIOCGIFTYPE returns a EV_IF_* constant. Should those just be the same constants anyway?
Arnd
| |