Skip to content

Commit 6d7a1ff

Browse files
plbossartvinodkoul
authored andcommitted
soundwire: bus: clarify dev_err/dbg device references
The SoundWire bus code confuses bus and Slave device levels for dev_err/dbg logs. That's not impacting functionality but the accuracy of kernel logs. We should only use bus->dev for bus-level operations and handling of Device0. For all other logs where the device number is not zero, we should use &slave->dev to provide more precisions to the user/integrator. Reported-by: Rander Wang <[email protected]> Signed-off-by: Pierre-Louis Bossart <[email protected]> Reviewed-by: Rander Wang <[email protected]> Signed-off-by: Bard Liao <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]>
1 parent 973794e commit 6d7a1ff

File tree

1 file changed

+33
-30
lines changed

1 file changed

+33
-30
lines changed

drivers/soundwire/bus.c

Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -638,6 +638,7 @@ static int sdw_get_device_num(struct sdw_slave *slave)
638638

639639
static int sdw_assign_device_num(struct sdw_slave *slave)
640640
{
641+
struct sdw_bus *bus = slave->bus;
641642
int ret, dev_num;
642643
bool new_device = false;
643644

@@ -648,7 +649,7 @@ static int sdw_assign_device_num(struct sdw_slave *slave)
648649
dev_num = sdw_get_device_num(slave);
649650
mutex_unlock(&slave->bus->bus_lock);
650651
if (dev_num < 0) {
651-
dev_err(slave->bus->dev, "Get dev_num failed: %d\n",
652+
dev_err(bus->dev, "Get dev_num failed: %d\n",
652653
dev_num);
653654
return dev_num;
654655
}
@@ -661,7 +662,7 @@ static int sdw_assign_device_num(struct sdw_slave *slave)
661662
}
662663

663664
if (!new_device)
664-
dev_dbg(slave->bus->dev,
665+
dev_dbg(bus->dev,
665666
"Slave already registered, reusing dev_num:%d\n",
666667
slave->dev_num);
667668

@@ -671,7 +672,7 @@ static int sdw_assign_device_num(struct sdw_slave *slave)
671672

672673
ret = sdw_write_no_pm(slave, SDW_SCP_DEVNUMBER, dev_num);
673674
if (ret < 0) {
674-
dev_err(&slave->dev, "Program device_num %d failed: %d\n",
675+
dev_err(bus->dev, "Program device_num %d failed: %d\n",
675676
dev_num, ret);
676677
return ret;
677678
}
@@ -749,7 +750,7 @@ static int sdw_program_device_num(struct sdw_bus *bus)
749750
*/
750751
ret = sdw_assign_device_num(slave);
751752
if (ret) {
752-
dev_err(slave->bus->dev,
753+
dev_err(bus->dev,
753754
"Assign dev_num failed:%d\n",
754755
ret);
755756
return ret;
@@ -789,9 +790,11 @@ static int sdw_program_device_num(struct sdw_bus *bus)
789790
static void sdw_modify_slave_status(struct sdw_slave *slave,
790791
enum sdw_slave_status status)
791792
{
792-
mutex_lock(&slave->bus->bus_lock);
793+
struct sdw_bus *bus = slave->bus;
794+
795+
mutex_lock(&bus->bus_lock);
793796

794-
dev_vdbg(&slave->dev,
797+
dev_vdbg(bus->dev,
795798
"%s: changing status slave %d status %d new status %d\n",
796799
__func__, slave->dev_num, slave->status, status);
797800

@@ -812,7 +815,7 @@ static void sdw_modify_slave_status(struct sdw_slave *slave,
812815
complete(&slave->enumeration_complete);
813816
}
814817
slave->status = status;
815-
mutex_unlock(&slave->bus->bus_lock);
818+
mutex_unlock(&bus->bus_lock);
816819
}
817820

818821
static enum sdw_clk_stop_mode sdw_get_clk_stop_mode(struct sdw_slave *slave)
@@ -1138,7 +1141,7 @@ int sdw_configure_dpn_intr(struct sdw_slave *slave,
11381141

11391142
ret = sdw_update(slave, addr, (mask | SDW_DPN_INT_PORT_READY), val);
11401143
if (ret < 0)
1141-
dev_err(slave->bus->dev,
1144+
dev_err(&slave->dev,
11421145
"SDW_DPN_INTMASK write failed:%d\n", val);
11431146

11441147
return ret;
@@ -1269,7 +1272,7 @@ static int sdw_initialize_slave(struct sdw_slave *slave)
12691272
/* Enable SCP interrupts */
12701273
ret = sdw_update_no_pm(slave, SDW_SCP_INTMASK1, val, val);
12711274
if (ret < 0) {
1272-
dev_err(slave->bus->dev,
1275+
dev_err(&slave->dev,
12731276
"SDW_SCP_INTMASK1 write failed:%d\n", ret);
12741277
return ret;
12751278
}
@@ -1284,7 +1287,7 @@ static int sdw_initialize_slave(struct sdw_slave *slave)
12841287

12851288
ret = sdw_update_no_pm(slave, SDW_DP0_INTMASK, val, val);
12861289
if (ret < 0)
1287-
dev_err(slave->bus->dev,
1290+
dev_err(&slave->dev,
12881291
"SDW_DP0_INTMASK read failed:%d\n", ret);
12891292
return ret;
12901293
}
@@ -1296,7 +1299,7 @@ static int sdw_handle_dp0_interrupt(struct sdw_slave *slave, u8 *slave_status)
12961299

12971300
status = sdw_read_no_pm(slave, SDW_DP0_INT);
12981301
if (status < 0) {
1299-
dev_err(slave->bus->dev,
1302+
dev_err(&slave->dev,
13001303
"SDW_DP0_INT read failed:%d\n", status);
13011304
return status;
13021305
}
@@ -1335,15 +1338,15 @@ static int sdw_handle_dp0_interrupt(struct sdw_slave *slave, u8 *slave_status)
13351338
/* clear the interrupts but don't touch reserved and SDCA_CASCADE fields */
13361339
ret = sdw_write_no_pm(slave, SDW_DP0_INT, clear);
13371340
if (ret < 0) {
1338-
dev_err(slave->bus->dev,
1341+
dev_err(&slave->dev,
13391342
"SDW_DP0_INT write failed:%d\n", ret);
13401343
return ret;
13411344
}
13421345

13431346
/* Read DP0 interrupt again */
13441347
status2 = sdw_read_no_pm(slave, SDW_DP0_INT);
13451348
if (status2 < 0) {
1346-
dev_err(slave->bus->dev,
1349+
dev_err(&slave->dev,
13471350
"SDW_DP0_INT read failed:%d\n", status2);
13481351
return status2;
13491352
}
@@ -1356,7 +1359,7 @@ static int sdw_handle_dp0_interrupt(struct sdw_slave *slave, u8 *slave_status)
13561359
} while ((status & SDW_DP0_INTERRUPTS) && (count < SDW_READ_INTR_CLEAR_RETRY));
13571360

13581361
if (count == SDW_READ_INTR_CLEAR_RETRY)
1359-
dev_warn(slave->bus->dev, "Reached MAX_RETRY on DP0 read\n");
1362+
dev_warn(&slave->dev, "Reached MAX_RETRY on DP0 read\n");
13601363

13611364
return ret;
13621365
}
@@ -1374,7 +1377,7 @@ static int sdw_handle_port_interrupt(struct sdw_slave *slave,
13741377
addr = SDW_DPN_INT(port);
13751378
status = sdw_read_no_pm(slave, addr);
13761379
if (status < 0) {
1377-
dev_err(slave->bus->dev,
1380+
dev_err(&slave->dev,
13781381
"SDW_DPN_INT read failed:%d\n", status);
13791382

13801383
return status;
@@ -1408,15 +1411,15 @@ static int sdw_handle_port_interrupt(struct sdw_slave *slave,
14081411
/* clear the interrupt but don't touch reserved fields */
14091412
ret = sdw_write_no_pm(slave, addr, clear);
14101413
if (ret < 0) {
1411-
dev_err(slave->bus->dev,
1414+
dev_err(&slave->dev,
14121415
"SDW_DPN_INT write failed:%d\n", ret);
14131416
return ret;
14141417
}
14151418

14161419
/* Read DPN interrupt again */
14171420
status2 = sdw_read_no_pm(slave, addr);
14181421
if (status2 < 0) {
1419-
dev_err(slave->bus->dev,
1422+
dev_err(&slave->dev,
14201423
"SDW_DPN_INT read failed:%d\n", status2);
14211424
return status2;
14221425
}
@@ -1429,7 +1432,7 @@ static int sdw_handle_port_interrupt(struct sdw_slave *slave,
14291432
} while ((status & SDW_DPN_INTERRUPTS) && (count < SDW_READ_INTR_CLEAR_RETRY));
14301433

14311434
if (count == SDW_READ_INTR_CLEAR_RETRY)
1432-
dev_warn(slave->bus->dev, "Reached MAX_RETRY on port read");
1435+
dev_warn(&slave->dev, "Reached MAX_RETRY on port read");
14331436

14341437
return ret;
14351438
}
@@ -1458,23 +1461,23 @@ static int sdw_handle_slave_alerts(struct sdw_slave *slave)
14581461
/* Read Intstat 1, Intstat 2 and Intstat 3 registers */
14591462
ret = sdw_read_no_pm(slave, SDW_SCP_INT1);
14601463
if (ret < 0) {
1461-
dev_err(slave->bus->dev,
1464+
dev_err(&slave->dev,
14621465
"SDW_SCP_INT1 read failed:%d\n", ret);
14631466
goto io_err;
14641467
}
14651468
buf = ret;
14661469

14671470
ret = sdw_nread_no_pm(slave, SDW_SCP_INTSTAT2, 2, buf2);
14681471
if (ret < 0) {
1469-
dev_err(slave->bus->dev,
1472+
dev_err(&slave->dev,
14701473
"SDW_SCP_INT2/3 read failed:%d\n", ret);
14711474
goto io_err;
14721475
}
14731476

14741477
if (slave->prop.is_sdca) {
14751478
ret = sdw_read_no_pm(slave, SDW_DP0_INT);
14761479
if (ret < 0) {
1477-
dev_err(slave->bus->dev,
1480+
dev_err(&slave->dev,
14781481
"SDW_DP0_INT read failed:%d\n", ret);
14791482
goto io_err;
14801483
}
@@ -1571,7 +1574,7 @@ static int sdw_handle_slave_alerts(struct sdw_slave *slave)
15711574
/* Ack interrupt */
15721575
ret = sdw_write_no_pm(slave, SDW_SCP_INT1, clear);
15731576
if (ret < 0) {
1574-
dev_err(slave->bus->dev,
1577+
dev_err(&slave->dev,
15751578
"SDW_SCP_INT1 write failed:%d\n", ret);
15761579
goto io_err;
15771580
}
@@ -1585,23 +1588,23 @@ static int sdw_handle_slave_alerts(struct sdw_slave *slave)
15851588
*/
15861589
ret = sdw_read_no_pm(slave, SDW_SCP_INT1);
15871590
if (ret < 0) {
1588-
dev_err(slave->bus->dev,
1591+
dev_err(&slave->dev,
15891592
"SDW_SCP_INT1 read failed:%d\n", ret);
15901593
goto io_err;
15911594
}
15921595
_buf = ret;
15931596

15941597
ret = sdw_nread_no_pm(slave, SDW_SCP_INTSTAT2, 2, _buf2);
15951598
if (ret < 0) {
1596-
dev_err(slave->bus->dev,
1599+
dev_err(&slave->dev,
15971600
"SDW_SCP_INT2/3 read failed:%d\n", ret);
15981601
goto io_err;
15991602
}
16001603

16011604
if (slave->prop.is_sdca) {
16021605
ret = sdw_read_no_pm(slave, SDW_DP0_INT);
16031606
if (ret < 0) {
1604-
dev_err(slave->bus->dev,
1607+
dev_err(&slave->dev,
16051608
"SDW_DP0_INT read failed:%d\n", ret);
16061609
goto io_err;
16071610
}
@@ -1627,7 +1630,7 @@ static int sdw_handle_slave_alerts(struct sdw_slave *slave)
16271630
} while (stat != 0 && count < SDW_READ_INTR_CLEAR_RETRY);
16281631

16291632
if (count == SDW_READ_INTR_CLEAR_RETRY)
1630-
dev_warn(slave->bus->dev, "Reached MAX_RETRY on alert read\n");
1633+
dev_warn(&slave->dev, "Reached MAX_RETRY on alert read\n");
16311634

16321635
io_err:
16331636
pm_runtime_mark_last_busy(&slave->dev);
@@ -1733,7 +1736,7 @@ int sdw_handle_slave_status(struct sdw_bus *bus,
17331736
case SDW_SLAVE_ALERT:
17341737
ret = sdw_handle_slave_alerts(slave);
17351738
if (ret)
1736-
dev_err(bus->dev,
1739+
dev_err(&slave->dev,
17371740
"Slave %d alert handling failed: %d\n",
17381741
i, ret);
17391742
break;
@@ -1752,21 +1755,21 @@ int sdw_handle_slave_status(struct sdw_bus *bus,
17521755

17531756
ret = sdw_initialize_slave(slave);
17541757
if (ret)
1755-
dev_err(bus->dev,
1758+
dev_err(&slave->dev,
17561759
"Slave %d initialization failed: %d\n",
17571760
i, ret);
17581761

17591762
break;
17601763

17611764
default:
1762-
dev_err(bus->dev, "Invalid slave %d status:%d\n",
1765+
dev_err(&slave->dev, "Invalid slave %d status:%d\n",
17631766
i, status[i]);
17641767
break;
17651768
}
17661769

17671770
ret = sdw_update_slave_status(slave, status[i]);
17681771
if (ret)
1769-
dev_err(slave->bus->dev,
1772+
dev_err(&slave->dev,
17701773
"Update Slave status failed:%d\n", ret);
17711774
if (attached_initializing) {
17721775
dev_dbg(&slave->dev,

0 commit comments

Comments
 (0)