[S390] dasd: fix endless loop in erp
[safe/jmp/linux-2.6] / drivers / hid / hid-lgff.c
index 51aff08..61142b7 100644 (file)
@@ -50,6 +50,12 @@ static const signed short ff_joystick[] = {
        -1
 };
 
+static const signed short ff_joystick_ac[] = {
+       FF_CONSTANT,
+       FF_AUTOCENTER,
+       -1
+};
+
 static const signed short ff_wheel[] = {
        FF_CONSTANT,
        FF_AUTOCENTER,
@@ -60,8 +66,10 @@ static const struct dev_type devices[] = {
        { 0x046d, 0xc211, ff_rumble },
        { 0x046d, 0xc219, ff_rumble },
        { 0x046d, 0xc283, ff_joystick },
-       { 0x046d, 0xc286, ff_joystick },
-       { 0x046d, 0xc294, ff_joystick },
+       { 0x046d, 0xc286, ff_joystick_ac },
+       { 0x046d, 0xc287, ff_joystick_ac },
+       { 0x046d, 0xc293, ff_joystick },
+       { 0x046d, 0xc294, ff_wheel },
        { 0x046d, 0xc295, ff_joystick },
        { 0x046d, 0xca03, ff_wheel },
 };
@@ -144,11 +152,6 @@ int lgff_init(struct hid_device* hid)
 
        /* Check that the report looks ok */
        report = list_entry(report_list->next, struct hid_report, list);
-       if (!report) {
-               err_hid("NULL output report");
-               return -1;
-       }
-
        field = report->field[0];
        if (!field) {
                err_hid("NULL field");