aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-05-15 02:58:49 -0400
committerTakashi Iwai <tiwai@suse.de>2012-05-15 02:58:49 -0400
commitf153c6af87401fdae3bb2dfbfc6284eb0d537a05 (patch)
treec0a8297706f86f949ad4aba194f46f52ab53de21 /sound
parent7560931fbd0a7cb86b8cb06f363c5e4984f4f7d0 (diff)
parentb0791dda813c179e539b0fc1ecd3f5f30f2571e2 (diff)
Merge branch 'fix/hda' into topic/hda
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/hda_intel.c6
-rw-r--r--sound/pci/hda/patch_sigmatel.c6
-rw-r--r--sound/soc/sh/migor.c2
3 files changed, 8 insertions, 6 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index a70d7e5443aa..7ee46aba6ea7 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -789,11 +789,13 @@ static unsigned int azx_rirb_get_response(struct hda_bus *bus,
789{ 789{
790 struct azx *chip = bus->private_data; 790 struct azx *chip = bus->private_data;
791 unsigned long timeout; 791 unsigned long timeout;
792 unsigned long loopcounter;
792 int do_poll = 0; 793 int do_poll = 0;
793 794
794 again: 795 again:
795 timeout = jiffies + msecs_to_jiffies(1000); 796 timeout = jiffies + msecs_to_jiffies(1000);
796 for (;;) { 797
798 for (loopcounter = 0;; loopcounter++) {
797 if (chip->polling_mode || do_poll) { 799 if (chip->polling_mode || do_poll) {
798 spin_lock_irq(&chip->reg_lock); 800 spin_lock_irq(&chip->reg_lock);
799 azx_update_rirb(chip); 801 azx_update_rirb(chip);
@@ -809,7 +811,7 @@ static unsigned int azx_rirb_get_response(struct hda_bus *bus,
809 } 811 }
810 if (time_after(jiffies, timeout)) 812 if (time_after(jiffies, timeout))
811 break; 813 break;
812 if (bus->needs_damn_long_delay) 814 if (bus->needs_damn_long_delay || loopcounter > 3000)
813 msleep(2); /* temporary workaround */ 815 msleep(2); /* temporary workaround */
814 else { 816 else {
815 udelay(10); 817 udelay(10);
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 0669149a92fc..3808f37bf15e 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -4390,9 +4390,9 @@ static int stac92xx_init(struct hda_codec *codec)
4390 def_conf = get_defcfg_connect(def_conf); 4390 def_conf = get_defcfg_connect(def_conf);
4391 /* skip any ports that don't have jacks since presence 4391 /* skip any ports that don't have jacks since presence
4392 * detection is useless */ 4392 * detection is useless */
4393 if (def_conf != AC_JACK_PORT_COMPLEX) { 4393 if (def_conf != AC_JACK_PORT_NONE &&
4394 if (def_conf != AC_JACK_PORT_NONE) 4394 !is_jack_detectable(codec, nid)) {
4395 stac_toggle_power_map(codec, nid, 1); 4395 stac_toggle_power_map(codec, nid, 1);
4396 continue; 4396 continue;
4397 } 4397 }
4398 if (enable_pin_detect(codec, nid, STAC_PWR_EVENT)) { 4398 if (enable_pin_detect(codec, nid, STAC_PWR_EVENT)) {
diff --git a/sound/soc/sh/migor.c b/sound/soc/sh/migor.c
index 9d9ad8d61c0a..8526e1edaf45 100644
--- a/sound/soc/sh/migor.c
+++ b/sound/soc/sh/migor.c
@@ -35,7 +35,7 @@ static unsigned long siumckb_recalc(struct clk *clk)
35 return codec_freq; 35 return codec_freq;
36} 36}
37 37
38static struct clk_ops siumckb_clk_ops = { 38static struct sh_clk_ops siumckb_clk_ops = {
39 .recalc = siumckb_recalc, 39 .recalc = siumckb_recalc,
40}; 40};
41 41