Author: glen                         Date: Sat Aug 13 18:56:48 2011 GMT
Module: packages                      Tag: LINUX_2_6_38
---- Log message:
- update to apply on 26.38.8

---- Files affected:
packages/kernel:
   alsa-driver-linuxant.patch (1.1 -> 1.1.2.1) 

---- Diffs:

================================================================
Index: packages/kernel/alsa-driver-linuxant.patch
diff -u packages/kernel/alsa-driver-linuxant.patch:1.1 
packages/kernel/alsa-driver-linuxant.patch:1.1.2.1
--- packages/kernel/alsa-driver-linuxant.patch:1.1      Sat Aug 13 11:07:09 2011
+++ packages/kernel/alsa-driver-linuxant.patch  Sat Aug 13 20:56:43 2011
@@ -169,9 +169,8 @@
        snd_card_free(pci_get_drvdata(pci));
        pci_set_drvdata(pci, NULL);
  }
-diff -urN --show-c-function 
alsa-driver-git20100411/alsa-kernel/pci/hda/patch_conexant.c 
alsa-driver-git20100411-hda/alsa-kernel/pci/hda/patch_conexant.c
---- alsa-driver-git20100411/alsa-kernel/pci/hda/patch_conexant.c       
2010-04-11 13:42:02.000000000 -0400
-+++ alsa-driver-git20100411-hda/alsa-kernel/pci/hda/patch_conexant.c   
2010-04-13 20:41:48.000000000 -0400
+--- kernel-2.6.38.8/sound/pci/hda/patch_conexant.c     2011-08-13 
17:43:26.302928790 +0300
++++ kernel-2.6.38.8/sound/pci/hda/patch_conexant.c     2011-08-13 
17:42:03.552387527 +0300
 @@ -1,10 +1,12 @@
  /*
 - * HD audio interface patch for Conexant HDA audio codec
@@ -201,7 +200,7 @@
  struct conexant_jack {
  
        hda_nid_t nid;
-@@ -99,7 +109,7 @@
+@@ -107,7 +117,7 @@
        int num_channel_mode;
  
        /* PCM information */
@@ -210,10 +209,10 @@
  
        unsigned int spdif_route;
  
-@@ -131,6 +141,14 @@
-       unsigned int dc_enable;
-       unsigned int dc_input_bias; /* offset into cxt5066_olpc_dc_bias */
+@@ -146,6 +156,14 @@
        unsigned int mic_boost; /* offset into cxt5066_analog_mic_boost */
+ 
+       unsigned int beep_amp;
 +
 +      /* HSF modem */
 +      void *modem_devnode;
@@ -225,7 +224,7 @@
  };
  
  static int conexant_playback_pcm_open(struct hda_pcm_stream *hinfo,
-@@ -221,6 +239,42 @@
+@@ -236,6 +254,42 @@
        return 0;
  }
  
@@ -268,7 +267,7 @@
  
  
  static struct hda_pcm_stream conexant_pcm_analog_playback = {
-@@ -301,33 +355,50 @@
+@@ -316,33 +370,50 @@
        },
  };
  
@@ -336,9 +335,9 @@
                info->pcm_type = HDA_PCM_TYPE_SPDIF;
                info->stream[SNDRV_PCM_STREAM_PLAYBACK] =
                        conexant_pcm_digital_playback;
-@@ -339,6 +410,23 @@
-                       info->stream[SNDRV_PCM_STREAM_CAPTURE].nid =
-                               spec->dig_in_nid;
+@@ -453,6 +524,23 @@
+                       }
+                       jacks++;
                }
 +
 +              info++;
@@ -358,9 +357,9 @@
 +              info++;
 +              codec->num_pcms++;
        }
+ }
  
-       return 0;
-@@ -476,20 +564,68 @@
+@@ -499,20 +587,68 @@
  }
  #endif
  
@@ -431,7 +430,7 @@
        if (spec->jacks.list) {
                struct conexant_jack *jacks = spec->jacks.list;
                int i;
-@@ -501,9 +637,114 @@
+@@ -524,9 +660,114 @@
        }
  #endif
        snd_hda_detach_beep_device(codec);
