The current error log does not provide details on the type of
transfers and which address/count was requested. All this information
can help locate in which parts of the configuration process an error
occurred.

Co-developed-by: Pierre-Louis Bossart <pierre-louis.boss...@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.boss...@linux.intel.com>
Signed-off-by: Bard Liao <yung-chuan.l...@linux.intel.com>
---
 drivers/soundwire/bus.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c
index 3cc006bfae71..6e1c988f3845 100644
--- a/drivers/soundwire/bus.c
+++ b/drivers/soundwire/bus.c
@@ -267,8 +267,10 @@ static int sdw_transfer_unlocked(struct sdw_bus *bus, 
struct sdw_msg *msg)
 
        ret = do_transfer(bus, msg);
        if (ret != 0 && ret != -ENODATA)
-               dev_err(bus->dev, "trf on Slave %d failed:%d\n",
-                       msg->dev_num, ret);
+               dev_err(bus->dev, "trf on Slave %d failed:%d %s addr %x count 
%d\n",
+                       msg->dev_num, ret,
+                       (msg->flags & SDW_MSG_FLAG_WRITE) ? "write" : "read",
+                       msg->addr, msg->len);
 
        if (msg->page)
                sdw_reset_page(bus, msg->dev_num);
-- 
2.17.1

Reply via email to