Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 349789
b: refs/heads/master
c: b666263
h: refs/heads/master
i:
  349787: 4ca8e80
v: v3
  • Loading branch information
Dmitry Torokhov committed Jan 9, 2013
1 parent 12c6cf3 commit 7489c2e
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: bec7a4bbecf7da86b6e64bb78d22c92ea1ba4afe
refs/heads/master: b666263b71cb1f3b96fb79e69de7f119062b0da2
16 changes: 14 additions & 2 deletions trunk/drivers/input/input.c
Original file line number Diff line number Diff line change
Expand Up @@ -1785,12 +1785,13 @@ static void devm_input_device_release(struct device *dev, void *res)
* its driver (or binding fails). Once managed input device is allocated,
* it is ready to be set up and registered in the same fashion as regular
* input device. There are no special devm_input_device_[un]register()
* variants, regular ones work with both managed and unmanaged devices.
* variants, regular ones work with both managed and unmanaged devices,
* should you need them. In most cases however, managed input device need
* not be explicitly unregistered or freed.
*
* NOTE: the owner device is set up as parent of input device and users
* should not override it.
*/

struct input_dev *devm_input_allocate_device(struct device *dev)
{
struct input_dev *input;
Expand Down Expand Up @@ -2004,6 +2005,17 @@ static void devm_input_device_unregister(struct device *dev, void *res)
* Once device has been successfully registered it can be unregistered
* with input_unregister_device(); input_free_device() should not be
* called in this case.
*
* Note that this function is also used to register managed input devices
* (ones allocated with devm_input_allocate_device()). Such managed input
* devices need not be explicitly unregistered or freed, their tear down
* is controlled by the devres infrastructure. It is also worth noting
* that tear down of managed input devices is internally a 2-step process:
* registered managed input device is first unregistered, but stays in
* memory and can still handle input_event() calls (although events will
* not be delivered anywhere). The freeing of managed input device will
* happen later, when devres stack is unwound to the point where device
* allocation was made.
*/
int input_register_device(struct input_dev *dev)
{
Expand Down

0 comments on commit 7489c2e

Please sign in to comment.