Merge branches 'for-4.2/i2c-hid', 'for-4.2/lenovo', 'for-4.2/plantronics', 'for-4...
[cascardo/linux.git] / drivers / hid / hid-rmi.c
index 2f3e51d..4cf80bb 100644 (file)
@@ -1013,6 +1013,7 @@ static int rmi_populate_f30(struct hid_device *hdev)
 
 static int rmi_populate(struct hid_device *hdev)
 {
+       struct rmi_data *data = hid_get_drvdata(hdev);
        int ret;
 
        ret = rmi_scan_pdt(hdev);
@@ -1033,9 +1034,11 @@ static int rmi_populate(struct hid_device *hdev)
                return ret;
        }
 
-       ret = rmi_populate_f30(hdev);
-       if (ret)
-               hid_warn(hdev, "Error while initializing F30 (%d).\n", ret);
+       if (!(data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)) {
+               ret = rmi_populate_f30(hdev);
+               if (ret)
+                       hid_warn(hdev, "Error while initializing F30 (%d).\n", ret);
+       }
 
        return 0;
 }