hid-sony.c (e19a267b9987135c00155a51e683e434b9abb56b) | hid-sony.c (80ecc48c0ade5e99cc9d84febd17c44a4f011c13) |
---|---|
1/* 2 * HID driver for Sony / PS2 / PS3 / PS4 BD devices. 3 * 4 * Copyright (c) 1999 Andreas Gal 5 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 6 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 7 * Copyright (c) 2008 Jiri Slaby 8 * Copyright (c) 2012 David Dillow <dave@thedillows.org> --- 2454 unchanged lines hidden (view full) --- 2463 * until the PS logo button is pressed and as such won't retain 2464 * any state set by an output report, so the initial 2465 * configuration report is deferred until the first input 2466 * report arrives. 2467 */ 2468 hdev->quirks |= HID_QUIRK_NO_OUTPUT_REPORTS_ON_INTR_EP; 2469 hdev->quirks |= HID_QUIRK_SKIP_OUTPUT_REPORT_ID; 2470 sc->defer_initialization = 1; | 1/* 2 * HID driver for Sony / PS2 / PS3 / PS4 BD devices. 3 * 4 * Copyright (c) 1999 Andreas Gal 5 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 6 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 7 * Copyright (c) 2008 Jiri Slaby 8 * Copyright (c) 2012 David Dillow <dave@thedillows.org> --- 2454 unchanged lines hidden (view full) --- 2463 * until the PS logo button is pressed and as such won't retain 2464 * any state set by an output report, so the initial 2465 * configuration report is deferred until the first input 2466 * report arrives. 2467 */ 2468 hdev->quirks |= HID_QUIRK_NO_OUTPUT_REPORTS_ON_INTR_EP; 2469 hdev->quirks |= HID_QUIRK_SKIP_OUTPUT_REPORT_ID; 2470 sc->defer_initialization = 1; |
2471 |
|
2471 ret = sixaxis_set_operational_usb(hdev); | 2472 ret = sixaxis_set_operational_usb(hdev); |
2473 if (ret < 0) { 2474 hid_err(hdev, "Failed to set controller into operational mode\n"); 2475 goto err_stop; 2476 } 2477 |
|
2472 sony_init_output_report(sc, sixaxis_send_output_report); 2473 } else if ((sc->quirks & SIXAXIS_CONTROLLER_BT) || 2474 (sc->quirks & NAVIGATION_CONTROLLER_BT)) { 2475 /* 2476 * The Sixaxis wants output reports sent on the ctrl endpoint 2477 * when connected via Bluetooth. 2478 */ 2479 hdev->quirks |= HID_QUIRK_NO_OUTPUT_REPORTS_ON_INTR_EP; | 2478 sony_init_output_report(sc, sixaxis_send_output_report); 2479 } else if ((sc->quirks & SIXAXIS_CONTROLLER_BT) || 2480 (sc->quirks & NAVIGATION_CONTROLLER_BT)) { 2481 /* 2482 * The Sixaxis wants output reports sent on the ctrl endpoint 2483 * when connected via Bluetooth. 2484 */ 2485 hdev->quirks |= HID_QUIRK_NO_OUTPUT_REPORTS_ON_INTR_EP; |
2486 |
|
2480 ret = sixaxis_set_operational_bt(hdev); | 2487 ret = sixaxis_set_operational_bt(hdev); |
2488 if (ret < 0) { 2489 hid_err(hdev, "Failed to set controller into operational mode\n"); 2490 goto err_stop; 2491 } 2492 |
|
2481 sony_init_output_report(sc, sixaxis_send_output_report); 2482 } else if (sc->quirks & DUALSHOCK4_CONTROLLER) { 2483 ret = dualshock4_get_calibration_data(sc); 2484 if (ret < 0) { 2485 hid_err(hdev, "Failed to get calibration data from Dualshock 4\n"); 2486 goto err_stop; 2487 } 2488 --- 300 unchanged lines hidden --- | 2493 sony_init_output_report(sc, sixaxis_send_output_report); 2494 } else if (sc->quirks & DUALSHOCK4_CONTROLLER) { 2495 ret = dualshock4_get_calibration_data(sc); 2496 if (ret < 0) { 2497 hid_err(hdev, "Failed to get calibration data from Dualshock 4\n"); 2498 goto err_stop; 2499 } 2500 --- 300 unchanged lines hidden --- |