soundwire fixes for 6.11

- Single fix for non-continous port map programming
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmbRvb0ACgkQfBQHDyUj
 g0dixA/+IkEjWobd8tSEcJNifPA0vn4tM26AHZ2tVda+9/CwMBSs/3gcHgM/M+AJ
 o1j/VIa0YQfx+VCv0iUJOk7juHBFxjPAsa9qTPmWMfWuhZiFLyPmxiRe9fmXCWRH
 /HrNBUw0NQWnr3xEF3jlaaOpU4JUPO+0R0gJ91qiG4Yzk71LApHZtPZlQIdUJo0C
 U6eX4VgesjR7b5BEozta+er6DiBL39S+KU0obE6r0mSynR7X6mMKyCqKkLkoDxib
 /vmLIhsd0jMyBmsF76JCI8gKXiMdSRJeOvwLQGZMACNtTX/9MRypkaLVWnUz0ksM
 jLCpyJECEjqQY7kaH75eRCcoe2kjRJvKpWSMTwABQbp+3NUaz4traaGgyvUCZzBe
 FXdqhB6gviQJ4pBgwFG9LH5nLlr4WC6zPY80yfMml3UGq8S2MNPSpRx8DIZ4e0nN
 0jizSZTIvdYyB15HqxnBftW3vIp6bmvoCFMLh+N8EdghT6gcdX7BGj0XRt1UZC1m
 57WQwlFYUxMLO0QmpYLAvSB7Xp+gguntEqXeVFQmTK4foGIaGcO0Xr87UNBOMhCI
 BTWQZsqaM1wYhMlvzLE7qMi60CHYTP0iApPoH4sla9jacGwPsZ/YBuWiTMPTUpTI
 KgyLDWu2IY6+T1zk1W9ipVShOvDLAwu9CKMz49v9WipqAecKkFg=
 =7oFZ
 -----END PGP SIGNATURE-----

Merge tag 'soundwire-6.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire

Pull soundwire fix from Vinod Koul:

 - Single fix for non-continous port map programming

* tag 'soundwire-6.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire:
  soundwire: stream: fix programming slave ports for non-continous port maps
This commit is contained in:
Linus Torvalds 2024-08-31 06:15:02 +12:00
commit 8d80c9903e

View File

@ -1291,18 +1291,18 @@ struct sdw_dpn_prop *sdw_get_slave_dpn_prop(struct sdw_slave *slave,
unsigned int port_num)
{
struct sdw_dpn_prop *dpn_prop;
u8 num_ports;
unsigned long mask;
int i;
if (direction == SDW_DATA_DIR_TX) {
num_ports = hweight32(slave->prop.source_ports);
mask = slave->prop.source_ports;
dpn_prop = slave->prop.src_dpn_prop;
} else {
num_ports = hweight32(slave->prop.sink_ports);
mask = slave->prop.sink_ports;
dpn_prop = slave->prop.sink_dpn_prop;
}
for (i = 0; i < num_ports; i++) {
for_each_set_bit(i, &mask, 32) {
if (dpn_prop[i].num == port_num)
return &dpn_prop[i];
}