Message ID | 20210312120009.22386-1-srinivas.kandagatla@linaro.org |
---|---|
Headers | show |
Series | soundwire: qcom: various improvements | expand |
On 3/12/21 6:00 AM, Srinivas Kandagatla wrote: > Thanks for reviewing v3 of this patchset! > > During testing SoundWire controller on SM8250 MTP, we found > few issues like all the interrupts are not handled, > all transport parameters are not read from device tree. > Patch to add Auto Enumeration supported by the controller > is also part of this series. > > Other major issue was register read/writes which was interrupt based > was an overhead and puts lot of limitation on context it can be used from. > > With previous approach number of interrupts generated > after enumeration are around 130: > $ cat /proc/interrupts | grep soundwire > 21: 130 0 0 0 0 0 0 0 GICv3 234 Edge soundwire > > after this patch they are just 3 interrupts > $ cat /proc/interrupts | grep soundwire > 21: 3 0 0 0 0 0 0 0 GICv3 234 Edge soundwire > > So this patchset add various improvements to the existing driver > to address above issues. > > Tested it on SM8250 MTP with 2x WSA881x speakers, HeadPhones on > WCD938x via lpass-rx-macro and Analog MICs via lpass-tx-macro. > Also tested on DragonBoard DB845c with 2xWSA881x speakers. LGTM, for the series Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> > > Changes since v3: > - Fixed setting assigned bit during autoenumeration > > Srinivas Kandagatla (9): > dt-bindings: soundwire: qcom: clarify data port bus parameters > soundwire: qcom: add support to missing transport params > soundwire: qcom: set continue execution flag for ignored commands > soundwire: qcom: start the clock during initialization > soundwire: qcom: update register read/write routine > soundwire: qcom: add support to new interrupts > soundwire: export sdw_compare_devid() and sdw_extract_slave_id() > soundwire: qcom: add auto enumeration support > soundwire: qcom: wait for enumeration to be complete in probe > > .../bindings/soundwire/qcom,sdw.txt | 20 + > drivers/soundwire/bus.c | 4 +- > drivers/soundwire/qcom.c | 529 ++++++++++++++---- > include/linux/soundwire/sdw.h | 2 + > 4 files changed, 442 insertions(+), 113 deletions(-) >