wdata->battery.type = POWER_SUPPLY_TYPE_BATTERY;
        wdata->battery.use_for_apm = 0;
 
+       power_supply_powers(&wdata->battery, &hdev->dev);
+
        ret = power_supply_register(&hdev->dev, &wdata->battery);
        if (ret) {
                hid_warn(hdev, "can't create sysfs battery attribute, err: %d\n",
        wdata->ac.type = POWER_SUPPLY_TYPE_MAINS;
        wdata->ac.use_for_apm = 0;
 
+       power_supply_powers(&wdata->battery, &hdev->dev);
+
        ret = power_supply_register(&hdev->dev, &wdata->ac);
        if (ret) {
                hid_warn(hdev,
 
        wdata->battery.type = POWER_SUPPLY_TYPE_BATTERY;
        wdata->battery.use_for_apm = 0;
 
+       power_supply_powers(&wdata->battery, &hdev->dev);
+
        ret = power_supply_register(&wdata->hdev->dev, &wdata->battery);
        if (ret) {
                hid_err(hdev, "Cannot register battery device\n");