From: Greg Kroah-Hartman Date: Fri, 15 Nov 2013 07:16:23 +0000 (+0900) Subject: 3.4-stable patches X-Git-Tag: v3.4.70~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dd958609bafc82f1d291a598e14a33451aeaa73b;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: alsa-hda-move-one-time-init-codes-from-generic_hdmi_init.patch usb-add-new-zte-3g-dongle-s-pid-to-option.c.patch --- diff --git a/queue-3.4/alsa-hda-move-one-time-init-codes-from-generic_hdmi_init.patch b/queue-3.4/alsa-hda-move-one-time-init-codes-from-generic_hdmi_init.patch new file mode 100644 index 00000000000..5d99eb2f976 --- /dev/null +++ b/queue-3.4/alsa-hda-move-one-time-init-codes-from-generic_hdmi_init.patch @@ -0,0 +1,73 @@ +From 8b8d654b55648561287bd8baca0f75f964a17038 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Wed, 20 Jun 2012 16:32:22 +0200 +Subject: ALSA: hda - Move one-time init codes from generic_hdmi_init() + +From: Takashi Iwai + +commit 8b8d654b55648561287bd8baca0f75f964a17038 upstream. + +The codes to initialize work struct or create a proc interface should +be called only once and never although it's called many times through +the init callback. Move that stuff into patch_generic_hdmi() so that +it's called only once. + +Signed-off-by: Takashi Iwai +BugLink: https://bugs.launchpad.net/bugs/1212160 +Signed-off-by: David Henningsson +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_hdmi.c | 22 +++++++++++++++++----- + 1 file changed, 17 insertions(+), 5 deletions(-) + +--- a/sound/pci/hda/patch_hdmi.c ++++ b/sound/pci/hda/patch_hdmi.c +@@ -1282,23 +1282,34 @@ static int generic_hdmi_build_controls(s + return 0; + } + +-static int generic_hdmi_init(struct hda_codec *codec) ++static int generic_hdmi_init_per_pins(struct hda_codec *codec) + { + struct hdmi_spec *spec = codec->spec; + int pin_idx; + + for (pin_idx = 0; pin_idx < spec->num_pins; pin_idx++) { + struct hdmi_spec_per_pin *per_pin = &spec->pins[pin_idx]; +- hda_nid_t pin_nid = per_pin->pin_nid; + struct hdmi_eld *eld = &per_pin->sink_eld; + +- hdmi_init_pin(codec, pin_nid); +- snd_hda_jack_detect_enable(codec, pin_nid, pin_nid); +- + per_pin->codec = codec; + INIT_DELAYED_WORK(&per_pin->work, hdmi_repoll_eld); + snd_hda_eld_proc_new(codec, eld, pin_idx); + } ++ return 0; ++} ++ ++static int generic_hdmi_init(struct hda_codec *codec) ++{ ++ struct hdmi_spec *spec = codec->spec; ++ int pin_idx; ++ ++ for (pin_idx = 0; pin_idx < spec->num_pins; pin_idx++) { ++ struct hdmi_spec_per_pin *per_pin = &spec->pins[pin_idx]; ++ hda_nid_t pin_nid = per_pin->pin_nid; ++ ++ hdmi_init_pin(codec, pin_nid); ++ snd_hda_jack_detect_enable(codec, pin_nid, pin_nid); ++ } + snd_hda_jack_report_sync(codec); + return 0; + } +@@ -1343,6 +1354,7 @@ static int patch_generic_hdmi(struct hda + return -EINVAL; + } + codec->patch_ops = generic_hdmi_patch_ops; ++ generic_hdmi_init_per_pins(codec); + + init_channel_allocations(); + diff --git a/queue-3.4/series b/queue-3.4/series index 411e3cc0cf2..9f3105b75b7 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -2,3 +2,5 @@ cxgb3-fix-length-calculation-in-write_ofld_wr-on-32-bit-architectures.patch xen-netback-use-jiffies_64-value-to-calculate-credit-timeout.patch net-flow_dissector-fail-on-evil-iph-ihl.patch pci-fix-truncation-of-resource-size-to-32-bits.patch +usb-add-new-zte-3g-dongle-s-pid-to-option.c.patch +alsa-hda-move-one-time-init-codes-from-generic_hdmi_init.patch diff --git a/queue-3.4/usb-add-new-zte-3g-dongle-s-pid-to-option.c.patch b/queue-3.4/usb-add-new-zte-3g-dongle-s-pid-to-option.c.patch new file mode 100644 index 00000000000..a87a135aa51 --- /dev/null +++ b/queue-3.4/usb-add-new-zte-3g-dongle-s-pid-to-option.c.patch @@ -0,0 +1,43 @@ +From 0636fc507a976cdc40f21bdbcce6f0b98ff1dfe9 Mon Sep 17 00:00:00 2001 +From: Rui li +Date: Fri, 25 Oct 2013 10:57:21 +0800 +Subject: USB: add new zte 3g-dongle's pid to option.c + +From: Rui li + +commit 0636fc507a976cdc40f21bdbcce6f0b98ff1dfe9 upstream. + +Signed-off-by: Rui li +Cc: stable +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/usb/serial/option.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -1391,6 +1391,23 @@ static const struct usb_device_id option + .driver_info = (kernel_ulong_t)&net_intf2_blacklist }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1426, 0xff, 0xff, 0xff), /* ZTE MF91 */ + .driver_info = (kernel_ulong_t)&net_intf2_blacklist }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1533, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1534, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1535, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1545, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1546, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1547, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1565, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1566, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1567, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1589, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1590, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1591, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1592, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1594, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1596, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1598, 0xff, 0xff, 0xff) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1600, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x2002, 0xff, + 0xff, 0xff), .driver_info = (kernel_ulong_t)&zte_k3765_z_blacklist }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x2003, 0xff, 0xff, 0xff) },