You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
ALSA: hda - Replace with standard printk
Use dev_err() and co for messages from HD-audio controller and codec drivers. The codec drivers are mostly bound with codec objects, so some helper macros, codec_err(), codec_info(), etc, are provided. They merely wrap the corresponding dev_xxx(). There are a few places still calling snd_printk() and its variants as they are called without the codec or device context. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -313,9 +313,9 @@ int snd_hda_parse_pin_defcfg(struct hda_codec *codec,
|
||||
}
|
||||
|
||||
if (hsmic)
|
||||
snd_printdd("Told to look for a headset mic, but didn't find any.\n");
|
||||
codec_dbg(codec, "Told to look for a headset mic, but didn't find any.\n");
|
||||
if (hpmic)
|
||||
snd_printdd("Told to look for a headphone mic, but didn't find any.\n");
|
||||
codec_dbg(codec, "Told to look for a headphone mic, but didn't find any.\n");
|
||||
}
|
||||
|
||||
/* FIX-UP:
|
||||
@@ -384,33 +384,33 @@ int snd_hda_parse_pin_defcfg(struct hda_codec *codec,
|
||||
/*
|
||||
* debug prints of the parsed results
|
||||
*/
|
||||
snd_printd("autoconfig: line_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x) type:%s\n",
|
||||
codec_info(codec, "autoconfig: line_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x) type:%s\n",
|
||||
cfg->line_outs, cfg->line_out_pins[0], cfg->line_out_pins[1],
|
||||
cfg->line_out_pins[2], cfg->line_out_pins[3],
|
||||
cfg->line_out_pins[4],
|
||||
cfg->line_out_type == AUTO_PIN_HP_OUT ? "hp" :
|
||||
(cfg->line_out_type == AUTO_PIN_SPEAKER_OUT ?
|
||||
"speaker" : "line"));
|
||||
snd_printd(" speaker_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
|
||||
codec_info(codec, " speaker_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
|
||||
cfg->speaker_outs, cfg->speaker_pins[0],
|
||||
cfg->speaker_pins[1], cfg->speaker_pins[2],
|
||||
cfg->speaker_pins[3], cfg->speaker_pins[4]);
|
||||
snd_printd(" hp_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
|
||||
codec_info(codec, " hp_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
|
||||
cfg->hp_outs, cfg->hp_pins[0],
|
||||
cfg->hp_pins[1], cfg->hp_pins[2],
|
||||
cfg->hp_pins[3], cfg->hp_pins[4]);
|
||||
snd_printd(" mono: mono_out=0x%x\n", cfg->mono_out_pin);
|
||||
codec_info(codec, " mono: mono_out=0x%x\n", cfg->mono_out_pin);
|
||||
if (cfg->dig_outs)
|
||||
snd_printd(" dig-out=0x%x/0x%x\n",
|
||||
codec_info(codec, " dig-out=0x%x/0x%x\n",
|
||||
cfg->dig_out_pins[0], cfg->dig_out_pins[1]);
|
||||
snd_printd(" inputs:\n");
|
||||
codec_info(codec, " inputs:\n");
|
||||
for (i = 0; i < cfg->num_inputs; i++) {
|
||||
snd_printd(" %s=0x%x\n",
|
||||
codec_info(codec, " %s=0x%x\n",
|
||||
hda_get_autocfg_input_label(codec, cfg, i),
|
||||
cfg->inputs[i].pin);
|
||||
}
|
||||
if (cfg->dig_in_pin)
|
||||
snd_printd(" dig-in=0x%x\n", cfg->dig_in_pin);
|
||||
codec_info(codec, " dig-in=0x%x\n", cfg->dig_in_pin);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -774,38 +774,33 @@ static void apply_fixup(struct hda_codec *codec, int id, int action, int depth)
|
||||
case HDA_FIXUP_PINS:
|
||||
if (action != HDA_FIXUP_ACT_PRE_PROBE || !fix->v.pins)
|
||||
break;
|
||||
snd_printdd(KERN_INFO SFX
|
||||
"%s: Apply pincfg for %s\n",
|
||||
codec_dbg(codec, "%s: Apply pincfg for %s\n",
|
||||
codec->chip_name, modelname);
|
||||
snd_hda_apply_pincfgs(codec, fix->v.pins);
|
||||
break;
|
||||
case HDA_FIXUP_VERBS:
|
||||
if (action != HDA_FIXUP_ACT_PROBE || !fix->v.verbs)
|
||||
break;
|
||||
snd_printdd(KERN_INFO SFX
|
||||
"%s: Apply fix-verbs for %s\n",
|
||||
codec_dbg(codec, "%s: Apply fix-verbs for %s\n",
|
||||
codec->chip_name, modelname);
|
||||
snd_hda_add_verbs(codec, fix->v.verbs);
|
||||
break;
|
||||
case HDA_FIXUP_FUNC:
|
||||
if (!fix->v.func)
|
||||
break;
|
||||
snd_printdd(KERN_INFO SFX
|
||||
"%s: Apply fix-func for %s\n",
|
||||
codec_dbg(codec, "%s: Apply fix-func for %s\n",
|
||||
codec->chip_name, modelname);
|
||||
fix->v.func(codec, fix, action);
|
||||
break;
|
||||
case HDA_FIXUP_PINCTLS:
|
||||
if (action != HDA_FIXUP_ACT_PROBE || !fix->v.pins)
|
||||
break;
|
||||
snd_printdd(KERN_INFO SFX
|
||||
"%s: Apply pinctl for %s\n",
|
||||
codec_dbg(codec, "%s: Apply pinctl for %s\n",
|
||||
codec->chip_name, modelname);
|
||||
set_pin_targets(codec, fix->v.pins);
|
||||
break;
|
||||
default:
|
||||
snd_printk(KERN_ERR SFX
|
||||
"%s: Invalid fixup type %d\n",
|
||||
codec_err(codec, "%s: Invalid fixup type %d\n",
|
||||
codec->chip_name, fix->type);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -172,7 +172,7 @@ static int snd_hda_do_attach(struct hda_beep *beep)
|
||||
err = input_register_device(input_dev);
|
||||
if (err < 0) {
|
||||
input_free_device(input_dev);
|
||||
printk(KERN_INFO "hda_beep: unable to register input device\n");
|
||||
codec_err(codec, "hda_beep: unable to register input device\n");
|
||||
return err;
|
||||
}
|
||||
beep->dev = input_dev;
|
||||
|
||||
+68
-69
@@ -201,7 +201,7 @@ make_codec_cmd(struct hda_codec *codec, hda_nid_t nid, int flags,
|
||||
|
||||
if ((codec->addr & ~0xf) || (nid & ~0x7f) ||
|
||||
(verb & ~0xfff) || (parm & ~0xffff)) {
|
||||
printk(KERN_ERR "hda-codec: out of range cmd %x:%x:%x:%x\n",
|
||||
codec_err(codec, "hda-codec: out of range cmd %x:%x:%x:%x\n",
|
||||
codec->addr, nid, verb, parm);
|
||||
return ~0;
|
||||
}
|
||||
@@ -249,8 +249,8 @@ static int codec_exec_verb(struct hda_codec *codec, unsigned int cmd,
|
||||
snd_hda_power_down(codec);
|
||||
if (!codec_in_pm(codec) && res && *res == -1 && bus->rirb_error) {
|
||||
if (bus->response_reset) {
|
||||
snd_printd("hda_codec: resetting BUS due to "
|
||||
"fatal communication error\n");
|
||||
codec_dbg(codec,
|
||||
"resetting BUS due to fatal communication error\n");
|
||||
trace_hda_bus_reset(bus);
|
||||
bus->ops.bus_reset(bus);
|
||||
}
|
||||
@@ -475,8 +475,7 @@ int snd_hda_get_connections(struct hda_codec *codec, hda_nid_t nid,
|
||||
|
||||
if (len > 0 && conn_list) {
|
||||
if (len > max_conns) {
|
||||
snd_printk(KERN_ERR "hda_codec: "
|
||||
"Too many connections %d for NID 0x%x\n",
|
||||
codec_err(codec, "Too many connections %d for NID 0x%x\n",
|
||||
len, nid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -574,8 +573,8 @@ int snd_hda_get_raw_connections(struct hda_codec *codec, hda_nid_t nid,
|
||||
range_val = !!(parm & (1 << (shift-1))); /* ranges */
|
||||
val = parm & mask;
|
||||
if (val == 0 && null_count++) { /* no second chance */
|
||||
snd_printdd("hda_codec: "
|
||||
"invalid CONNECT_LIST verb %x[%i]:%x\n",
|
||||
codec_dbg(codec,
|
||||
"invalid CONNECT_LIST verb %x[%i]:%x\n",
|
||||
nid, i, parm);
|
||||
return 0;
|
||||
}
|
||||
@@ -583,7 +582,7 @@ int snd_hda_get_raw_connections(struct hda_codec *codec, hda_nid_t nid,
|
||||
if (range_val) {
|
||||
/* ranges between the previous and this one */
|
||||
if (!prev_nid || prev_nid >= val) {
|
||||
snd_printk(KERN_WARNING "hda_codec: "
|
||||
codec_warn(codec,
|
||||
"invalid dep_range_val %x:%x\n",
|
||||
prev_nid, val);
|
||||
continue;
|
||||
@@ -660,7 +659,7 @@ int snd_hda_get_conn_index(struct hda_codec *codec, hda_nid_t mux,
|
||||
if (!recursive)
|
||||
return -1;
|
||||
if (recursive > 10) {
|
||||
snd_printd("hda_codec: too deep connection for 0x%x\n", nid);
|
||||
codec_dbg(codec, "too deep connection for 0x%x\n", nid);
|
||||
return -1;
|
||||
}
|
||||
recursive++;
|
||||
@@ -808,8 +807,7 @@ static int init_unsol_queue(struct hda_bus *bus)
|
||||
|
||||
unsol = kzalloc(sizeof(*unsol), GFP_KERNEL);
|
||||
if (!unsol) {
|
||||
snd_printk(KERN_ERR "hda_codec: "
|
||||
"can't allocate unsolicited queue\n");
|
||||
dev_err(bus->card->dev, "can't allocate unsolicited queue\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
INIT_WORK(&unsol->work, process_unsol_events);
|
||||
@@ -881,7 +879,7 @@ int snd_hda_bus_new(struct snd_card *card,
|
||||
|
||||
bus = kzalloc(sizeof(*bus), GFP_KERNEL);
|
||||
if (bus == NULL) {
|
||||
snd_printk(KERN_ERR "can't allocate struct hda_bus\n");
|
||||
dev_err(card->dev, "can't allocate struct hda_bus\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
@@ -900,7 +898,7 @@ int snd_hda_bus_new(struct snd_card *card,
|
||||
"hd-audio%d", card->number);
|
||||
bus->workq = create_singlethread_workqueue(bus->workq_name);
|
||||
if (!bus->workq) {
|
||||
snd_printk(KERN_ERR "cannot create workqueue %s\n",
|
||||
dev_err(card->dev, "cannot create workqueue %s\n",
|
||||
bus->workq_name);
|
||||
kfree(bus);
|
||||
return -ENOMEM;
|
||||
@@ -944,7 +942,7 @@ find_codec_preset(struct hda_codec *codec)
|
||||
mutex_lock(&preset_mutex);
|
||||
list_for_each_entry(tbl, &hda_preset_tables, list) {
|
||||
if (!try_module_get(tbl->owner)) {
|
||||
snd_printk(KERN_ERR "hda_codec: cannot module_get\n");
|
||||
codec_err(codec, "cannot module_get\n");
|
||||
continue;
|
||||
}
|
||||
for (preset = tbl->preset; preset->id; preset++) {
|
||||
@@ -1433,14 +1431,15 @@ int snd_hda_codec_new(struct hda_bus *bus,
|
||||
return -EINVAL;
|
||||
|
||||
if (bus->caddr_tbl[codec_addr]) {
|
||||
snd_printk(KERN_ERR "hda_codec: "
|
||||
"address 0x%x is already occupied\n", codec_addr);
|
||||
dev_err(bus->card->dev,
|
||||
"address 0x%x is already occupied\n",
|
||||
codec_addr);
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
codec = kzalloc(sizeof(*codec), GFP_KERNEL);
|
||||
if (codec == NULL) {
|
||||
snd_printk(KERN_ERR "can't allocate struct hda_codec\n");
|
||||
dev_err(bus->card->dev, "can't allocate struct hda_codec\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
@@ -1513,7 +1512,7 @@ int snd_hda_codec_new(struct hda_bus *bus,
|
||||
|
||||
setup_fg_nodes(codec);
|
||||
if (!codec->afg && !codec->mfg) {
|
||||
snd_printdd("hda_codec: no AFG or MFG node found\n");
|
||||
dev_err(bus->card->dev, "no AFG or MFG node found\n");
|
||||
err = -ENODEV;
|
||||
goto error;
|
||||
}
|
||||
@@ -1521,7 +1520,7 @@ int snd_hda_codec_new(struct hda_bus *bus,
|
||||
fg = codec->afg ? codec->afg : codec->mfg;
|
||||
err = read_widget_caps(codec, fg);
|
||||
if (err < 0) {
|
||||
snd_printk(KERN_ERR "hda_codec: cannot malloc\n");
|
||||
dev_err(bus->card->dev, "cannot malloc\n");
|
||||
goto error;
|
||||
}
|
||||
err = read_pin_defaults(codec);
|
||||
@@ -1583,7 +1582,7 @@ int snd_hda_codec_update_widgets(struct hda_codec *codec)
|
||||
fg = codec->afg ? codec->afg : codec->mfg;
|
||||
err = read_widget_caps(codec, fg);
|
||||
if (err < 0) {
|
||||
snd_printk(KERN_ERR "hda_codec: cannot malloc\n");
|
||||
codec_err(codec, "cannot malloc\n");
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -1660,7 +1659,7 @@ int snd_hda_codec_configure(struct hda_codec *codec)
|
||||
#endif
|
||||
}
|
||||
if (!patch) {
|
||||
printk(KERN_ERR "hda-codec: No codec parser is available\n");
|
||||
codec_err(codec, "No codec parser is available\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
}
|
||||
@@ -1744,9 +1743,9 @@ void snd_hda_codec_setup_stream(struct hda_codec *codec, hda_nid_t nid,
|
||||
if (!nid)
|
||||
return;
|
||||
|
||||
snd_printdd("hda_codec_setup_stream: "
|
||||
"NID=0x%x, stream=0x%x, channel=%d, format=0x%x\n",
|
||||
nid, stream_tag, channel_id, format);
|
||||
codec_dbg(codec,
|
||||
"hda_codec_setup_stream: NID=0x%x, stream=0x%x, channel=%d, format=0x%x\n",
|
||||
nid, stream_tag, channel_id, format);
|
||||
p = get_hda_cvt_setup(codec, nid);
|
||||
if (!p)
|
||||
return;
|
||||
@@ -1793,7 +1792,7 @@ void __snd_hda_codec_cleanup_stream(struct hda_codec *codec, hda_nid_t nid,
|
||||
if (codec->no_sticky_stream)
|
||||
do_now = 1;
|
||||
|
||||
snd_printdd("hda_codec_cleanup_stream: NID=0x%x\n", nid);
|
||||
codec_dbg(codec, "hda_codec_cleanup_stream: NID=0x%x\n", nid);
|
||||
p = get_hda_cvt_setup(codec, nid);
|
||||
if (p) {
|
||||
/* here we just clear the active flag when do_now isn't set;
|
||||
@@ -2315,9 +2314,9 @@ int snd_hda_mixer_amp_volume_info(struct snd_kcontrol *kcontrol,
|
||||
uinfo->value.integer.min = 0;
|
||||
uinfo->value.integer.max = get_amp_max_value(codec, nid, dir, ofs);
|
||||
if (!uinfo->value.integer.max) {
|
||||
printk(KERN_WARNING "hda_codec: "
|
||||
"num_steps = 0 for NID=0x%x (ctl = %s)\n", nid,
|
||||
kcontrol->id.name);
|
||||
codec_warn(codec,
|
||||
"num_steps = 0 for NID=0x%x (ctl = %s)\n",
|
||||
nid, kcontrol->id.name);
|
||||
return -EINVAL;
|
||||
}
|
||||
return 0;
|
||||
@@ -2591,8 +2590,8 @@ int snd_hda_add_nid(struct hda_codec *codec, struct snd_kcontrol *kctl,
|
||||
item->nid = nid;
|
||||
return 0;
|
||||
}
|
||||
printk(KERN_ERR "hda-codec: no NID for mapping control %s:%d:%d\n",
|
||||
kctl->id.name, kctl->id.index, index);
|
||||
codec_err(codec, "no NID for mapping control %s:%d:%d\n",
|
||||
kctl->id.name, kctl->id.index, index);
|
||||
return -EINVAL;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(snd_hda_add_nid);
|
||||
@@ -2784,7 +2783,7 @@ static int get_kctl_0dB_offset(struct snd_kcontrol *kctl, int *step_to_check)
|
||||
return -1;
|
||||
if (*step_to_check && *step_to_check != step) {
|
||||
snd_printk(KERN_ERR "hda_codec: Mismatching dB step for vmaster slave (%d!=%d)\n",
|
||||
*step_to_check, step);
|
||||
- *step_to_check, step);
|
||||
return -1;
|
||||
}
|
||||
*step_to_check = step;
|
||||
@@ -2854,7 +2853,7 @@ int __snd_hda_add_vmaster(struct hda_codec *codec, char *name,
|
||||
|
||||
err = map_slaves(codec, slaves, suffix, check_slave_present, NULL);
|
||||
if (err != 1) {
|
||||
snd_printdd("No slave found for %s\n", name);
|
||||
codec_dbg(codec, "No slave found for %s\n", name);
|
||||
return 0;
|
||||
}
|
||||
kctl = snd_ctl_make_virtual_master(name, tlv);
|
||||
@@ -3520,7 +3519,7 @@ int snd_hda_create_dig_out_ctls(struct hda_codec *codec,
|
||||
|
||||
idx = find_empty_mixer_ctl_idx(codec, "IEC958 Playback Switch", idx);
|
||||
if (idx < 0) {
|
||||
printk(KERN_ERR "hda_codec: too many IEC958 outputs\n");
|
||||
codec_err(codec, "too many IEC958 outputs\n");
|
||||
return -EBUSY;
|
||||
}
|
||||
spdif = snd_array_new(&codec->spdif_out);
|
||||
@@ -3724,7 +3723,7 @@ int snd_hda_create_spdif_in_ctls(struct hda_codec *codec, hda_nid_t nid)
|
||||
|
||||
idx = find_empty_mixer_ctl_idx(codec, "IEC958 Capture Switch", 0);
|
||||
if (idx < 0) {
|
||||
printk(KERN_ERR "hda_codec: too many IEC958 inputs\n");
|
||||
codec_err(codec, "too many IEC958 inputs\n");
|
||||
return -EBUSY;
|
||||
}
|
||||
for (dig_mix = dig_in_ctls; dig_mix->name; dig_mix++) {
|
||||
@@ -4151,12 +4150,13 @@ int snd_hda_build_controls(struct hda_bus *bus)
|
||||
list_for_each_entry(codec, &bus->codec_list, list) {
|
||||
int err = snd_hda_codec_build_controls(codec);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR "hda_codec: cannot build controls "
|
||||
"for #%d (error %d)\n", codec->addr, err);
|
||||
codec_err(codec,
|
||||
"cannot build controls for #%d (error %d)\n",
|
||||
codec->addr, err);
|
||||
err = snd_hda_codec_reset(codec);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR
|
||||
"hda_codec: cannot revert codec\n");
|
||||
codec_err(codec,
|
||||
"cannot revert codec\n");
|
||||
return err;
|
||||
}
|
||||
}
|
||||
@@ -4327,7 +4327,7 @@ unsigned int snd_hda_calc_stream_format(unsigned int rate,
|
||||
break;
|
||||
default:
|
||||
snd_printdd("invalid format width %d\n",
|
||||
snd_pcm_format_width(format));
|
||||
snd_pcm_format_width(format));
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -4403,10 +4403,10 @@ int snd_hda_query_supported_pcm(struct hda_codec *codec, hda_nid_t nid,
|
||||
rates |= rate_bits[i].alsa_bits;
|
||||
}
|
||||
if (rates == 0) {
|
||||
snd_printk(KERN_ERR "hda_codec: rates == 0 "
|
||||
"(nid=0x%x, val=0x%x, ovrd=%i)\n",
|
||||
nid, val,
|
||||
(wcaps & AC_WCAP_FORMAT_OVRD) ? 1 : 0);
|
||||
codec_err(codec,
|
||||
"rates == 0 (nid=0x%x, val=0x%x, ovrd=%i)\n",
|
||||
nid, val,
|
||||
(wcaps & AC_WCAP_FORMAT_OVRD) ? 1 : 0);
|
||||
return -EIO;
|
||||
}
|
||||
*ratesp = rates;
|
||||
@@ -4466,12 +4466,11 @@ int snd_hda_query_supported_pcm(struct hda_codec *codec, hda_nid_t nid,
|
||||
bps = 8;
|
||||
}
|
||||
if (formats == 0) {
|
||||
snd_printk(KERN_ERR "hda_codec: formats == 0 "
|
||||
"(nid=0x%x, val=0x%x, ovrd=%i, "
|
||||
"streams=0x%x)\n",
|
||||
nid, val,
|
||||
(wcaps & AC_WCAP_FORMAT_OVRD) ? 1 : 0,
|
||||
streams);
|
||||
codec_err(codec,
|
||||
"formats == 0 (nid=0x%x, val=0x%x, ovrd=%i, streams=0x%x)\n",
|
||||
nid, val,
|
||||
(wcaps & AC_WCAP_FORMAT_OVRD) ? 1 : 0,
|
||||
streams);
|
||||
return -EIO;
|
||||
}
|
||||
if (formatsp)
|
||||
@@ -4662,7 +4661,7 @@ static int get_empty_pcm_device(struct hda_bus *bus, unsigned int type)
|
||||
int i;
|
||||
|
||||
if (type >= HDA_PCM_NTYPES) {
|
||||
snd_printk(KERN_WARNING "Invalid PCM type %d\n", type);
|
||||
dev_err(bus->card->dev, "Invalid PCM type %d\n", type);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -4683,10 +4682,11 @@ static int get_empty_pcm_device(struct hda_bus *bus, unsigned int type)
|
||||
}
|
||||
#endif
|
||||
|
||||
snd_printk(KERN_WARNING "Too many %s devices\n",
|
||||
dev_warn(bus->card->dev, "Too many %s devices\n",
|
||||
snd_hda_pcm_type_name[type]);
|
||||
#ifndef CONFIG_SND_DYNAMIC_MINORS
|
||||
snd_printk(KERN_WARNING "Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y\n");
|
||||
dev_warn(bus->card->dev,
|
||||
"Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y\n");
|
||||
#endif
|
||||
return -EAGAIN;
|
||||
}
|
||||
@@ -4724,12 +4724,13 @@ int snd_hda_codec_build_pcms(struct hda_codec *codec)
|
||||
return 0;
|
||||
err = codec->patch_ops.build_pcms(codec);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR "hda_codec: cannot build PCMs"
|
||||
"for #%d (error %d)\n", codec->addr, err);
|
||||
codec_err(codec,
|
||||
"cannot build PCMs for #%d (error %d)\n",
|
||||
codec->addr, err);
|
||||
err = snd_hda_codec_reset(codec);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR
|
||||
"hda_codec: cannot revert codec\n");
|
||||
codec_err(codec,
|
||||
"cannot revert codec\n");
|
||||
return err;
|
||||
}
|
||||
}
|
||||
@@ -4748,9 +4749,9 @@ int snd_hda_codec_build_pcms(struct hda_codec *codec)
|
||||
cpcm->device = dev;
|
||||
err = snd_hda_attach_pcm(codec, cpcm);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR "hda_codec: cannot attach "
|
||||
"PCM stream %d for codec #%d\n",
|
||||
dev, codec->addr);
|
||||
codec_err(codec,
|
||||
"cannot attach PCM stream %d for codec #%d\n",
|
||||
dev, codec->addr);
|
||||
continue; /* no fatal error */
|
||||
}
|
||||
}
|
||||
@@ -4819,8 +4820,8 @@ int snd_hda_check_board_config(struct hda_codec *codec,
|
||||
for (i = 0; i < num_configs; i++) {
|
||||
if (models[i] &&
|
||||
!strcmp(codec->modelname, models[i])) {
|
||||
snd_printd(KERN_INFO "hda_codec: model '%s' is "
|
||||
"selected\n", models[i]);
|
||||
codec_info(codec, "model '%s' is selected\n",
|
||||
models[i]);
|
||||
return i;
|
||||
}
|
||||
}
|
||||
@@ -4842,10 +4843,9 @@ int snd_hda_check_board_config(struct hda_codec *codec,
|
||||
sprintf(tmp, "#%d", tbl->value);
|
||||
model = tmp;
|
||||
}
|
||||
snd_printdd(KERN_INFO "hda_codec: model '%s' is selected "
|
||||
"for config %x:%x (%s)\n",
|
||||
model, tbl->subvendor, tbl->subdevice,
|
||||
(tbl->name ? tbl->name : "Unknown device"));
|
||||
codec_info(codec, "model '%s' is selected for config %x:%x (%s)\n",
|
||||
model, tbl->subvendor, tbl->subdevice,
|
||||
(tbl->name ? tbl->name : "Unknown device"));
|
||||
#endif
|
||||
return tbl->value;
|
||||
}
|
||||
@@ -4903,10 +4903,9 @@ int snd_hda_check_board_codec_sid_config(struct hda_codec *codec,
|
||||
sprintf(tmp, "#%d", tbl->value);
|
||||
model = tmp;
|
||||
}
|
||||
snd_printdd(KERN_INFO "hda_codec: model '%s' is selected "
|
||||
"for config %x:%x (%s)\n",
|
||||
model, tbl->subvendor, tbl->subdevice,
|
||||
(tbl->name ? tbl->name : "Unknown device"));
|
||||
codec_info(codec, "model '%s' is selected for config %x:%x (%s)\n",
|
||||
model, tbl->subvendor, tbl->subdevice,
|
||||
(tbl->name ? tbl->name : "Unknown device"));
|
||||
#endif
|
||||
return tbl->value;
|
||||
}
|
||||
|
||||
@@ -153,7 +153,7 @@ static unsigned int hdmi_get_eld_data(struct hda_codec *codec, hda_nid_t nid,
|
||||
val = snd_hda_codec_read(codec, nid, 0,
|
||||
AC_VERB_GET_HDMI_ELDD, byte_index);
|
||||
#ifdef BE_PARANOID
|
||||
printk(KERN_INFO "HDMI: ELD data byte %d: 0x%x\n", byte_index, val);
|
||||
codec_info(codec, "HDMI: ELD data byte %d: 0x%x\n", byte_index, val);
|
||||
#endif
|
||||
return val;
|
||||
}
|
||||
@@ -332,11 +332,11 @@ int snd_hdmi_get_eld(struct hda_codec *codec, hda_nid_t nid,
|
||||
size = snd_hdmi_get_eld_size(codec, nid);
|
||||
if (size == 0) {
|
||||
/* wfg: workaround for ASUS P5E-VM HDMI board */
|
||||
snd_printd(KERN_INFO "HDMI: ELD buf size is 0, force 128\n");
|
||||
codec_info(codec, "HDMI: ELD buf size is 0, force 128\n");
|
||||
size = 128;
|
||||
}
|
||||
if (size < ELD_FIXED_BYTES || size > ELD_MAX_SIZE) {
|
||||
snd_printd(KERN_INFO "HDMI: invalid ELD buf size %d\n", size);
|
||||
codec_info(codec, "HDMI: invalid ELD buf size %d\n", size);
|
||||
return -ERANGE;
|
||||
}
|
||||
|
||||
@@ -348,8 +348,7 @@ int snd_hdmi_get_eld(struct hda_codec *codec, hda_nid_t nid,
|
||||
* Just abort. The caller will repoll after a while.
|
||||
*/
|
||||
if (!(val & AC_ELDD_ELD_VALID)) {
|
||||
snd_printd(KERN_INFO
|
||||
"HDMI: invalid ELD data byte %d\n", i);
|
||||
codec_info(codec, "HDMI: invalid ELD data byte %d\n", i);
|
||||
ret = -EINVAL;
|
||||
goto error;
|
||||
}
|
||||
@@ -361,7 +360,7 @@ int snd_hdmi_get_eld(struct hda_codec *codec, hda_nid_t nid,
|
||||
* correctly writes ELD content before setting ELD_valid bit.
|
||||
*/
|
||||
if (!val && !i) {
|
||||
snd_printdd(KERN_INFO "HDMI: 0 ELD data\n");
|
||||
codec_dbg(codec, "HDMI: 0 ELD data\n");
|
||||
ret = -EINVAL;
|
||||
goto error;
|
||||
}
|
||||
@@ -681,7 +680,7 @@ int snd_hdmi_get_eld_ati(struct hda_codec *codec, hda_nid_t nid,
|
||||
spkalloc = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SPEAKER_ALLOCATION, 0);
|
||||
|
||||
if (spkalloc <= 0) {
|
||||
snd_printd(KERN_INFO "HDMI ATI/AMD: no speaker allocation for ELD\n");
|
||||
codec_info(codec, "HDMI ATI/AMD: no speaker allocation for ELD\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -722,7 +721,7 @@ int snd_hdmi_get_eld_ati(struct hda_codec *codec, hda_nid_t nid,
|
||||
sink_desc_len = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
|
||||
|
||||
if (sink_desc_len > ELD_MAX_MNL) {
|
||||
snd_printd(KERN_INFO "HDMI ATI/AMD: Truncating HDMI sink description with length %d\n",
|
||||
codec_info(codec, "HDMI ATI/AMD: Truncating HDMI sink description with length %d\n",
|
||||
sink_desc_len);
|
||||
sink_desc_len = ELD_MAX_MNL;
|
||||
}
|
||||
@@ -764,7 +763,7 @@ int snd_hdmi_get_eld_ati(struct hda_codec *codec, hda_nid_t nid,
|
||||
}
|
||||
|
||||
if (pos == ELD_FIXED_BYTES + sink_desc_len) {
|
||||
snd_printd(KERN_INFO "HDMI ATI/AMD: no audio descriptors for ELD\n");
|
||||
codec_info(codec, "HDMI ATI/AMD: no audio descriptors for ELD\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
||||
+21
-21
@@ -346,7 +346,8 @@ static bool is_ctl_associated(struct hda_codec *codec, hda_nid_t nid,
|
||||
return is_ctl_used(codec, val, type);
|
||||
}
|
||||
|
||||
static void print_nid_path(const char *pfx, struct nid_path *path)
|
||||
static void print_nid_path(struct hda_codec *codec,
|
||||
const char *pfx, struct nid_path *path)
|
||||
{
|
||||
char buf[40];
|
||||
int i;
|
||||
@@ -358,7 +359,7 @@ static void print_nid_path(const char *pfx, struct nid_path *path)
|
||||
sprintf(tmp, ":%02x", path->path[i]);
|
||||
strlcat(buf, tmp, sizeof(buf));
|
||||
}
|
||||
snd_printdd("%s path: depth=%d %s\n", pfx, path->depth, buf);
|
||||
codec_dbg(codec, "%s path: depth=%d %s\n", pfx, path->depth, buf);
|
||||
}
|
||||
|
||||
/* called recursively */
|
||||
@@ -1260,7 +1261,7 @@ static int try_assign_dacs(struct hda_codec *codec, int num_outs,
|
||||
dac = dacs[i] = 0;
|
||||
badness += bad->no_dac;
|
||||
} else {
|
||||
/* print_nid_path("output", path); */
|
||||
/* print_nid_path(codec, "output", path); */
|
||||
path->active = true;
|
||||
path_idx[i] = snd_hda_get_path_idx(codec, path);
|
||||
badness += assign_out_path_ctls(codec, path);
|
||||
@@ -1387,7 +1388,7 @@ static int fill_multi_ios(struct hda_codec *codec,
|
||||
badness++;
|
||||
continue;
|
||||
}
|
||||
/* print_nid_path("multiio", path); */
|
||||
/* print_nid_path(codec, "multiio", path); */
|
||||
spec->multi_io[spec->multi_ios].pin = nid;
|
||||
spec->multi_io[spec->multi_ios].dac = dac;
|
||||
spec->out_paths[cfg->line_outs + spec->multi_ios] =
|
||||
@@ -1444,7 +1445,7 @@ static bool map_singles(struct hda_codec *codec, int outs,
|
||||
if (path) {
|
||||
dacs[i] = dac;
|
||||
found = true;
|
||||
/* print_nid_path("output", path); */
|
||||
/* print_nid_path(codec, "output", path); */
|
||||
path->active = true;
|
||||
path_idx[i] = snd_hda_get_path_idx(codec, path);
|
||||
}
|
||||
@@ -1482,7 +1483,7 @@ static int check_aamix_out_path(struct hda_codec *codec, int path_idx)
|
||||
}
|
||||
if (!path)
|
||||
return 0;
|
||||
/* print_nid_path("output-aamix", path); */
|
||||
/* print_nid_path(codec, "output-aamix", path); */
|
||||
path->active = false; /* unused as default */
|
||||
return snd_hda_get_path_idx(codec, path);
|
||||
}
|
||||
@@ -1699,7 +1700,7 @@ static int fill_and_eval_dacs(struct hda_codec *codec,
|
||||
#define DEBUG_BADNESS
|
||||
|
||||
#ifdef DEBUG_BADNESS
|
||||
#define debug_badness snd_printdd
|
||||
#define debug_badness(fmt, args...) codec_dbg(codec, fmt, ##args)
|
||||
#else
|
||||
#define debug_badness(...)
|
||||
#endif
|
||||
@@ -1712,7 +1713,7 @@ static inline void print_nid_path_idx(struct hda_codec *codec,
|
||||
|
||||
path = snd_hda_get_path_from_idx(codec, idx);
|
||||
if (path)
|
||||
print_nid_path(pfx, path);
|
||||
print_nid_path(codec, pfx, path);
|
||||
}
|
||||
|
||||
static void debug_show_configs(struct hda_codec *codec,
|
||||
@@ -1780,7 +1781,7 @@ static void fill_all_dac_nids(struct hda_codec *codec)
|
||||
if (get_wcaps_type(get_wcaps(codec, nid)) != AC_WID_AUD_OUT)
|
||||
continue;
|
||||
if (spec->num_all_dacs >= ARRAY_SIZE(spec->all_dacs)) {
|
||||
snd_printk(KERN_ERR "hda: Too many DACs!\n");
|
||||
codec_err(codec, "Too many DACs!\n");
|
||||
break;
|
||||
}
|
||||
spec->all_dacs[spec->num_all_dacs++] = nid;
|
||||
@@ -2429,7 +2430,7 @@ static int create_hp_mic(struct hda_codec *codec)
|
||||
spec->hp_mic_pin = nid;
|
||||
/* we can't handle auto-mic together with HP-mic */
|
||||
spec->suppress_auto_mic = 1;
|
||||
snd_printdd("hda-codec: Enable shared I/O jack on NID 0x%x\n", nid);
|
||||
codec_dbg(codec, "Enable shared I/O jack on NID 0x%x\n", nid);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2883,7 +2884,7 @@ static int new_analog_input(struct hda_codec *codec, int input_idx,
|
||||
path = snd_hda_add_new_path(codec, pin, mix_nid, 0);
|
||||
if (!path)
|
||||
return -EINVAL;
|
||||
print_nid_path("loopback", path);
|
||||
print_nid_path(codec, "loopback", path);
|
||||
spec->loopback_paths[input_idx] = snd_hda_get_path_idx(codec, path);
|
||||
|
||||
idx = path->idx[path->depth - 1];
|
||||
@@ -2911,7 +2912,7 @@ static int new_analog_input(struct hda_codec *codec, int input_idx,
|
||||
path = snd_hda_add_new_path(codec, spec->mixer_nid,
|
||||
spec->mixer_merge_nid, 0);
|
||||
if (path) {
|
||||
print_nid_path("loopback-merge", path);
|
||||
print_nid_path(codec, "loopback-merge", path);
|
||||
path->active = true;
|
||||
spec->loopback_merge_path =
|
||||
snd_hda_get_path_idx(codec, path);
|
||||
@@ -2990,7 +2991,7 @@ static int check_dyn_adc_switch(struct hda_codec *codec)
|
||||
}
|
||||
}
|
||||
|
||||
snd_printdd("hda-codec: enabling ADC switching\n");
|
||||
codec_dbg(codec, "enabling ADC switching\n");
|
||||
spec->dyn_adc_switch = 1;
|
||||
} else if (nums != spec->num_adc_nids) {
|
||||
/* shrink the invalid adcs and input paths */
|
||||
@@ -3014,7 +3015,7 @@ static int check_dyn_adc_switch(struct hda_codec *codec)
|
||||
|
||||
if (imux->num_items == 1 ||
|
||||
(imux->num_items == 2 && spec->hp_mic)) {
|
||||
snd_printdd("hda-codec: reducing to a single ADC\n");
|
||||
codec_dbg(codec, "reducing to a single ADC\n");
|
||||
spec->num_adc_nids = 1; /* reduce to a single ADC */
|
||||
}
|
||||
|
||||
@@ -3045,7 +3046,7 @@ static int parse_capture_source(struct hda_codec *codec, hda_nid_t pin,
|
||||
path = snd_hda_add_new_path(codec, pin, adc, anchor);
|
||||
if (!path)
|
||||
continue;
|
||||
print_nid_path("input", path);
|
||||
print_nid_path(codec, "input", path);
|
||||
spec->input_paths[imux_idx][c] =
|
||||
snd_hda_get_path_idx(codec, path);
|
||||
|
||||
@@ -3711,7 +3712,7 @@ static void parse_digital(struct hda_codec *codec)
|
||||
path = snd_hda_add_new_path(codec, dig_nid, pin, 0);
|
||||
if (!path)
|
||||
continue;
|
||||
print_nid_path("digout", path);
|
||||
print_nid_path(codec, "digout", path);
|
||||
path->active = true;
|
||||
spec->digout_paths[i] = snd_hda_get_path_idx(codec, path);
|
||||
set_pin_target(codec, pin, PIN_OUT, false);
|
||||
@@ -3738,7 +3739,7 @@ static void parse_digital(struct hda_codec *codec)
|
||||
continue;
|
||||
path = snd_hda_add_new_path(codec, pin, dig_nid, 0);
|
||||
if (path) {
|
||||
print_nid_path("digin", path);
|
||||
print_nid_path(codec, "digin", path);
|
||||
path->active = true;
|
||||
spec->dig_in_nid = dig_nid;
|
||||
spec->digin_path = snd_hda_get_path_idx(codec, path);
|
||||
@@ -4169,8 +4170,7 @@ static int check_auto_mute_availability(struct hda_codec *codec)
|
||||
hda_nid_t nid = cfg->hp_pins[i];
|
||||
if (!is_jack_detectable(codec, nid))
|
||||
continue;
|
||||
snd_printdd("hda-codec: Enable HP auto-muting on NID 0x%x\n",
|
||||
nid);
|
||||
codec_dbg(codec, "Enable HP auto-muting on NID 0x%x\n", nid);
|
||||
snd_hda_jack_detect_enable_callback(codec, nid, HDA_GEN_HP_EVENT,
|
||||
call_hp_automute);
|
||||
spec->detect_hp = 1;
|
||||
@@ -4182,7 +4182,7 @@ static int check_auto_mute_availability(struct hda_codec *codec)
|
||||
hda_nid_t nid = cfg->line_out_pins[i];
|
||||
if (!is_jack_detectable(codec, nid))
|
||||
continue;
|
||||
snd_printdd("hda-codec: Enable Line-Out auto-muting on NID 0x%x\n", nid);
|
||||
codec_dbg(codec, "Enable Line-Out auto-muting on NID 0x%x\n", nid);
|
||||
snd_hda_jack_detect_enable_callback(codec, nid,
|
||||
HDA_GEN_FRONT_EVENT,
|
||||
call_line_automute);
|
||||
@@ -4302,7 +4302,7 @@ static int check_auto_mic_availability(struct hda_codec *codec)
|
||||
spec->auto_mic = 1;
|
||||
spec->num_adc_nids = 1;
|
||||
spec->cur_mux[0] = spec->am_entry[0].idx;
|
||||
snd_printdd("hda-codec: Enable auto-mic switch on NID 0x%x/0x%x/0x%x\n",
|
||||
codec_dbg(codec, "Enable auto-mic switch on NID 0x%x/0x%x/0x%x\n",
|
||||
spec->am_entry[0].pin,
|
||||
spec->am_entry[1].pin,
|
||||
spec->am_entry[2].pin);
|
||||
|
||||
@@ -30,7 +30,7 @@ void hda_display_power(bool enable)
|
||||
if (!get_power || !put_power)
|
||||
return;
|
||||
|
||||
snd_printdd("HDA display power %s \n",
|
||||
pr_debug("HDA display power %s \n",
|
||||
enable ? "Enable" : "Disable");
|
||||
if (enable)
|
||||
get_power();
|
||||
@@ -44,7 +44,7 @@ int hda_i915_init(void)
|
||||
|
||||
get_power = symbol_request(i915_request_power_well);
|
||||
if (!get_power) {
|
||||
snd_printk(KERN_WARNING "hda-i915: get_power symbol get fail\n");
|
||||
pr_warn("hda-i915: get_power symbol get fail\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ int hda_i915_init(void)
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
snd_printd("HDA driver get symbol successfully from i915 module\n");
|
||||
pr_debug("HDA driver get symbol successfully from i915 module\n");
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
+111
-129
File diff suppressed because it is too large
Load Diff
@@ -758,4 +758,11 @@ void snd_hdmi_write_eld_info(struct hdmi_eld *eld,
|
||||
#define SND_PRINT_CHANNEL_ALLOCATION_ADVISED_BUFSIZE 80
|
||||
void snd_print_channel_allocation(int spk_alloc, char *buf, int buflen);
|
||||
|
||||
/*
|
||||
*/
|
||||
#define codec_err(codec, fmt, args...) dev_err(&(codec)->dev, fmt, ##args)
|
||||
#define codec_warn(codec, fmt, args...) dev_warn(&(codec)->dev, fmt, ##args)
|
||||
#define codec_info(codec, fmt, args...) dev_info(&(codec)->dev, fmt, ##args)
|
||||
#define codec_dbg(codec, fmt, args...) dev_dbg(&(codec)->dev, fmt, ##args)
|
||||
|
||||
#endif /* __SOUND_HDA_LOCAL_H */
|
||||
|
||||
@@ -119,7 +119,7 @@ static int clear_codec(struct hda_codec *codec)
|
||||
|
||||
err = snd_hda_codec_reset(codec);
|
||||
if (err < 0) {
|
||||
snd_printk(KERN_ERR "The codec is being used, can't free.\n");
|
||||
codec_err(codec, "The codec is being used, can't free.\n");
|
||||
return err;
|
||||
}
|
||||
snd_hda_sysfs_clear(codec);
|
||||
@@ -131,10 +131,10 @@ static int reconfig_codec(struct hda_codec *codec)
|
||||
int err;
|
||||
|
||||
snd_hda_power_up(codec);
|
||||
snd_printk(KERN_INFO "hda-codec: reconfiguring\n");
|
||||
codec_info(codec, "hda-codec: reconfiguring\n");
|
||||
err = snd_hda_codec_reset(codec);
|
||||
if (err < 0) {
|
||||
snd_printk(KERN_ERR
|
||||
codec_err(codec,
|
||||
"The codec is being used, can't reconfigure.\n");
|
||||
goto error;
|
||||
}
|
||||
|
||||
+103
-105
File diff suppressed because it is too large
Load Diff
@@ -623,7 +623,7 @@ static int patch_cmi9880(struct hda_codec *codec)
|
||||
cmi9880_models,
|
||||
cmi9880_cfg_tbl);
|
||||
if (spec->board_config < 0) {
|
||||
snd_printdd(KERN_INFO "hda_codec: %s: BIOS auto-probing.\n",
|
||||
codec_dbg(codec, "%s: BIOS auto-probing.\n",
|
||||
codec->chip_name);
|
||||
spec->board_config = CMI_AUTO; /* try everything */
|
||||
}
|
||||
|
||||
@@ -1900,7 +1900,8 @@ static void cxt5066_update_speaker(struct hda_codec *codec)
|
||||
struct conexant_spec *spec = codec->spec;
|
||||
unsigned int pinctl;
|
||||
|
||||
snd_printdd("CXT5066: update speaker, hp_present=%d, cur_eapd=%d\n",
|
||||
codec_dbg(codec,
|
||||
"CXT5066: update speaker, hp_present=%d, cur_eapd=%d\n",
|
||||
spec->hp_present, spec->cur_eapd);
|
||||
|
||||
/* Port A (HP) */
|
||||
@@ -1969,10 +1970,10 @@ static void cxt5066_vostro_automic(struct hda_codec *codec)
|
||||
|
||||
present = snd_hda_jack_detect(codec, 0x1a);
|
||||
if (present) {
|
||||
snd_printdd("CXT5066: external microphone detected\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone detected\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_present);
|
||||
} else {
|
||||
snd_printdd("CXT5066: external microphone absent\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone absent\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_absent);
|
||||
}
|
||||
}
|
||||
@@ -1997,10 +1998,10 @@ static void cxt5066_ideapad_automic(struct hda_codec *codec)
|
||||
|
||||
present = snd_hda_jack_detect(codec, 0x1b);
|
||||
if (present) {
|
||||
snd_printdd("CXT5066: external microphone detected\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone detected\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_present);
|
||||
} else {
|
||||
snd_printdd("CXT5066: external microphone absent\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone absent\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_absent);
|
||||
}
|
||||
}
|
||||
@@ -2012,7 +2013,7 @@ static void cxt5066_asus_automic(struct hda_codec *codec)
|
||||
unsigned int present;
|
||||
|
||||
present = snd_hda_jack_detect(codec, 0x1b);
|
||||
snd_printdd("CXT5066: external microphone present=%d\n", present);
|
||||
codec_dbg(codec, "CXT5066: external microphone present=%d\n", present);
|
||||
snd_hda_codec_write(codec, 0x17, 0, AC_VERB_SET_CONNECT_SEL,
|
||||
present ? 1 : 0);
|
||||
}
|
||||
@@ -2024,7 +2025,7 @@ static void cxt5066_hp_laptop_automic(struct hda_codec *codec)
|
||||
unsigned int present;
|
||||
|
||||
present = snd_hda_jack_detect(codec, 0x1b);
|
||||
snd_printdd("CXT5066: external microphone present=%d\n", present);
|
||||
codec_dbg(codec, "CXT5066: external microphone present=%d\n", present);
|
||||
snd_hda_codec_write(codec, 0x17, 0, AC_VERB_SET_CONNECT_SEL,
|
||||
present ? 1 : 3);
|
||||
}
|
||||
@@ -2063,13 +2064,13 @@ static void cxt5066_thinkpad_automic(struct hda_codec *codec)
|
||||
ext_present = snd_hda_jack_detect(codec, 0x1b);
|
||||
dock_present = snd_hda_jack_detect(codec, 0x1a);
|
||||
if (ext_present) {
|
||||
snd_printdd("CXT5066: external microphone detected\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone detected\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_present);
|
||||
} else if (dock_present) {
|
||||
snd_printdd("CXT5066: dock microphone detected\n");
|
||||
codec_dbg(codec, "CXT5066: dock microphone detected\n");
|
||||
snd_hda_sequence_write(codec, dock_mic_present);
|
||||
} else {
|
||||
snd_printdd("CXT5066: external microphone absent\n");
|
||||
codec_dbg(codec, "CXT5066: external microphone absent\n");
|
||||
snd_hda_sequence_write(codec, ext_mic_absent);
|
||||
}
|
||||
}
|
||||
@@ -2088,7 +2089,7 @@ static void cxt5066_hp_automute(struct hda_codec *codec)
|
||||
|
||||
spec->hp_present = portA ? HP_PRESENT_PORT_A : 0;
|
||||
spec->hp_present |= portD ? HP_PRESENT_PORT_D : 0;
|
||||
snd_printdd("CXT5066: hp automute portA=%x portD=%x present=%d\n",
|
||||
codec_dbg(codec, "CXT5066: hp automute portA=%x portD=%x present=%d\n",
|
||||
portA, portD, spec->hp_present);
|
||||
cxt5066_update_speaker(codec);
|
||||
}
|
||||
@@ -2113,7 +2114,7 @@ static void cxt5066_automic(struct hda_codec *codec)
|
||||
/* unsolicited event for jack sensing */
|
||||
static void cxt5066_unsol_event(struct hda_codec *codec, unsigned int res)
|
||||
{
|
||||
snd_printdd("CXT5066: unsol event %x (%x)\n", res, res >> 26);
|
||||
codec_dbg(codec, "CXT5066: unsol event %x (%x)\n", res, res >> 26);
|
||||
switch (res >> 26) {
|
||||
case CONEXANT_HP_EVENT:
|
||||
cxt5066_hp_automute(codec);
|
||||
@@ -2509,7 +2510,7 @@ static const struct hda_verb cxt5066_init_verbs_hp_laptop[] = {
|
||||
/* initialize jack-sensing, too */
|
||||
static int cxt5066_init(struct hda_codec *codec)
|
||||
{
|
||||
snd_printdd("CXT5066: init\n");
|
||||
codec_dbg(codec, "CXT5066: init\n");
|
||||
conexant_init(codec);
|
||||
if (codec->patch_ops.unsol_event) {
|
||||
cxt5066_hp_automute(codec);
|
||||
@@ -3401,8 +3402,7 @@ static int patch_conexant_auto(struct hda_codec *codec)
|
||||
struct conexant_spec *spec;
|
||||
int err;
|
||||
|
||||
printk(KERN_INFO "hda_codec: %s: BIOS auto-probing.\n",
|
||||
codec->chip_name);
|
||||
codec_info(codec, "%s: BIOS auto-probing.\n", codec->chip_name);
|
||||
|
||||
spec = kzalloc(sizeof(*spec), GFP_KERNEL);
|
||||
if (!spec)
|
||||
@@ -3474,7 +3474,7 @@ static int patch_conexant_auto(struct hda_codec *codec)
|
||||
* Better to make reset, then.
|
||||
*/
|
||||
if (!codec->bus->sync_write) {
|
||||
snd_printd("hda_codec: "
|
||||
codec_info(codec,
|
||||
"Enable sync_write for stable communication\n");
|
||||
codec->bus->sync_write = 1;
|
||||
codec->bus->allow_bus_reset = 1;
|
||||
|
||||
+39
-37
@@ -353,40 +353,43 @@ static struct cea_channel_speaker_allocation channel_allocations[] = {
|
||||
#define get_pcm_rec(spec, idx) \
|
||||
((struct hda_pcm *)snd_array_elem(&spec->pcm_rec, idx))
|
||||
|
||||
static int pin_nid_to_pin_index(struct hdmi_spec *spec, hda_nid_t pin_nid)
|
||||
static int pin_nid_to_pin_index(struct hda_codec *codec, hda_nid_t pin_nid)
|
||||
{
|
||||
struct hdmi_spec *spec = codec->spec;
|
||||
int pin_idx;
|
||||
|
||||
for (pin_idx = 0; pin_idx < spec->num_pins; pin_idx++)
|
||||
if (get_pin(spec, pin_idx)->pin_nid == pin_nid)
|
||||
return pin_idx;
|
||||
|
||||
snd_printk(KERN_WARNING "HDMI: pin nid %d not registered\n", pin_nid);
|
||||
codec_warn(codec, "HDMI: pin nid %d not registered\n", pin_nid);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static int hinfo_to_pin_index(struct hdmi_spec *spec,
|
||||
static int hinfo_to_pin_index(struct hda_codec *codec,
|
||||
struct hda_pcm_stream *hinfo)
|
||||
{
|
||||
struct hdmi_spec *spec = codec->spec;
|
||||
int pin_idx;
|
||||
|
||||
for (pin_idx = 0; pin_idx < spec->num_pins; pin_idx++)
|
||||
if (get_pcm_rec(spec, pin_idx)->stream == hinfo)
|
||||
return pin_idx;
|
||||
|
||||
snd_printk(KERN_WARNING "HDMI: hinfo %p not registered\n", hinfo);
|
||||
codec_warn(codec, "HDMI: hinfo %p not registered\n", hinfo);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static int cvt_nid_to_cvt_index(struct hdmi_spec *spec, hda_nid_t cvt_nid)
|
||||
static int cvt_nid_to_cvt_index(struct hda_codec *codec, hda_nid_t cvt_nid)
|
||||
{
|
||||
struct hdmi_spec *spec = codec->spec;
|
||||
int cvt_idx;
|
||||
|
||||
for (cvt_idx = 0; cvt_idx < spec->num_cvts; cvt_idx++)
|
||||
if (get_cvt(spec, cvt_idx)->cvt_nid == cvt_nid)
|
||||
return cvt_idx;
|
||||
|
||||
snd_printk(KERN_WARNING "HDMI: cvt nid %d not registered\n", cvt_nid);
|
||||
codec_warn(codec, "HDMI: cvt nid %d not registered\n", cvt_nid);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -706,7 +709,7 @@ static void hdmi_debug_channel_mapping(struct hda_codec *codec,
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
channel = spec->ops.pin_get_slot_channel(codec, pin_nid, i);
|
||||
printk(KERN_DEBUG "HDMI: ASP channel %d => slot %d\n",
|
||||
codec_dbg(codec, "HDMI: ASP channel %d => slot %d\n",
|
||||
channel, i);
|
||||
}
|
||||
#endif
|
||||
@@ -755,8 +758,7 @@ static void hdmi_std_setup_channel_mapping(struct hda_codec *codec,
|
||||
int channel = (slotsetup & 0xf0) >> 4;
|
||||
err = spec->ops.pin_set_slot_channel(codec, pin_nid, hdmi_slot, channel);
|
||||
if (err) {
|
||||
snd_printdd(KERN_NOTICE
|
||||
"HDMI: channel mapping failed\n");
|
||||
codec_dbg(codec, "HDMI: channel mapping failed\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -967,12 +969,12 @@ static void hdmi_debug_dip_size(struct hda_codec *codec, hda_nid_t pin_nid)
|
||||
int size;
|
||||
|
||||
size = snd_hdmi_get_eld_size(codec, pin_nid);
|
||||
printk(KERN_DEBUG "HDMI: ELD buf size is %d\n", size);
|
||||
codec_dbg(codec, "HDMI: ELD buf size is %d\n", size);
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
size = snd_hda_codec_read(codec, pin_nid, 0,
|
||||
AC_VERB_GET_HDMI_DIP_SIZE, i);
|
||||
printk(KERN_DEBUG "HDMI: DIP GP[%d] buf size is %d\n", i, size);
|
||||
codec_dbg(codec, "HDMI: DIP GP[%d] buf size is %d\n", i, size);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -994,12 +996,12 @@ static void hdmi_clear_dip_buffers(struct hda_codec *codec, hda_nid_t pin_nid)
|
||||
hdmi_write_dip_byte(codec, pin_nid, 0x0);
|
||||
hdmi_get_dip_index(codec, pin_nid, &pi, &bi);
|
||||
if (pi != i)
|
||||
snd_printd(KERN_INFO "dip index %d: %d != %d\n",
|
||||
codec_dbg(codec, "dip index %d: %d != %d\n",
|
||||
bi, pi, i);
|
||||
if (bi == 0) /* byte index wrapped around */
|
||||
break;
|
||||
}
|
||||
snd_printd(KERN_INFO
|
||||
codec_dbg(codec,
|
||||
"HDMI: DIP GP[%d] buf reported size=%d, written=%d\n",
|
||||
i, size, j);
|
||||
}
|
||||
@@ -1080,7 +1082,7 @@ static void hdmi_pin_setup_infoframe(struct hda_codec *codec,
|
||||
dp_ai->CC02_CT47 = active_channels - 1;
|
||||
dp_ai->CA = ca;
|
||||
} else {
|
||||
snd_printd("HDMI: unknown connection type at pin %d\n",
|
||||
codec_dbg(codec, "HDMI: unknown connection type at pin %d\n",
|
||||
pin_nid);
|
||||
return;
|
||||
}
|
||||
@@ -1092,8 +1094,8 @@ static void hdmi_pin_setup_infoframe(struct hda_codec *codec,
|
||||
*/
|
||||
if (!hdmi_infoframe_uptodate(codec, pin_nid, ai.bytes,
|
||||
sizeof(ai))) {
|
||||
snd_printdd("hdmi_pin_setup_infoframe: "
|
||||
"pin=%d channels=%d ca=0x%02x\n",
|
||||
codec_dbg(codec,
|
||||
"hdmi_pin_setup_infoframe: pin=%d channels=%d ca=0x%02x\n",
|
||||
pin_nid,
|
||||
active_channels, ca);
|
||||
hdmi_stop_infoframe_trans(codec, pin_nid);
|
||||
@@ -1161,7 +1163,7 @@ static bool hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll);
|
||||
static void jack_callback(struct hda_codec *codec, struct hda_jack_tbl *jack)
|
||||
{
|
||||
struct hdmi_spec *spec = codec->spec;
|
||||
int pin_idx = pin_nid_to_pin_index(spec, jack->nid);
|
||||
int pin_idx = pin_nid_to_pin_index(codec, jack->nid);
|
||||
if (pin_idx < 0)
|
||||
return;
|
||||
|
||||
@@ -1180,7 +1182,7 @@ static void hdmi_intrinsic_event(struct hda_codec *codec, unsigned int res)
|
||||
return;
|
||||
jack->jack_dirty = 1;
|
||||
|
||||
_snd_printd(SND_PR_VERBOSE,
|
||||
codec_dbg(codec,
|
||||
"HDMI hot plug event: Codec=%d Pin=%d Device=%d Inactive=%d Presence_Detect=%d ELD_Valid=%d\n",
|
||||
codec->addr, jack->nid, dev_entry, !!(res & AC_UNSOL_RES_IA),
|
||||
!!(res & AC_UNSOL_RES_PD), !!(res & AC_UNSOL_RES_ELDV));
|
||||
@@ -1195,7 +1197,7 @@ static void hdmi_non_intrinsic_event(struct hda_codec *codec, unsigned int res)
|
||||
int cp_state = !!(res & AC_UNSOL_RES_CP_STATE);
|
||||
int cp_ready = !!(res & AC_UNSOL_RES_CP_READY);
|
||||
|
||||
printk(KERN_INFO
|
||||
codec_info(codec,
|
||||
"HDMI CP event: CODEC=%d TAG=%d SUBTAG=0x%x CP_STATE=%d CP_READY=%d\n",
|
||||
codec->addr,
|
||||
tag,
|
||||
@@ -1217,7 +1219,7 @@ static void hdmi_unsol_event(struct hda_codec *codec, unsigned int res)
|
||||
int subtag = (res & AC_UNSOL_RES_SUBTAG) >> AC_UNSOL_RES_SUBTAG_SHIFT;
|
||||
|
||||
if (!snd_hda_jack_tbl_get_from_tag(codec, tag)) {
|
||||
snd_printd(KERN_INFO "Unexpected HDMI event tag 0x%x\n", tag);
|
||||
codec_dbg(codec, "Unexpected HDMI event tag 0x%x\n", tag);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1244,7 +1246,7 @@ static void haswell_verify_D0(struct hda_codec *codec,
|
||||
msleep(40);
|
||||
pwr = snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_POWER_STATE, 0);
|
||||
pwr = (pwr & AC_PWRST_ACTUAL) >> AC_PWRST_ACTUAL_SHIFT;
|
||||
snd_printd("Haswell HDMI audio: Power for pin 0x%x is now D%d\n", nid, pwr);
|
||||
codec_dbg(codec, "Haswell HDMI audio: Power for pin 0x%x is now D%d\n", nid, pwr);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1274,8 +1276,8 @@ static int hdmi_pin_hbr_setup(struct hda_codec *codec, hda_nid_t pin_nid,
|
||||
else
|
||||
new_pinctl |= AC_PINCTL_EPT_NATIVE;
|
||||
|
||||
snd_printdd("hdmi_pin_hbr_setup: "
|
||||
"NID=0x%x, %spinctl=0x%x\n",
|
||||
codec_dbg(codec,
|
||||
"hdmi_pin_hbr_setup: NID=0x%x, %spinctl=0x%x\n",
|
||||
pin_nid,
|
||||
pinctl == new_pinctl ? "" : "new-",
|
||||
new_pinctl);
|
||||
@@ -1302,7 +1304,7 @@ static int hdmi_setup_stream(struct hda_codec *codec, hda_nid_t cvt_nid,
|
||||
err = spec->ops.pin_hbr_setup(codec, pin_nid, is_hbr_format(format));
|
||||
|
||||
if (err) {
|
||||
snd_printdd("hdmi_setup_stream: HBR is not supported\n");
|
||||
codec_dbg(codec, "hdmi_setup_stream: HBR is not supported\n");
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -1389,7 +1391,8 @@ static void intel_not_share_assigned_cvt(struct hda_codec *codec,
|
||||
for (cvt_idx = 0; cvt_idx < spec->num_cvts; cvt_idx++) {
|
||||
per_cvt = get_cvt(spec, cvt_idx);
|
||||
if (!per_cvt->assigned) {
|
||||
snd_printdd("choose cvt %d for pin nid %d\n",
|
||||
codec_dbg(codec,
|
||||
"choose cvt %d for pin nid %d\n",
|
||||
cvt_idx, nid);
|
||||
snd_hda_codec_write_cache(codec, nid, 0,
|
||||
AC_VERB_SET_CONNECT_SEL,
|
||||
@@ -1416,7 +1419,7 @@ static int hdmi_pcm_open(struct hda_pcm_stream *hinfo,
|
||||
int err;
|
||||
|
||||
/* Validate hinfo */
|
||||
pin_idx = hinfo_to_pin_index(spec, hinfo);
|
||||
pin_idx = hinfo_to_pin_index(codec, hinfo);
|
||||
if (snd_BUG_ON(pin_idx < 0))
|
||||
return -EINVAL;
|
||||
per_pin = get_pin(spec, pin_idx);
|
||||
@@ -1482,9 +1485,8 @@ static int hdmi_read_pin_conn(struct hda_codec *codec, int pin_idx)
|
||||
hda_nid_t pin_nid = per_pin->pin_nid;
|
||||
|
||||
if (!(get_wcaps(codec, pin_nid) & AC_WCAP_CONN_LIST)) {
|
||||
snd_printk(KERN_WARNING
|
||||
"HDMI: pin %d wcaps %#x "
|
||||
"does not support connection list\n",
|
||||
codec_warn(codec,
|
||||
"HDMI: pin %d wcaps %#x does not support connection list\n",
|
||||
pin_nid, get_wcaps(codec, pin_nid));
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1527,7 +1529,7 @@ static bool hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll)
|
||||
else
|
||||
eld->eld_valid = false;
|
||||
|
||||
_snd_printd(SND_PR_VERBOSE,
|
||||
codec_dbg(codec,
|
||||
"HDMI status: Codec=%d Pin=%d Presence_Detect=%d ELD_Valid=%d\n",
|
||||
codec->addr, pin_nid, pin_eld->monitor_present, eld->eld_valid);
|
||||
|
||||
@@ -1690,7 +1692,7 @@ static int hdmi_parse_codec(struct hda_codec *codec)
|
||||
|
||||
nodes = snd_hda_get_sub_nodes(codec, codec->afg, &nid);
|
||||
if (!nid || nodes < 0) {
|
||||
snd_printk(KERN_WARNING "HDMI: failed to get afg sub nodes\n");
|
||||
codec_warn(codec, "HDMI: failed to get afg sub nodes\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -1744,7 +1746,7 @@ static int generic_hdmi_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
|
||||
{
|
||||
hda_nid_t cvt_nid = hinfo->nid;
|
||||
struct hdmi_spec *spec = codec->spec;
|
||||
int pin_idx = hinfo_to_pin_index(spec, hinfo);
|
||||
int pin_idx = hinfo_to_pin_index(codec, hinfo);
|
||||
struct hdmi_spec_per_pin *per_pin = get_pin(spec, pin_idx);
|
||||
hda_nid_t pin_nid = per_pin->pin_nid;
|
||||
bool non_pcm;
|
||||
@@ -1788,7 +1790,7 @@ static int hdmi_pcm_close(struct hda_pcm_stream *hinfo,
|
||||
int pinctl;
|
||||
|
||||
if (hinfo->nid) {
|
||||
cvt_idx = cvt_nid_to_cvt_index(spec, hinfo->nid);
|
||||
cvt_idx = cvt_nid_to_cvt_index(codec, hinfo->nid);
|
||||
if (snd_BUG_ON(cvt_idx < 0))
|
||||
return -EINVAL;
|
||||
per_cvt = get_cvt(spec, cvt_idx);
|
||||
@@ -1797,7 +1799,7 @@ static int hdmi_pcm_close(struct hda_pcm_stream *hinfo,
|
||||
per_cvt->assigned = 0;
|
||||
hinfo->nid = 0;
|
||||
|
||||
pin_idx = hinfo_to_pin_index(spec, hinfo);
|
||||
pin_idx = hinfo_to_pin_index(codec, hinfo);
|
||||
if (snd_BUG_ON(pin_idx < 0))
|
||||
return -EINVAL;
|
||||
per_pin = get_pin(spec, pin_idx);
|
||||
@@ -2211,7 +2213,7 @@ static void intel_haswell_fixup_connect_list(struct hda_codec *codec,
|
||||
return;
|
||||
|
||||
/* override pins connection list */
|
||||
snd_printdd("hdmi: haswell: override pin connection 0x%x\n", nid);
|
||||
codec_dbg(codec, "hdmi: haswell: override pin connection 0x%x\n", nid);
|
||||
snd_hda_override_conn_list(codec, nid, spec->num_cvts, spec->cvt_nids);
|
||||
}
|
||||
|
||||
@@ -3132,8 +3134,8 @@ static int atihdmi_pin_hbr_setup(struct hda_codec *codec, hda_nid_t pin_nid,
|
||||
else
|
||||
hbr_ctl_new = hbr_ctl & ~ATI_HBR_ENABLE;
|
||||
|
||||
snd_printdd("atihdmi_pin_hbr_setup: "
|
||||
"NID=0x%x, %shbr-ctl=0x%x\n",
|
||||
codec_dbg(codec,
|
||||
"atihdmi_pin_hbr_setup: NID=0x%x, %shbr-ctl=0x%x\n",
|
||||
pin_nid,
|
||||
hbr_ctl == hbr_ctl_new ? "" : "new-",
|
||||
hbr_ctl_new);
|
||||
|
||||
@@ -407,8 +407,8 @@ static int alc_auto_parse_customize_define(struct hda_codec *codec)
|
||||
ass = snd_hda_codec_get_pincfg(codec, nid);
|
||||
|
||||
if (!(ass & 1)) {
|
||||
printk(KERN_INFO "hda_codec: %s: SKU not ready 0x%08x\n",
|
||||
codec->chip_name, ass);
|
||||
codec_info(codec, "%s: SKU not ready 0x%08x\n",
|
||||
codec->chip_name, ass);
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -432,17 +432,17 @@ do_sku:
|
||||
spec->cdefine.swap = (ass & 0x2) >> 1;
|
||||
spec->cdefine.override = ass & 0x1;
|
||||
|
||||
snd_printd("SKU: Nid=0x%x sku_cfg=0x%08x\n",
|
||||
codec_dbg(codec, "SKU: Nid=0x%x sku_cfg=0x%08x\n",
|
||||
nid, spec->cdefine.sku_cfg);
|
||||
snd_printd("SKU: port_connectivity=0x%x\n",
|
||||
codec_dbg(codec, "SKU: port_connectivity=0x%x\n",
|
||||
spec->cdefine.port_connectivity);
|
||||
snd_printd("SKU: enable_pcbeep=0x%x\n", spec->cdefine.enable_pcbeep);
|
||||
snd_printd("SKU: check_sum=0x%08x\n", spec->cdefine.check_sum);
|
||||
snd_printd("SKU: customization=0x%08x\n", spec->cdefine.customization);
|
||||
snd_printd("SKU: external_amp=0x%x\n", spec->cdefine.external_amp);
|
||||
snd_printd("SKU: platform_type=0x%x\n", spec->cdefine.platform_type);
|
||||
snd_printd("SKU: swap=0x%x\n", spec->cdefine.swap);
|
||||
snd_printd("SKU: override=0x%x\n", spec->cdefine.override);
|
||||
codec_dbg(codec, "SKU: enable_pcbeep=0x%x\n", spec->cdefine.enable_pcbeep);
|
||||
codec_dbg(codec, "SKU: check_sum=0x%08x\n", spec->cdefine.check_sum);
|
||||
codec_dbg(codec, "SKU: customization=0x%08x\n", spec->cdefine.customization);
|
||||
codec_dbg(codec, "SKU: external_amp=0x%x\n", spec->cdefine.external_amp);
|
||||
codec_dbg(codec, "SKU: platform_type=0x%x\n", spec->cdefine.platform_type);
|
||||
codec_dbg(codec, "SKU: swap=0x%x\n", spec->cdefine.swap);
|
||||
codec_dbg(codec, "SKU: override=0x%x\n", spec->cdefine.override);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -502,8 +502,8 @@ static int alc_subsystem_id(struct hda_codec *codec, const hda_nid_t *ports)
|
||||
if (codec->vendor_id == 0x10ec0260)
|
||||
nid = 0x17;
|
||||
ass = snd_hda_codec_get_pincfg(codec, nid);
|
||||
snd_printd("realtek: No valid SSID, "
|
||||
"checking pincfg 0x%08x for NID 0x%x\n",
|
||||
codec_dbg(codec,
|
||||
"realtek: No valid SSID, checking pincfg 0x%08x for NID 0x%x\n",
|
||||
ass, nid);
|
||||
if (!(ass & 1))
|
||||
return 0;
|
||||
@@ -519,7 +519,7 @@ static int alc_subsystem_id(struct hda_codec *codec, const hda_nid_t *ports)
|
||||
if (((ass >> 16) & 0xf) != tmp)
|
||||
return 0;
|
||||
do_sku:
|
||||
snd_printd("realtek: Enabling init ASM_ID=0x%04x CODEC_ID=%08x\n",
|
||||
codec_dbg(codec, "realtek: Enabling init ASM_ID=0x%04x CODEC_ID=%08x\n",
|
||||
ass & 0xffff, codec->vendor_id);
|
||||
/*
|
||||
* 0 : override
|
||||
@@ -577,8 +577,8 @@ static void alc_ssid_check(struct hda_codec *codec, const hda_nid_t *ports)
|
||||
{
|
||||
if (!alc_subsystem_id(codec, ports)) {
|
||||
struct alc_spec *spec = codec->spec;
|
||||
snd_printd("realtek: "
|
||||
"Enable default setup for auto mode as fallback\n");
|
||||
codec_dbg(codec,
|
||||
"realtek: Enable default setup for auto mode as fallback\n");
|
||||
spec->init_amp = ALC_INIT_DEFAULT;
|
||||
}
|
||||
}
|
||||
@@ -3170,7 +3170,8 @@ static void alc269_fixup_hp_mute_led(struct hda_codec *codec,
|
||||
spec->gen.vmaster_mute.hook = alc269_fixup_mic_mute_hook;
|
||||
spec->gen.vmaster_mute_enum = 1;
|
||||
codec->power_filter = led_power_filter;
|
||||
snd_printd("Detected mute LED for %x:%d\n", spec->mute_led_nid,
|
||||
codec_dbg(codec,
|
||||
"Detected mute LED for %x:%d\n", spec->mute_led_nid,
|
||||
spec->mute_led_polarity);
|
||||
break;
|
||||
}
|
||||
@@ -3296,7 +3297,7 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)
|
||||
alc_write_coef_idx(codec, 0xb7, 0x802b);
|
||||
break;
|
||||
}
|
||||
snd_printdd("Headset jack set to unplugged mode.\n");
|
||||
codec_dbg(codec, "Headset jack set to unplugged mode.\n");
|
||||
}
|
||||
|
||||
|
||||
@@ -3339,7 +3340,7 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
|
||||
snd_hda_set_pin_ctl_cache(codec, mic_pin, PIN_VREF50);
|
||||
break;
|
||||
}
|
||||
snd_printdd("Headset jack set to mic-in mode.\n");
|
||||
codec_dbg(codec, "Headset jack set to mic-in mode.\n");
|
||||
}
|
||||
|
||||
static void alc_headset_mode_default(struct hda_codec *codec)
|
||||
@@ -3367,7 +3368,7 @@ static void alc_headset_mode_default(struct hda_codec *codec)
|
||||
alc_write_coef_idx(codec, 0xb7, 0x802b);
|
||||
break;
|
||||
}
|
||||
snd_printdd("Headset jack set to headphone (default) mode.\n");
|
||||
codec_dbg(codec, "Headset jack set to headphone (default) mode.\n");
|
||||
}
|
||||
|
||||
/* Iphone type */
|
||||
@@ -3396,7 +3397,7 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)
|
||||
alc_write_coef_idx(codec, 0xc3, 0x0000);
|
||||
break;
|
||||
}
|
||||
snd_printdd("Headset jack set to iPhone-style headset mode.\n");
|
||||
codec_dbg(codec, "Headset jack set to iPhone-style headset mode.\n");
|
||||
}
|
||||
|
||||
/* Nokia type */
|
||||
@@ -3425,7 +3426,7 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)
|
||||
alc_write_coef_idx(codec, 0xc3, 0x0000);
|
||||
break;
|
||||
}
|
||||
snd_printdd("Headset jack set to Nokia-style headset mode.\n");
|
||||
codec_dbg(codec, "Headset jack set to Nokia-style headset mode.\n");
|
||||
}
|
||||
|
||||
static void alc_determine_headset_type(struct hda_codec *codec)
|
||||
@@ -3467,7 +3468,7 @@ static void alc_determine_headset_type(struct hda_codec *codec)
|
||||
break;
|
||||
}
|
||||
|
||||
snd_printdd("Headset jack detected iPhone-style headset: %s\n",
|
||||
codec_dbg(codec, "Headset jack detected iPhone-style headset: %s\n",
|
||||
is_ctia ? "yes" : "no");
|
||||
spec->current_headset_type = is_ctia ? ALC_HEADSET_TYPE_CTIA : ALC_HEADSET_TYPE_OMTP;
|
||||
}
|
||||
@@ -4901,8 +4902,7 @@ static void alc272_fixup_mario(struct hda_codec *codec,
|
||||
(0x3b << AC_AMPCAP_NUM_STEPS_SHIFT) |
|
||||
(0x03 << AC_AMPCAP_STEP_SIZE_SHIFT) |
|
||||
(0 << AC_AMPCAP_MUTE_SHIFT)))
|
||||
printk(KERN_WARNING
|
||||
"hda_codec: failed to override amp caps for NID 0x2\n");
|
||||
codec_warn(codec, "failed to override amp caps for NID 0x2\n");
|
||||
}
|
||||
|
||||
static const struct snd_pcm_chmap_elem asus_pcm_2_1_chmaps[] = {
|
||||
|
||||
@@ -236,7 +236,7 @@ static int si3054_init(struct hda_codec *codec)
|
||||
} while ((val & SI3054_MEI_READY) != SI3054_MEI_READY && wait_count--);
|
||||
|
||||
if((val&SI3054_MEI_READY) != SI3054_MEI_READY) {
|
||||
snd_printk(KERN_ERR "si3054: cannot initialize. EXT MID = %04x\n", val);
|
||||
codec_err(codec, "si3054: cannot initialize. EXT MID = %04x\n", val);
|
||||
/* let's pray that this is no fatal error */
|
||||
/* return -EACCES; */
|
||||
}
|
||||
@@ -247,7 +247,8 @@ static int si3054_init(struct hda_codec *codec)
|
||||
SET_REG(codec, SI3054_LINE_CFG1,0x200);
|
||||
|
||||
if((GET_REG(codec,SI3054_LINE_STATUS) & (1<<6)) == 0) {
|
||||
snd_printd("Link Frame Detect(FDT) is not ready (line status: %04x)\n",
|
||||
codec_dbg(codec,
|
||||
"Link Frame Detect(FDT) is not ready (line status: %04x)\n",
|
||||
GET_REG(codec,SI3054_LINE_STATUS));
|
||||
}
|
||||
|
||||
|
||||
@@ -296,7 +296,7 @@ static void stac_gpio_set(struct hda_codec *codec, unsigned int mask,
|
||||
{
|
||||
unsigned int gpiostate, gpiomask, gpiodir;
|
||||
|
||||
snd_printdd("%s msk %x dir %x gpio %x\n", __func__, mask, dir_mask, data);
|
||||
codec_dbg(codec, "%s msk %x dir %x gpio %x\n", __func__, mask, dir_mask, data);
|
||||
|
||||
gpiostate = snd_hda_codec_read(codec, codec->afg, 0,
|
||||
AC_VERB_GET_GPIO_DATA, 0);
|
||||
@@ -359,7 +359,7 @@ static int stac_vrefout_set(struct hda_codec *codec,
|
||||
{
|
||||
int error, pinctl;
|
||||
|
||||
snd_printdd("%s, nid %x ctl %x\n", __func__, nid, new_vref);
|
||||
codec_dbg(codec, "%s, nid %x ctl %x\n", __func__, nid, new_vref);
|
||||
pinctl = snd_hda_codec_read(codec, nid, 0,
|
||||
AC_VERB_GET_PIN_WIDGET_CONTROL, 0);
|
||||
|
||||
@@ -2086,7 +2086,7 @@ static void stac92hd83xxx_fixup_hp(struct hda_codec *codec,
|
||||
}
|
||||
|
||||
if (find_mute_led_cfg(codec, spec->default_polarity))
|
||||
snd_printd("mute LED gpio %d polarity %d\n",
|
||||
codec_dbg(codec, "mute LED gpio %d polarity %d\n",
|
||||
spec->gpio_led,
|
||||
spec->gpio_led_polarity);
|
||||
}
|
||||
@@ -3077,7 +3077,7 @@ static void stac92hd71bxx_fixup_hp(struct hda_codec *codec,
|
||||
}
|
||||
|
||||
if (find_mute_led_cfg(codec, 1))
|
||||
snd_printd("mute LED gpio %d polarity %d\n",
|
||||
codec_dbg(codec, "mute LED gpio %d polarity %d\n",
|
||||
spec->gpio_led,
|
||||
spec->gpio_led_polarity);
|
||||
|
||||
@@ -4422,8 +4422,8 @@ static int patch_stac92hd73xx(struct hda_codec *codec)
|
||||
|
||||
num_dacs = snd_hda_get_num_conns(codec, 0x0a) - 1;
|
||||
if (num_dacs < 3 || num_dacs > 5) {
|
||||
printk(KERN_WARNING "hda_codec: Could not determine "
|
||||
"number of channels defaulting to DAC count\n");
|
||||
codec_warn(codec,
|
||||
"Could not determine number of channels defaulting to DAC count\n");
|
||||
num_dacs = 5;
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,8 @@ static void hda_fixup_thinkpad_acpi(struct hda_codec *codec,
|
||||
if (!led_set_func)
|
||||
led_set_func = symbol_request(tpacpi_led_set);
|
||||
if (!led_set_func) {
|
||||
snd_printk(KERN_WARNING "Failed to find thinkpad-acpi symbol tpacpi_led_set\n");
|
||||
codec_warn(codec,
|
||||
"Failed to find thinkpad-acpi symbol tpacpi_led_set\n");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -75,7 +76,8 @@ static void hda_fixup_thinkpad_acpi(struct hda_codec *codec,
|
||||
}
|
||||
if (led_set_func(TPACPI_LED_MICMUTE, false) >= 0) {
|
||||
if (spec->num_adc_nids > 1)
|
||||
snd_printdd("Skipping micmute LED control due to several ADCs");
|
||||
codec_dbg(codec,
|
||||
"Skipping micmute LED control due to several ADCs");
|
||||
else {
|
||||
spec->cap_sync_hook = update_tpacpi_micmute_led;
|
||||
removefunc = false;
|
||||
|
||||
Reference in New Issue
Block a user