Merge branch 'topic/cleanup' into for-next
authorTakashi Iwai <tiwai@suse.de>
Mon, 20 Oct 2014 06:44:25 +0000 (08:44 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 20 Oct 2014 06:44:25 +0000 (08:44 +0200)
sound/core/pcm_native.c
sound/pci/hda/patch_hdmi.c
sound/pci/hda/patch_realtek.c
sound/usb/quirks-table.h

index bfe1cf6b492f08489a2f7a5dd7bc9e54ae61a4cc..815396d8427fe68c42d40e7cecf195a2a300180b 100644 (file)
@@ -3311,7 +3311,7 @@ static const struct vm_operations_struct snd_pcm_vm_ops_data_fault = {
 
 #ifndef ARCH_HAS_DMA_MMAP_COHERENT
 /* This should be defined / handled globally! */
-#ifdef CONFIG_ARM
+#if defined(CONFIG_ARM) || defined(CONFIG_ARM64)
 #define ARCH_HAS_DMA_MMAP_COHERENT
 #endif
 #endif
index 39862e98551c41466505ee7b1764496e04799880..9dc9cf8c90e97bd5d0faa08bedae29139e43d3bc 100644 (file)
@@ -1583,19 +1583,22 @@ static bool hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll)
                }
        }
 
-       if (pin_eld->eld_valid && !eld->eld_valid) {
-               update_eld = true;
+       if (pin_eld->eld_valid != eld->eld_valid)
                eld_changed = true;
-       }
+
+       if (pin_eld->eld_valid && !eld->eld_valid)
+               update_eld = true;
+
        if (update_eld) {
                bool old_eld_valid = pin_eld->eld_valid;
                pin_eld->eld_valid = eld->eld_valid;
-               eld_changed = pin_eld->eld_size != eld->eld_size ||
+               if (pin_eld->eld_size != eld->eld_size ||
                              memcmp(pin_eld->eld_buffer, eld->eld_buffer,
-                                    eld->eld_size) != 0;
-               if (eld_changed)
+                                    eld->eld_size) != 0) {
                        memcpy(pin_eld->eld_buffer, eld->eld_buffer,
                               eld->eld_size);
+                       eld_changed = true;
+               }
                pin_eld->eld_size = eld->eld_size;
                pin_eld->info = eld->info;
 
index bc86c36b4bfa39b383f113b5dbd377b0c8ffd22d..4c35490cf1198642778307156183728fbf28f814 100644 (file)
@@ -2884,6 +2884,9 @@ static void alc283_shutup(struct hda_codec *codec)
 
        alc_write_coef_idx(codec, 0x43, 0x9004);
 
+       /*depop hp during suspend*/
+       alc_write_coef_idx(codec, 0x06, 0x2100);
+
        snd_hda_codec_write(codec, hp_pin, 0,
                            AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE);
 
index 223c47b33ba30e767c7af227c974a57471d02b90..c657752a420c024aba8c61fa8ced9b8971434fcf 100644 (file)
@@ -384,6 +384,36 @@ YAMAHA_DEVICE(0x105d, NULL),
                }
        }
 },
+{
+       USB_DEVICE(0x0499, 0x1509),
+       .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
+               /* .vendor_name = "Yamaha", */
+               /* .product_name = "Steinberg UR22", */
+               .ifnum = QUIRK_ANY_INTERFACE,
+               .type = QUIRK_COMPOSITE,
+               .data = (const struct snd_usb_audio_quirk[]) {
+                       {
+                               .ifnum = 1,
+                               .type = QUIRK_AUDIO_STANDARD_INTERFACE
+                       },
+                       {
+                               .ifnum = 2,
+                               .type = QUIRK_AUDIO_STANDARD_INTERFACE
+                       },
+                       {
+                               .ifnum = 3,
+                               .type = QUIRK_MIDI_YAMAHA
+                       },
+                       {
+                               .ifnum = 4,
+                               .type = QUIRK_IGNORE_INTERFACE
+                       },
+                       {
+                               .ifnum = -1
+                       }
+               }
+       }
+},
 {
        USB_DEVICE(0x0499, 0x150a),
        .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {