Android keychord driver upstreaming
The android keychord driver enables user space entities to register a key combo with the driver. When that key combo is recognized the application gets notified via a file handler found under /dev.
Blueprint information
- Status:
- Not started
- Approver:
- John Stultz
- Priority:
- Low
- Drafter:
- Mathieu Poirier
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Approved
- Series goal:
- Accepted for kernel-merge-window
- Implementation:
- Unknown
- Milestone target:
- backlog
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Meta:
Roadmap id: TODO
Headline: Functionality of Android's keychord driver has been upstreamed
Acceptance:
* patches provide acceptable functionality (acked by some Google engineer)
* patches have been accepted upstream (TODO: staging, mainline, specify where this goes)
* commit URL or hash to mainline kernel has been logged here
[jakub-pavelek 2013-05-27] On low priority to don't stress Mathiew. Linked to rest of Android BPs.
[mpoirier 2013-06-13] Submitted driver to Dmitry for initial review (Jun 13th). In his opinion this kind of manipulation is better handled in userspace by way of '/dev/input/X'. I need to study what those do and see why the Android kernel team spun off a new driver.
[mpoirier 2013-06-20] Sent Arve an email asking for the choice behind going with a kernel driver rather than using the /dev/input/X interfaces. Those are provided to specifically convey input events to userspace.
[mpoirier 2013-06-24] Arve is aware of the /dev/input/X interface and mentioned that it is used in different locations throughout the code. On the flip side the keychord driver is used for a very specific performance critical part of the system. Based on this information upstreaming is probably not worth pursuing.
Work Items
Work items:
Understand all the details about the driver (May 25th): INPROGRESS
Look around in the input or misc subsystems for a driver with similar functionality (Jun 13th): DONE
Touch base with Arve and subsystem maintainer with a rough proposal of what will be done (Jun 13th): DONE
Implement and push code upstream: TODO
Dependency tree
* Blueprints in grey have been implemented.