ASoC: uda1380: use dev_err() and %pe for better error reporting

Convert existing debug and error prints to dev_err() to provide better
diagnostic information. Use the %pe format specifier to print
human-readable error strings for I2C failures.

Signed-off-by: Wenyuan Li <2063309626@qq.com>
Link: https://patch.msgid.link/tencent_A26B55F062F2B9C282A142BFC8BCDB1B9105@qq.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Wenyuan Li 2026-03-24 16:36:06 +08:00 committed by Mark Brown
parent 071efde6b7
commit e5d5cc4479
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -117,20 +117,31 @@ static int uda1380_write(struct snd_soc_component *component, unsigned int reg,
pr_debug("uda1380: hw write %x val %x\n", reg, value);
ret = i2c_master_send(uda1380->i2c, data, 3);
if (ret != 3)
return ret < 0 ? ret : -EIO;
if (ret != 3) {
int err = ret < 0 ? ret : -EIO;
dev_err(component->dev, "write failed: %pe\n", ERR_PTR(err));
return err;
}
ret = i2c_master_send(uda1380->i2c, data, 1);
if (ret != 1)
return ret < 0 ? ret : -EIO;
if (ret != 1) {
int err = ret < 0 ? ret : -EIO;
dev_err(component->dev, "send address failed: %pe\n", ERR_PTR(err));
return err;
}
ret = i2c_master_recv(uda1380->i2c, data, 2);
if (ret != 2)
return ret < 0 ? ret : -EIO;
if (ret != 2) {
int err = ret < 0 ? ret : -EIO;
dev_err(component->dev, "read failed: %pe\n", ERR_PTR(err));
return err;
}
val = (data[0] << 8) | data[1];
if (val != value)
if (val != value) {
dev_err(component->dev, "read back val %x (expected %x)\n", val, value);
return -EIO;
}
if (reg >= 0x10)
clear_bit(reg - 0x10, &uda1380_cache_dirty);