From 4f809fef3bd6eeeec11c4af0c213a292e751c74c Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 31 Jul 2013 06:05:19 -0700 Subject: [PATCH] 3.10-stable patches added patches: alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch alsa-hda-yet-another-dell-headset-mic-quirk.patch firewire-fix-libdc1394-flycap2-iso-event-regression.patch --- ...t-s-two-more-dell-headset-mic-quirks.patch | 32 ++++++ ...a-yet-another-dell-headset-mic-quirk.patch | 31 ++++++ ...bdc1394-flycap2-iso-event-regression.patch | 101 ++++++++++++++++++ queue-3.10/series | 3 + 4 files changed, 167 insertions(+) create mode 100644 queue-3.10/alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch create mode 100644 queue-3.10/alsa-hda-yet-another-dell-headset-mic-quirk.patch create mode 100644 queue-3.10/firewire-fix-libdc1394-flycap2-iso-event-regression.patch diff --git a/queue-3.10/alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch b/queue-3.10/alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch new file mode 100644 index 00000000000..2cbcf026de2 --- /dev/null +++ b/queue-3.10/alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch @@ -0,0 +1,32 @@ +From cd6fb6793a33e2b02af6e05a8d3f735f7c88a943 Mon Sep 17 00:00:00 2001 +From: David Henningsson +Date: Fri, 28 Jun 2013 11:09:56 +0200 +Subject: ALSA: hda - Guess what, it's two more Dell headset mic quirks + +From: David Henningsson + +commit cd6fb6793a33e2b02af6e05a8d3f735f7c88a943 upstream. + +Add two more machines that need quirks for headset mics to work. + +Tested-by: Shawn Wang +BugLink: https://bugs.launchpad.net/bugs/1195636 +Signed-off-by: David Henningsson +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_realtek.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -3495,6 +3495,8 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x1028, 0x05f5, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x05f6, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x05f8, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), ++ SND_PCI_QUIRK(0x1028, 0x05f9, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), ++ SND_PCI_QUIRK(0x1028, 0x05fb, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0606, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0608, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0609, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), diff --git a/queue-3.10/alsa-hda-yet-another-dell-headset-mic-quirk.patch b/queue-3.10/alsa-hda-yet-another-dell-headset-mic-quirk.patch new file mode 100644 index 00000000000..5da8c92ab01 --- /dev/null +++ b/queue-3.10/alsa-hda-yet-another-dell-headset-mic-quirk.patch @@ -0,0 +1,31 @@ +From 6c29d68a82ec68db18241b818d03e7864c052be9 Mon Sep 17 00:00:00 2001 +From: David Henningsson +Date: Fri, 28 Jun 2013 08:53:34 +0200 +Subject: ALSA: hda - Yet another Dell headset mic quirk + +From: David Henningsson + +commit 6c29d68a82ec68db18241b818d03e7864c052be9 upstream. + +This quirk is needed for the headset mic to work on this Dell +machine. + +BugLink: https://bugs.launchpad.net/bugs/1195597 +Signed-off-by: David Henningsson +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_realtek.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -3498,6 +3498,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x1028, 0x0606, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0608, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x1028, 0x0609, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), ++ SND_PCI_QUIRK(0x1028, 0x0613, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE), + SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_HP_MUTE_LED_MIC2), + SND_PCI_QUIRK(0x103c, 0x18e6, "HP", ALC269_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x1973, "HP Pavilion", ALC269_FIXUP_HP_MUTE_LED_MIC1), diff --git a/queue-3.10/firewire-fix-libdc1394-flycap2-iso-event-regression.patch b/queue-3.10/firewire-fix-libdc1394-flycap2-iso-event-regression.patch new file mode 100644 index 00000000000..806aca4f5e6 --- /dev/null +++ b/queue-3.10/firewire-fix-libdc1394-flycap2-iso-event-regression.patch @@ -0,0 +1,101 @@ +From 0699a73af3811b66b1ab5650575acee5eea841ab Mon Sep 17 00:00:00 2001 +From: Clemens Ladisch +Date: Mon, 22 Jul 2013 21:32:09 +0200 +Subject: firewire: fix libdc1394/FlyCap2 iso event regression + +From: Clemens Ladisch + +commit 0699a73af3811b66b1ab5650575acee5eea841ab upstream. + +Commit 18d627113b83 (firewire: prevent dropping of completed iso packet +header data) was intended to be an obvious bug fix, but libdc1394 and +FlyCap2 depend on the old behaviour by ignoring all returned information +and thus not noticing that not all packets have been received yet. The +result was that the video frame buffers would be saved before they +contained the correct data. + +Reintroduce the old behaviour for old clients. + +Tested-by: Stepan Salenikovich +Tested-by: Josep Bosch +Signed-off-by: Clemens Ladisch +Signed-off-by: Stefan Richter +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/firewire/core-cdev.c | 3 +++ + drivers/firewire/ohci.c | 10 ++++++++-- + include/linux/firewire.h | 1 + + include/uapi/linux/firewire-cdev.h | 4 ++-- + 4 files changed, 14 insertions(+), 4 deletions(-) + +--- a/drivers/firewire/core-cdev.c ++++ b/drivers/firewire/core-cdev.c +@@ -54,6 +54,7 @@ + #define FW_CDEV_KERNEL_VERSION 5 + #define FW_CDEV_VERSION_EVENT_REQUEST2 4 + #define FW_CDEV_VERSION_ALLOCATE_REGION_END 4 ++#define FW_CDEV_VERSION_AUTO_FLUSH_ISO_OVERFLOW 5 + + struct client { + u32 version; +@@ -1005,6 +1006,8 @@ static int ioctl_create_iso_context(stru + a->channel, a->speed, a->header_size, cb, client); + if (IS_ERR(context)) + return PTR_ERR(context); ++ if (client->version < FW_CDEV_VERSION_AUTO_FLUSH_ISO_OVERFLOW) ++ context->drop_overflow_headers = true; + + /* We only support one context at this time. */ + spin_lock_irq(&client->lock); +--- a/drivers/firewire/ohci.c ++++ b/drivers/firewire/ohci.c +@@ -2749,8 +2749,11 @@ static void copy_iso_headers(struct iso_ + { + u32 *ctx_hdr; + +- if (ctx->header_length + ctx->base.header_size > PAGE_SIZE) ++ if (ctx->header_length + ctx->base.header_size > PAGE_SIZE) { ++ if (ctx->base.drop_overflow_headers) ++ return; + flush_iso_completions(ctx); ++ } + + ctx_hdr = ctx->header + ctx->header_length; + ctx->last_timestamp = (u16)le32_to_cpu((__force __le32)dma_hdr[0]); +@@ -2910,8 +2913,11 @@ static int handle_it_packet(struct conte + + sync_it_packet_for_cpu(context, d); + +- if (ctx->header_length + 4 > PAGE_SIZE) ++ if (ctx->header_length + 4 > PAGE_SIZE) { ++ if (ctx->base.drop_overflow_headers) ++ return 1; + flush_iso_completions(ctx); ++ } + + ctx_hdr = ctx->header + ctx->header_length; + ctx->last_timestamp = le16_to_cpu(last->res_count); +--- a/include/linux/firewire.h ++++ b/include/linux/firewire.h +@@ -434,6 +434,7 @@ struct fw_iso_context { + int type; + int channel; + int speed; ++ bool drop_overflow_headers; + size_t header_size; + union { + fw_iso_callback_t sc; +--- a/include/uapi/linux/firewire-cdev.h ++++ b/include/uapi/linux/firewire-cdev.h +@@ -215,8 +215,8 @@ struct fw_cdev_event_request2 { + * with the %FW_CDEV_ISO_INTERRUPT bit set, when explicitly requested with + * %FW_CDEV_IOC_FLUSH_ISO, or when there have been so many completed packets + * without the interrupt bit set that the kernel's internal buffer for @header +- * is about to overflow. (In the last case, kernels with ABI version < 5 drop +- * header data up to the next interrupt packet.) ++ * is about to overflow. (In the last case, ABI versions < 5 drop header data ++ * up to the next interrupt packet.) + * + * Isochronous transmit events (context type %FW_CDEV_ISO_CONTEXT_TRANSMIT): + * diff --git a/queue-3.10/series b/queue-3.10/series index 9054f82f401..96ed5a8635b 100644 --- a/queue-3.10/series +++ b/queue-3.10/series @@ -4,3 +4,6 @@ iscsi-target-fix-tfc_tpg_nacl_auth_cit-configfs-length-overflow.patch iser-target-fix-session-reset-bug-with-rdma_cm_event_disconnected.patch iscsi-target-fix-iscsi_op_scsi_tmfunc-handling-for-iser.patch usb-storage-add-microvault-flash-drive-to-unusual_devs.patch +alsa-hda-yet-another-dell-headset-mic-quirk.patch +alsa-hda-guess-what-it-s-two-more-dell-headset-mic-quirks.patch +firewire-fix-libdc1394-flycap2-iso-event-regression.patch -- 2.47.3