mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
i3c: master: Do not treat master device as a duplicate target
i3c_master_search_i3c_dev_duplicate() searches the bus for another I3C
device with the same PID as the reference device. The search can match
master->this, causing the controller itself to be returned as a
duplicate.
Since the controller is not a target device, it cannot be a duplicate of
one. Exclude master->this from matching so that the function only
returns real duplicate target devices.
Fixes: 3a379bbcea ("i3c: Add core I3C infrastructure")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Mukesh Savaliya <mukesh.savaliya@oss.qualcomm.com>
Link: https://patch.msgid.link/20260807145638.168865-4-adrian.hunter@intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
parent
8bed7f4fa7
commit
4dc1b3eeba
|
|
@ -2545,7 +2545,8 @@ i3c_master_search_i3c_dev_duplicate(struct i3c_dev_desc *refdev)
|
|||
|
||||
i3c_bus_for_each_i3cdev(&master->bus, i3cdev) {
|
||||
if (i3cdev != refdev && i3cdev->info.pid &&
|
||||
i3cdev->info.pid == refdev->info.pid)
|
||||
i3cdev->info.pid == refdev->info.pid &&
|
||||
i3cdev != master->this)
|
||||
return i3cdev;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user