aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-pcm.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2012-02-01 16:30:32 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-02-02 09:14:17 -0500
commit25bfe662e8c42f84851f79ed6ada5ef96a2ff329 (patch)
tree3072ce79d7e5f648dfb6e067f8ee440cab82e3c2 /sound/soc/soc-pcm.c
parentbc6c117ef0d8c09d643ab3da8b4976e32e2fcdab (diff)
ASoC: pcm: Improve error logging
Use the standard logging macros and use dev_ variants where we can, also reporting error codes whenever we report an error. These changes (the error codes in particular) make it noticeably easier to figure out what went wrong just from the basic dmesg output. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc/soc-pcm.c')
-rw-r--r--sound/soc/soc-pcm.c39
1 files changed, 22 insertions, 17 deletions
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
index 93be95b7864c..121318defea3 100644
--- a/sound/soc/soc-pcm.c
+++ b/sound/soc/soc-pcm.c
@@ -123,8 +123,8 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
123 if (cpu_dai->driver->ops->startup) { 123 if (cpu_dai->driver->ops->startup) {
124 ret = cpu_dai->driver->ops->startup(substream, cpu_dai); 124 ret = cpu_dai->driver->ops->startup(substream, cpu_dai);
125 if (ret < 0) { 125 if (ret < 0) {
126 printk(KERN_ERR "asoc: can't open interface %s\n", 126 dev_err(cpu_dai->dev, "can't open interface %s: %d\n",
127 cpu_dai->name); 127 cpu_dai->name, ret);
128 goto out; 128 goto out;
129 } 129 }
130 } 130 }
@@ -132,7 +132,8 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
132 if (platform->driver->ops && platform->driver->ops->open) { 132 if (platform->driver->ops && platform->driver->ops->open) {
133 ret = platform->driver->ops->open(substream); 133 ret = platform->driver->ops->open(substream);
134 if (ret < 0) { 134 if (ret < 0) {
135 printk(KERN_ERR "asoc: can't open platform %s\n", platform->name); 135 dev_err(platform->dev, "can't open platform %s: %d\n",
136 platform->name, ret);
136 goto platform_err; 137 goto platform_err;
137 } 138 }
138 } 139 }
@@ -140,8 +141,8 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
140 if (codec_dai->driver->ops->startup) { 141 if (codec_dai->driver->ops->startup) {
141 ret = codec_dai->driver->ops->startup(substream, codec_dai); 142 ret = codec_dai->driver->ops->startup(substream, codec_dai);
142 if (ret < 0) { 143 if (ret < 0) {
143 printk(KERN_ERR "asoc: can't open codec %s\n", 144 dev_err(codec_dai->dev, "can't open codec %s: %d\n",
144 codec_dai->name); 145 codec_dai->name, ret);
145 goto codec_dai_err; 146 goto codec_dai_err;
146 } 147 }
147 } 148 }
@@ -149,7 +150,8 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
149 if (rtd->dai_link->ops && rtd->dai_link->ops->startup) { 150 if (rtd->dai_link->ops && rtd->dai_link->ops->startup) {
150 ret = rtd->dai_link->ops->startup(substream); 151 ret = rtd->dai_link->ops->startup(substream);
151 if (ret < 0) { 152 if (ret < 0) {
152 printk(KERN_ERR "asoc: %s startup failed\n", rtd->dai_link->name); 153 pr_err("asoc: %s startup failed: %d\n",
154 rtd->dai_link->name, ret);
153 goto machine_err; 155 goto machine_err;
154 } 156 }
155 } 157 }
@@ -413,7 +415,7 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
413 if (rtd->dai_link->ops && rtd->dai_link->ops->prepare) { 415 if (rtd->dai_link->ops && rtd->dai_link->ops->prepare) {
414 ret = rtd->dai_link->ops->prepare(substream); 416 ret = rtd->dai_link->ops->prepare(substream);
415 if (ret < 0) { 417 if (ret < 0) {
416 printk(KERN_ERR "asoc: machine prepare error\n"); 418 pr_err("asoc: machine prepare error: %d\n", ret);
417 goto out; 419 goto out;
418 } 420 }
419 } 421 }
@@ -421,7 +423,8 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
421 if (platform->driver->ops && platform->driver->ops->prepare) { 423 if (platform->driver->ops && platform->driver->ops->prepare) {
422 ret = platform->driver->ops->prepare(substream); 424 ret = platform->driver->ops->prepare(substream);
423 if (ret < 0) { 425 if (ret < 0) {
424 printk(KERN_ERR "asoc: platform prepare error\n"); 426 dev_err(platform->dev, "platform prepare error: %d\n",
427 ret);
425 goto out; 428 goto out;
426 } 429 }
427 } 430 }
@@ -429,7 +432,8 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
429 if (codec_dai->driver->ops->prepare) { 432 if (codec_dai->driver->ops->prepare) {
430 ret = codec_dai->driver->ops->prepare(substream, codec_dai); 433 ret = codec_dai->driver->ops->prepare(substream, codec_dai);
431 if (ret < 0) { 434 if (ret < 0) {
432 printk(KERN_ERR "asoc: codec DAI prepare error\n"); 435 dev_err(codec_dai->dev, "DAI prepare error: %d\n",
436 ret);
433 goto out; 437 goto out;
434 } 438 }
435 } 439 }
@@ -437,7 +441,8 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
437 if (cpu_dai->driver->ops->prepare) { 441 if (cpu_dai->driver->ops->prepare) {
438 ret = cpu_dai->driver->ops->prepare(substream, cpu_dai); 442 ret = cpu_dai->driver->ops->prepare(substream, cpu_dai);
439 if (ret < 0) { 443 if (ret < 0) {
440 printk(KERN_ERR "asoc: cpu DAI prepare error\n"); 444 dev_err(cpu_dai->dev, "DAI prepare error: %d\n",
445 ret);
441 goto out; 446 goto out;
442 } 447 }
443 } 448 }
@@ -484,7 +489,7 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream,
484 if (rtd->dai_link->ops && rtd->dai_link->ops->hw_params) { 489 if (rtd->dai_link->ops && rtd->dai_link->ops->hw_params) {
485 ret = rtd->dai_link->ops->hw_params(substream, params); 490 ret = rtd->dai_link->ops->hw_params(substream, params);
486 if (ret < 0) { 491 if (ret < 0) {
487 printk(KERN_ERR "asoc: machine hw_params failed\n"); 492 pr_err("asoc: machine hw_params failed: %d\n", ret);
488 goto out; 493 goto out;
489 } 494 }
490 } 495 }
@@ -492,8 +497,8 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream,
492 if (codec_dai->driver->ops->hw_params) { 497 if (codec_dai->driver->ops->hw_params) {
493 ret = codec_dai->driver->ops->hw_params(substream, params, codec_dai); 498 ret = codec_dai->driver->ops->hw_params(substream, params, codec_dai);
494 if (ret < 0) { 499 if (ret < 0) {
495 printk(KERN_ERR "asoc: can't set codec %s hw params\n", 500 dev_err(codec_dai->dev, "can't set %s hw params: %d\n",
496 codec_dai->name); 501 codec_dai->name, ret);
497 goto codec_err; 502 goto codec_err;
498 } 503 }
499 } 504 }
@@ -501,8 +506,8 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream,
501 if (cpu_dai->driver->ops->hw_params) { 506 if (cpu_dai->driver->ops->hw_params) {
502 ret = cpu_dai->driver->ops->hw_params(substream, params, cpu_dai); 507 ret = cpu_dai->driver->ops->hw_params(substream, params, cpu_dai);
503 if (ret < 0) { 508 if (ret < 0) {
504 printk(KERN_ERR "asoc: interface %s hw params failed\n", 509 dev_err(cpu_dai->dev, "%s hw params failed: %d\n",
505 cpu_dai->name); 510 cpu_dai->name, ret);
506 goto interface_err; 511 goto interface_err;
507 } 512 }
508 } 513 }
@@ -510,8 +515,8 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream,
510 if (platform->driver->ops && platform->driver->ops->hw_params) { 515 if (platform->driver->ops && platform->driver->ops->hw_params) {
511 ret = platform->driver->ops->hw_params(substream, params); 516 ret = platform->driver->ops->hw_params(substream, params);
512 if (ret < 0) { 517 if (ret < 0) {
513 printk(KERN_ERR "asoc: platform %s hw params failed\n", 518 dev_err(platform->dev, "%s hw params failed: %d\n",
514 platform->name); 519 platform->name, ret);
515 goto platform_err; 520 goto platform_err;
516 } 521 }
517 } 522 }