@@ -547,19 +546,25 @@
  static struct snd_kcontrol_new cxt_capture_mixers[] = {
        {
                .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
-@@ -587,9 +828,46 @@
+@@ -644,11 +885,14 @@
        .build_controls = conexant_build_controls,
        .build_pcms = conexant_build_pcms,
        .init = conexant_init,
 +      .exit = conexant_exit,
        .free = conexant_free,
-+      .unsol_event = conexant_unsol_event,
-+#ifdef CONFIG_PM
-+      .suspend = conexant_suspend,
+ #ifdef CONFIG_SND_HDA_POWER_SAVE
+       .suspend = conexant_suspend,
 +      .resume = conexant_resume,
-+#endif
+ #endif
+       .reboot_notify = snd_hda_shutup_pins,
++      .unsol_event = conexant_unsol_event,
  };
  
+ #ifdef CONFIG_SND_HDA_INPUT_BEEP
+@@ -658,6 +902,37 @@
+ #define set_beep_amp(spec, nid, idx, dir) /* NOP */
+ #endif
+ 
 +static int patch_cxthsfmodem(struct hda_codec *codec)
 +{
 +      struct conexant_spec *spec;
@@ -594,7 +599,7 @@
  /*
   * EAPD control
   * the private value = nid | (invert << 8)
-@@ -762,13 +1040,15 @@
+@@ -830,13 +1105,15 @@
  static void cxt5045_hp_automic(struct hda_codec *codec)
  {
        static struct hda_verb mic_jack_on[] = {
@@ -614,7 +619,7 @@
                {}
        };
        unsigned int present;
-@@ -798,14 +1078,19 @@
+@@ -866,14 +1143,19 @@
  static void cxt5045_hp_unsol_event(struct hda_codec *codec,
                                   unsigned int res)
  {
@@ -636,23 +641,7 @@
  
        }
  }
-@@ -1209,6 +1494,15 @@
-               break;
-       }
- 
-+      if(codec->mfg) {
-+              int (*cnxthwhda_probe)(void *codec, struct device *hwDev, void 
**ppDevNode);
-+              cnxthwhda_probe = (void*)symbol_request(cnxthwhda_probe);
-+              if(cnxthwhda_probe)
-+                      symbol_put(cnxthwhda_probe);
-+              else
-+                      printk(KERN_ERR"%s: Conexant HSF modem detected but 
driver not present\n", __FUNCTION__);
-+      }
-+
-       return 0;
- }
- 
-@@ -1247,7 +1541,7 @@
+@@ -1321,7 +1603,7 @@
         * the headphone jack
         */
        bits = (!spec->hp_present && spec->cur_eapd) ? 0 : HDA_AMP_MUTE;
@@ -661,7 +650,7 @@
         * pin widgets unlike other codecs.  In this case, we need to
         * set index 0x01 for the volume from the mixer amp 0x19.
         */
-@@ -1591,6 +1885,16 @@
+@@ -1665,6 +1947,16 @@
                codec->patch_ops.unsol_event = cxt5047_hp_unsol_event;
  #endif        
        }
@@ -678,7 +667,23 @@
        spec->vmaster_nid = 0x13;
  
        switch (codec->subsystem_id >> 16) {
-@@ -1707,6 +2011,9 @@
+@@ -1681,6 +1973,15 @@
+               break;
+       }
+ 
++      if(codec->mfg) {
++              int (*cnxthwhda_probe)(void *codec, struct device *hwDev, void 
**ppDevNode);
++              cnxthwhda_probe = (void*)symbol_request(cnxthwhda_probe);
++              if(cnxthwhda_probe)
++                      symbol_put(cnxthwhda_probe);
++              else
++                      printk(KERN_ERR"%s: Conexant HSF modem detected but 
driver not present\n", __FUNCTION__);
++      }
++
+       return 0;
+ }
+ 
+@@ -1786,6 +2087,9 @@
        case CXT5051_PORTC_EVENT:
                cxt5051_portc_automic(codec);
                break;
@@ -688,7 +693,7 @@
        }
        conexant_report_jack(codec, nid);
  }
-@@ -1902,6 +2209,7 @@
+@@ -1990,6 +2294,7 @@
                cxt5051_portb_automic(codec);
                cxt5051_portc_automic(codec);
        }
@@ -696,9 +701,9 @@
        return 0;
  }
  
-@@ -1997,6 +2305,15 @@
-               break;
-       }
+@@ -2102,6 +2407,15 @@
+       if (spec->beep_amp)
+               snd_hda_attach_beep_device(codec, spec->beep_amp);
  
 +      if(codec->mfg) {
 +              int (*cnxthwhda_probe)(void *codec, struct device *hwDev, void 
**ppDevNode);
@@ -712,7 +717,7 @@
        return 0;
  }
  
-@@ -3100,6 +3417,423 @@
+@@ -3927,6 +4241,423 @@
  /*
   */
  
@@ -1136,10 +1141,10 @@
  static struct hda_codec_preset snd_hda_preset_conexant[] = {
        { .id = 0x14f15045, .name = "CX20549 (Venice)",
          .patch = patch_cxt5045 },
-@@ -3113,18 +3847,28 @@
-         .patch = patch_cxt5066 },
-       { .id = 0x14f15069, .name = "CX20585",
-         .patch = patch_cxt5066 },
+@@ -3960,6 +4691,12 @@
+         .patch = patch_conexant_auto },
+       { .id = 0x14f150b9, .name = "CX20665",
+         .patch = patch_conexant_auto },
 +      { .id = 0x14f12bfa, .mfg = 2, .name = "HSF",
 +        .patch = patch_cxthsfmodem },
 +      { .id = 0x14f12c06, .mfg = 2, .name = "HSF",
@@ -1149,13 +1154,10 @@
        {} /* terminator */
  };
  
-+
- MODULE_ALIAS("snd-hda-codec-id:14f15045");
- MODULE_ALIAS("snd-hda-codec-id:14f15047");
- MODULE_ALIAS("snd-hda-codec-id:14f15051");
- MODULE_ALIAS("snd-hda-codec-id:14f15066");
- MODULE_ALIAS("snd-hda-codec-id:14f15067");
- MODULE_ALIAS("snd-hda-codec-id:14f15069");
+@@ -3979,9 +4716,12 @@
+ MODULE_ALIAS("snd-hda-codec-id:14f150ac");
+ MODULE_ALIAS("snd-hda-codec-id:14f150b8");
+ MODULE_ALIAS("snd-hda-codec-id:14f150b9");
 +MODULE_ALIAS("snd-hda-codec-id:14f12bfa");
 +MODULE_ALIAS("snd-hda-codec-id:14f12c06");
 +MODULE_ALIAS("snd-hda-codec-id:14f1*");
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/alsa-driver-linuxant.patch?r1=1.1&r2=1.1.2.1&f=u

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to