Add patch to fix oops when using xpad (rhbz 1094048)
This commit is contained in:
parent
ad2c413a64
commit
f1fc68cfe2
|
@ -0,0 +1,49 @@
|
|||
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Date: Tue, 25 Nov 2014 00:38:17 -0800
|
||||
Subject: [PATCH] Input: xpad - use proper endpoint type
|
||||
|
||||
The xpad wireless endpoint is not a bulk endpoint on my devices, but
|
||||
rather an interrupt one, so the USB core complains when it is submitted.
|
||||
I'm guessing that the author really did mean that this should be an
|
||||
interrupt urb, but as there are a zillion different xpad devices out
|
||||
there, let's cover out bases and handle both bulk and interrupt
|
||||
endpoints just as easily.
|
||||
|
||||
Signed-off-by: "Pierre-Loup A. Griffais" <pgriffais@valvesoftware.com>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Cc: stable <stable@vger.kernel.org>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/joystick/xpad.c | 16 +++++++++++++---
|
||||
1 file changed, 13 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
|
||||
index 177602cf7079..e65d9c0241a9 100644
|
||||
--- a/drivers/input/joystick/xpad.c
|
||||
+++ b/drivers/input/joystick/xpad.c
|
||||
@@ -1143,9 +1143,19 @@ static int xpad_probe(struct usb_interface *intf, const struct usb_device_id *id
|
||||
}
|
||||
|
||||
ep_irq_in = &intf->cur_altsetting->endpoint[1].desc;
|
||||
- usb_fill_bulk_urb(xpad->bulk_out, udev,
|
||||
- usb_sndbulkpipe(udev, ep_irq_in->bEndpointAddress),
|
||||
- xpad->bdata, XPAD_PKT_LEN, xpad_bulk_out, xpad);
|
||||
+ if (usb_endpoint_is_bulk_out(ep_irq_in)) {
|
||||
+ usb_fill_bulk_urb(xpad->bulk_out, udev,
|
||||
+ usb_sndbulkpipe(udev,
|
||||
+ ep_irq_in->bEndpointAddress),
|
||||
+ xpad->bdata, XPAD_PKT_LEN,
|
||||
+ xpad_bulk_out, xpad);
|
||||
+ } else {
|
||||
+ usb_fill_int_urb(xpad->bulk_out, udev,
|
||||
+ usb_sndintpipe(udev,
|
||||
+ ep_irq_in->bEndpointAddress),
|
||||
+ xpad->bdata, XPAD_PKT_LEN,
|
||||
+ xpad_bulk_out, xpad, 0);
|
||||
+ }
|
||||
|
||||
/*
|
||||
* Submit the int URB immediately rather than waiting for open
|
||||
--
|
||||
1.9.3
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
From 83d04c39f9048807a8500e575ae3f1718a3f45bb Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deucher <alexander.deucher@amd.com>
|
||||
Date: Mon, 13 Oct 2014 13:23:48 -0400
|
||||
Subject: [PATCH] drm/radeon: initialize sadb to NULL in the audio code
|
||||
|
@ -13,7 +12,7 @@ Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
|||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/radeon/dce3_1_afmt.c b/drivers/gpu/drm/radeon/dce3_1_afmt.c
|
||||
index 950af153f30e..6b1dbecdd36d 100644
|
||||
index 71f4d26669cd..13a27d971d35 100644
|
||||
--- a/drivers/gpu/drm/radeon/dce3_1_afmt.c
|
||||
+++ b/drivers/gpu/drm/radeon/dce3_1_afmt.c
|
||||
@@ -32,7 +32,7 @@ static void dce3_2_afmt_write_speaker_allocation(struct drm_encoder *encoder)
|
||||
|
@ -26,7 +25,7 @@ index 950af153f30e..6b1dbecdd36d 100644
|
|||
|
||||
list_for_each_entry(connector, &encoder->dev->mode_config.connector_list, head) {
|
||||
diff --git a/drivers/gpu/drm/radeon/dce6_afmt.c b/drivers/gpu/drm/radeon/dce6_afmt.c
|
||||
index c0bbf68dbc27..960a5f0f042f 100644
|
||||
index 790d8cafdb87..88dd17955db3 100644
|
||||
--- a/drivers/gpu/drm/radeon/dce6_afmt.c
|
||||
+++ b/drivers/gpu/drm/radeon/dce6_afmt.c
|
||||
@@ -155,7 +155,7 @@ void dce6_afmt_write_speaker_allocation(struct drm_encoder *encoder)
|
||||
|
@ -39,10 +38,10 @@ index c0bbf68dbc27..960a5f0f042f 100644
|
|||
|
||||
if (!dig || !dig->afmt || !dig->afmt->pin)
|
||||
diff --git a/drivers/gpu/drm/radeon/evergreen_hdmi.c b/drivers/gpu/drm/radeon/evergreen_hdmi.c
|
||||
index 2514d659b1ba..f6a5c3026f85 100644
|
||||
index 71ebdf89fd76..993978051ede 100644
|
||||
--- a/drivers/gpu/drm/radeon/evergreen_hdmi.c
|
||||
+++ b/drivers/gpu/drm/radeon/evergreen_hdmi.c
|
||||
@@ -133,7 +133,7 @@ static void dce4_afmt_write_speaker_allocation(struct drm_encoder *encoder)
|
||||
@@ -102,7 +102,7 @@ static void dce4_afmt_write_speaker_allocation(struct drm_encoder *encoder)
|
||||
struct drm_connector *connector;
|
||||
struct radeon_connector *radeon_connector = NULL;
|
||||
u32 tmp;
|
||||
|
|
|
@ -624,6 +624,9 @@ Patch26071: usb-quirks-Add-reset-resume-quirk-for-MS-Wireless-La.patch
|
|||
#rhbz 1167511
|
||||
Patch26072: drm-radeon-initialize-sadb-to-NULL-in-the-audio-code.patch
|
||||
|
||||
#rhbz 1094048
|
||||
Patch26073: Input-xpad-use-proper-endpoint-type.patch
|
||||
|
||||
# git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
|
||||
Patch30000: kernel-arm64.patch
|
||||
|
||||
|
@ -1361,6 +1364,9 @@ ApplyPatch usb-quirks-Add-reset-resume-quirk-for-MS-Wireless-La.patch
|
|||
#rhbz 1167511
|
||||
ApplyPatch drm-radeon-initialize-sadb-to-NULL-in-the-audio-code.patch
|
||||
|
||||
#rhbz 1094048
|
||||
ApplyPatch Input-xpad-use-proper-endpoint-type.patch
|
||||
|
||||
%if 0%{?aarch64patches}
|
||||
ApplyPatch kernel-arm64.patch
|
||||
%ifnarch aarch64 # this is stupid, but i want to notice before secondary koji does.
|
||||
|
@ -2229,6 +2235,9 @@ fi
|
|||
# ||----w |
|
||||
# || ||
|
||||
%changelog
|
||||
* Mon Dec 01 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix oops when using xpad (rhbz 1094048)
|
||||
|
||||
* Thu Nov 27 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.17.4-301
|
||||
- Add patch to fix radeon HDMI issues (rhbz 1167511)
|
||||
|
||||
|
|
Loading…
Reference in New Issue