Merge branch 'for-linus' into for-next
authorTakashi Iwai <tiwai@suse.de>
Mon, 27 Oct 2014 13:11:07 +0000 (14:11 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 27 Oct 2014 13:11:07 +0000 (14:11 +0100)
Merged upstream branch to make further fireworks development easier
(and avoid conflicts earlier).

Conflicts:
sound/firewire/bebob/bebob_focusrite.c

1  2 
sound/core/pcm_native.c
sound/firewire/bebob/bebob_focusrite.c
sound/firewire/bebob/bebob_terratec.c

Simple merge
@@@ -101,13 -103,34 +103,34 @@@ saffire_write_quad(struct snd_bebob *be
                                  &data, sizeof(__be32), 0);
  }
  
 -static char *const saffirepro_10_clk_src_labels[] = {
++static const char *const saffirepro_10_clk_src_labels[] = {
+       SND_BEBOB_CLOCK_INTERNAL, "S/PDIF", "Word Clock"
+ };
 -static char *const saffirepro_26_clk_src_labels[] = {
 +static const char *const saffirepro_26_clk_src_labels[] = {
        SND_BEBOB_CLOCK_INTERNAL, "S/PDIF", "ADAT1", "ADAT2", "Word Clock"
  };
- static const char *const saffirepro_10_clk_src_labels[] = {
-       SND_BEBOB_CLOCK_INTERNAL, "S/PDIF", "Word Clock"
+ /* Value maps between registers and labels for SaffirePro 10/26. */
+ static const signed char saffirepro_clk_maps[][SAFFIREPRO_CLOCK_SOURCE_COUNT] = {
+       /* SaffirePro 10 */
+       [0] = {
+               [SAFFIREPRO_CLOCK_SOURCE_INTERNAL]  =  0,
+               [SAFFIREPRO_CLOCK_SOURCE_SKIP]      = -1, /* not supported */
+               [SAFFIREPRO_CLOCK_SOURCE_SPDIF]     =  1,
+               [SAFFIREPRO_CLOCK_SOURCE_ADAT1]     = -1, /* not supported */
+               [SAFFIREPRO_CLOCK_SOURCE_ADAT2]     = -1, /* not supported */
+               [SAFFIREPRO_CLOCK_SOURCE_WORDCLOCK] =  2,
+       },
+       /* SaffirePro 26 */
+       [1] = {
+               [SAFFIREPRO_CLOCK_SOURCE_INTERNAL]  =  0,
+               [SAFFIREPRO_CLOCK_SOURCE_SKIP]      = -1, /* not supported */
+               [SAFFIREPRO_CLOCK_SOURCE_SPDIF]     =  1,
+               [SAFFIREPRO_CLOCK_SOURCE_ADAT1]     =  2,
+               [SAFFIREPRO_CLOCK_SOURCE_ADAT2]     =  3,
+               [SAFFIREPRO_CLOCK_SOURCE_WORDCLOCK] =  4,
+       }
  };
  static int
  saffirepro_both_clk_freq_get(struct snd_bebob *bebob, unsigned int *rate)
  {
Simple merge