Message ID | 20210309104816.20350-1-srinivas.kandagatla@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [RESEND,v2] soundwire: bus: Fix device found flag correctly | expand |
On 09-03-21, 10:48, Srinivas Kandagatla wrote: > found flag is used to indicate SoundWire devices that are > both enumerated on the bus and available in the device list. > However this flag is not reset correctly after one iteration, > This could miss some of the devices that are enumerated on the > bus but not in device list. So reset this correctly to fix this issue! Applied, thanks
diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c index a9ab4a6264e0..188e391c5a83 100644 --- a/drivers/soundwire/bus.c +++ b/drivers/soundwire/bus.c @@ -712,7 +712,7 @@ static int sdw_program_device_num(struct sdw_bus *bus) struct sdw_slave *slave, *_s; struct sdw_slave_id id; struct sdw_msg msg; - bool found = false; + bool found; int count = 0, ret; u64 addr; @@ -744,6 +744,7 @@ static int sdw_program_device_num(struct sdw_bus *bus) sdw_extract_slave_id(bus, addr, &id); + found = false; /* Now compare with entries */ list_for_each_entry_safe(slave, _s, &bus->slaves, node) { if (sdw_compare_devid(slave, id) == 0) {