Dnia 17 Września 2012, 3:29 am, Pn, Axel Lin napisał(a):
> In the case of goto destroy_leds, we also need to call hid_hw_stop(hdev)
> and
> remove sysfs attribute files we created for speed and oleds.
>
> Signed-off-by: Axel Lin <[email protected]>
> ---
>  drivers/hid/hid-wacom.c |   12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/hid/hid-wacom.c b/drivers/hid/hid-wacom.c
> index a0fafac..fae7fd7 100644
> --- a/drivers/hid/hid-wacom.c
> +++ b/drivers/hid/hid-wacom.c
> @@ -902,10 +902,18 @@ OLED_INIT(7);
>  err_ac:
>       power_supply_unregister(&wdata->battery);
>  err_battery:
> -     device_remove_file(&hdev->dev, &dev_attr_speed);
> -     hid_hw_stop(hdev);
>  destroy_leds:
>       wacom_destroy_leds(hdev);
> +     device_remove_file(&hdev->dev, &dev_attr_oled0_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled1_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled2_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled3_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled4_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled5_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled6_img);
> +     device_remove_file(&hdev->dev, &dev_attr_oled7_img);
> +     device_remove_file(&hdev->dev, &dev_attr_speed);
> +     hid_hw_stop(hdev);
>  err_free:
>       kfree(wdata);
>       return ret;
> --
> 1.7.9.5
Hi Alex,
The initial idea was that the OLEDs/LED are not critical for tablet
functioning and that's why there was no call of hid_stop_hw if the
OLED/LED initialisation faild.
What's is the general kernel/HID policy: is it OK to have a device working
with some non-essential features missing?

-- 
Regards,
Przemo Firszt

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to