summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-01-14 15:56:22 +0100
committerTakashi Iwai <tiwai@suse.de>2015-01-14 15:56:22 +0100
commit03be1d73e11488028e6a168e5f98c12c0259d978 (patch)
treed1156041acf6dbd73cabc67a6f1fa4ae8a005d92
parent5136c9f559868acaf473e774af5e04c124dbccef (diff)
parent293e6baf317290e0574494fc405053d6ed016e52 (diff)
downloadalsa-driver-build-unstable-03be1d73e11488028e6a168e5f98c12c0259d978.tar.gz
Merge remote-tracking branch 'stable/build' into build
-rw-r--r--alsa/include/sound/pcm.patch6
-rw-r--r--alsa/pci/echoaudio/echoaudio.patch14
-rw-r--r--alsa/pci/hda/hda_intel.h5
-rw-r--r--alsa/pci/hda/hda_intel_compat.h67
-rw-r--r--alsa/usb/line6/Makefile10
-rw-r--r--alsa/usb/line6/audio.c2
-rw-r--r--alsa/usb/line6/capture.c2
-rw-r--r--alsa/usb/line6/driver.c2
-rw-r--r--alsa/usb/line6/midi.c2
-rw-r--r--alsa/usb/line6/midibuf.c2
-rw-r--r--alsa/usb/line6/pcm.c2
-rw-r--r--alsa/usb/line6/playback.c2
-rw-r--r--alsa/usb/line6/pod.c2
-rw-r--r--alsa/usb/line6/podhd.c2
-rw-r--r--alsa/usb/line6/toneport.c2
-rw-r--r--alsa/usb/line6/variax.c2
16 files changed, 114 insertions, 10 deletions
diff --git a/alsa/include/sound/pcm.patch b/alsa/include/sound/pcm.patch
index acefa50de..70a8c95d9 100644
--- a/alsa/include/sound/pcm.patch
+++ b/alsa/include/sound/pcm.patch
@@ -1,5 +1,5 @@
---- ../../alsa-kernel/include/pcm.h 2014-11-05 11:37:45.762841230 +0100
-+++ pcm.h 2014-11-05 15:43:22.943766205 +0100
+--- ../../alsa-kernel/include/pcm.h 2015-01-05 10:52:39.979055860 +0100
++++ pcm.h 2015-01-14 15:50:55.945973100 +0100
@@ -283,10 +283,18 @@
snd_pcm_uframes_t avail_max;
snd_pcm_uframes_t hw_ptr_base; /* Position at buffer restart */
@@ -179,5 +179,5 @@
int snd_pcm_stop(struct snd_pcm_substream *substream, snd_pcm_state_t status);
+#endif
int snd_pcm_drain_done(struct snd_pcm_substream *substream);
+ int snd_pcm_stop_xrun(struct snd_pcm_substream *substream);
#ifdef CONFIG_PM
- int snd_pcm_suspend(struct snd_pcm_substream *substream);
diff --git a/alsa/pci/echoaudio/echoaudio.patch b/alsa/pci/echoaudio/echoaudio.patch
index 268961dd7..eb269622c 100644
--- a/alsa/pci/echoaudio/echoaudio.patch
+++ b/alsa/pci/echoaudio/echoaudio.patch
@@ -1,6 +1,6 @@
---- ../../alsa-kernel/pci/echoaudio/echoaudio.c 2014-11-05 15:38:31.147011646 +0100
-+++ echoaudio.c 2014-11-05 15:43:23.744779248 +0100
-@@ -1906,6 +1906,7 @@
+--- ../../alsa-kernel/pci/echoaudio/echoaudio.c 2015-01-11 11:56:56.520391385 +0100
++++ echoaudio.c 2015-01-14 15:50:56.609983765 +0100
+@@ -1901,6 +1901,7 @@
struct echoaudio *chip;
int err;
size_t sz;
@@ -8,7 +8,7 @@
static struct snd_device_ops ops = {
.dev_free = snd_echo_dev_free,
};
-@@ -1977,7 +1978,12 @@
+@@ -1972,7 +1973,12 @@
chip->comm_page_phys = chip->commpage_dma_buf.addr;
chip->comm_page = (struct comm_page *)chip->commpage_dma_buf.area;
@@ -22,15 +22,15 @@
if (err >= 0)
err = set_mixer_defaults(chip);
if (err < 0) {
-@@ -2204,6 +2210,7 @@
+@@ -2195,6 +2201,7 @@
struct comm_page *commpage, *commpage_bak;
u32 pipe_alloc_mask;
int err;
+ u16 subsystem_device;
- pci_restore_state(pci);
commpage_bak = kmalloc(sizeof(struct echoaudio), GFP_KERNEL);
-@@ -2212,7 +2219,12 @@
+ if (commpage_bak == NULL)
+@@ -2202,7 +2209,12 @@
commpage = chip->comm_page;
memcpy(commpage_bak, commpage, sizeof(struct comm_page));
diff --git a/alsa/pci/hda/hda_intel.h b/alsa/pci/hda/hda_intel.h
new file mode 100644
index 000000000..18965ea88
--- /dev/null
+++ b/alsa/pci/hda/hda_intel.h
@@ -0,0 +1,5 @@
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 20, 0)
+#include "../../alsa-kernel/pci/hda/hda_intel.h"
+#else
+#include "hda_intel_compat.h"
+#endif
diff --git a/alsa/pci/hda/hda_intel_compat.h b/alsa/pci/hda/hda_intel_compat.h
new file mode 100644
index 000000000..70b8306fe
--- /dev/null
+++ b/alsa/pci/hda/hda_intel_compat.h
@@ -0,0 +1,67 @@
+/*
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; either version 2 of the License, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc., 59
+ * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+#ifndef __SOUND_HDA_INTEL_H
+#define __SOUND_HDA_INTEL_H
+
+#include "hda_priv.h"
+
+struct hda_intel {
+ struct azx chip;
+
+ /* for pending irqs */
+ struct work_struct irq_pending_work;
+
+ /* sync probing */
+ struct completion probe_wait;
+ struct work_struct probe_work;
+
+ /* card list (for power_save trigger) */
+ struct list_head list;
+
+ /* extra flags */
+ unsigned int irq_pending_warned:1;
+
+ /* VGA-switcheroo setup */
+ unsigned int use_vga_switcheroo:1;
+ unsigned int vga_switcheroo_registered:1;
+ unsigned int init_failed:1; /* delayed init failed */
+
+ /* secondary power domain for hdmi audio under vga device */
+ struct dev_pm_domain hdmi_pm_domain;
+};
+
+#ifdef CONFIG_SND_HDA_I915
+int hda_display_power(struct hda_intel *hda, bool enable);
+void haswell_set_bclk(struct hda_intel *hda);
+int hda_i915_init(struct hda_intel *hda);
+int hda_i915_exit(struct hda_intel *hda);
+#else
+static inline int hda_display_power(struct hda_intel *hda, bool enable)
+{
+ return 0;
+}
+static inline void haswell_set_bclk(struct hda_intel *hda) { return; }
+static inline int hda_i915_init(struct hda_intel *hda)
+{
+ return -ENODEV;
+}
+static inline int hda_i915_exit(struct hda_intel *hda)
+{
+ return 0;
+}
+#endif
+
+#endif
diff --git a/alsa/usb/line6/Makefile b/alsa/usb/line6/Makefile
new file mode 100644
index 000000000..299608d7b
--- /dev/null
+++ b/alsa/usb/line6/Makefile
@@ -0,0 +1,10 @@
+ifndef SND_TOPDIR
+SND_TOPDIR=../..
+endif
+
+include $(SND_TOPDIR)/toplevel.config
+include $(SND_TOPDIR)/Makefile.conf
+
+include $(SND_TOPDIR)/alsa-kernel/usb/line6/Makefile
+
+include $(SND_TOPDIR)/Rules.make
diff --git a/alsa/usb/line6/audio.c b/alsa/usb/line6/audio.c
new file mode 100644
index 000000000..868ae834f
--- /dev/null
+++ b/alsa/usb/line6/audio.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/audio.c"
diff --git a/alsa/usb/line6/capture.c b/alsa/usb/line6/capture.c
new file mode 100644
index 000000000..f264ce734
--- /dev/null
+++ b/alsa/usb/line6/capture.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/capture.c"
diff --git a/alsa/usb/line6/driver.c b/alsa/usb/line6/driver.c
new file mode 100644
index 000000000..76b912193
--- /dev/null
+++ b/alsa/usb/line6/driver.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/driver.c"
diff --git a/alsa/usb/line6/midi.c b/alsa/usb/line6/midi.c
new file mode 100644
index 000000000..2359448d7
--- /dev/null
+++ b/alsa/usb/line6/midi.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/midi.c"
diff --git a/alsa/usb/line6/midibuf.c b/alsa/usb/line6/midibuf.c
new file mode 100644
index 000000000..4868d52c2
--- /dev/null
+++ b/alsa/usb/line6/midibuf.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/midibuf.c"
diff --git a/alsa/usb/line6/pcm.c b/alsa/usb/line6/pcm.c
new file mode 100644
index 000000000..ecf0e9937
--- /dev/null
+++ b/alsa/usb/line6/pcm.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/pcm.c"
diff --git a/alsa/usb/line6/playback.c b/alsa/usb/line6/playback.c
new file mode 100644
index 000000000..1974f479f
--- /dev/null
+++ b/alsa/usb/line6/playback.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/playback.c"
diff --git a/alsa/usb/line6/pod.c b/alsa/usb/line6/pod.c
new file mode 100644
index 000000000..a1b50c366
--- /dev/null
+++ b/alsa/usb/line6/pod.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/pod.c"
diff --git a/alsa/usb/line6/podhd.c b/alsa/usb/line6/podhd.c
new file mode 100644
index 000000000..54ed458aa
--- /dev/null
+++ b/alsa/usb/line6/podhd.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/podhd.c"
diff --git a/alsa/usb/line6/toneport.c b/alsa/usb/line6/toneport.c
new file mode 100644
index 000000000..804ada3ef
--- /dev/null
+++ b/alsa/usb/line6/toneport.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/toneport.c"
diff --git a/alsa/usb/line6/variax.c b/alsa/usb/line6/variax.c
new file mode 100644
index 000000000..3d573ae4e
--- /dev/null
+++ b/alsa/usb/line6/variax.c
@@ -0,0 +1,2 @@
+#include "adriver.h"
+#include "../../alsa-kernel/usb/line6/variax.c"