nvec_kbd is converted to use devm_input_allocate. This simplifies error handling and remove path. Signed-off-by: Leon Romanovsky <leon@xxxxxxx> --- Chenagelog: * Fix typo --- drivers/staging/nvec/nvec_kbd.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/drivers/staging/nvec/nvec_kbd.c b/drivers/staging/nvec/nvec_kbd.c index 7445ce6..ae13791 100644 --- a/drivers/staging/nvec/nvec_kbd.c +++ b/drivers/staging/nvec/nvec_kbd.c @@ -126,7 +126,7 @@ static int nvec_kbd_probe(struct platform_device *pdev) for (i = 0; i < ARRAY_SIZE(extcode_tab_us102); ++i) keycodes[j++] = extcode_tab_us102[i]; - idev = input_allocate_device(); + idev = devm_input_allocate_device(&pdev->dev); idev->name = "nvec keyboard"; idev->phys = "nvec"; idev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP) | BIT_MASK(EV_LED); @@ -142,7 +142,7 @@ static int nvec_kbd_probe(struct platform_device *pdev) clear_bit(0, idev->keybit); err = input_register_device(idev); if (err) - goto fail; + return err; keys_dev.input = idev; keys_dev.notifier.notifier_call = nvec_keys_notifier; @@ -161,17 +161,10 @@ static int nvec_kbd_probe(struct platform_device *pdev) nvec_write_async(nvec, clear_leds, sizeof(clear_leds)); return 0; - -fail: - input_free_device(idev); - return err; } static int nvec_kbd_remove(struct platform_device *pdev) { - input_unregister_device(keys_dev.input); - input_free_device(keys_dev.input); - return 0; } -- 1.8.1.5 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel