Merge branch 'fix/hda' into topic/hda
This commit is contained in:
@ -789,11 +789,13 @@ static unsigned int azx_rirb_get_response(struct hda_bus *bus,
|
||||
{
|
||||
struct azx *chip = bus->private_data;
|
||||
unsigned long timeout;
|
||||
unsigned long loopcounter;
|
||||
int do_poll = 0;
|
||||
|
||||
again:
|
||||
timeout = jiffies + msecs_to_jiffies(1000);
|
||||
for (;;) {
|
||||
|
||||
for (loopcounter = 0;; loopcounter++) {
|
||||
if (chip->polling_mode || do_poll) {
|
||||
spin_lock_irq(&chip->reg_lock);
|
||||
azx_update_rirb(chip);
|
||||
@ -809,7 +811,7 @@ static unsigned int azx_rirb_get_response(struct hda_bus *bus,
|
||||
}
|
||||
if (time_after(jiffies, timeout))
|
||||
break;
|
||||
if (bus->needs_damn_long_delay)
|
||||
if (bus->needs_damn_long_delay || loopcounter > 3000)
|
||||
msleep(2); /* temporary workaround */
|
||||
else {
|
||||
udelay(10);
|
||||
|
@ -4390,9 +4390,9 @@ static int stac92xx_init(struct hda_codec *codec)
|
||||
def_conf = get_defcfg_connect(def_conf);
|
||||
/* skip any ports that don't have jacks since presence
|
||||
* detection is useless */
|
||||
if (def_conf != AC_JACK_PORT_COMPLEX) {
|
||||
if (def_conf != AC_JACK_PORT_NONE)
|
||||
stac_toggle_power_map(codec, nid, 1);
|
||||
if (def_conf != AC_JACK_PORT_NONE &&
|
||||
!is_jack_detectable(codec, nid)) {
|
||||
stac_toggle_power_map(codec, nid, 1);
|
||||
continue;
|
||||
}
|
||||
if (enable_pin_detect(codec, nid, STAC_PWR_EVENT)) {
|
||||
|
@ -35,7 +35,7 @@ static unsigned long siumckb_recalc(struct clk *clk)
|
||||
return codec_freq;
|
||||
}
|
||||
|
||||
static struct clk_ops siumckb_clk_ops = {
|
||||
static struct sh_clk_ops siumckb_clk_ops = {
|
||||
.recalc = siumckb_recalc,
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user