From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> To: vkoul@kernel.org Cc: yung-chuan.liao@linux.intel.com, pierre-louis.bossart@linux.intel.com, sanyog.r.kale@intel.com, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, robh@kernel.org, devicetree@vger.kernel.org, Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Subject: [PATCH v6 0/9] soundwire: qcom: various improvements Date: Tue, 30 Mar 2021 15:47:10 +0100 [thread overview] Message-ID: <20210330144719.13284-1-srinivas.kandagatla@linaro.org> (raw) Thanks for reviewing v5 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. Changes since v5: - Use BIT macro in interrupt routine - add comment for fifo write 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, sdw_extract_slave_id and sdw_slave_add 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 ++++++++++++++---- drivers/soundwire/slave.c | 1 + include/linux/soundwire/sdw.h | 2 + 5 files changed, 443 insertions(+), 113 deletions(-) -- 2.21.0
WARNING: multiple messages have this Message-ID (diff)
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> To: vkoul@kernel.org Cc: robh@kernel.org, alsa-devel@alsa-project.org, devicetree@vger.kernel.org, pierre-louis.bossart@linux.intel.com, linux-kernel@vger.kernel.org, sanyog.r.kale@intel.com, yung-chuan.liao@linux.intel.com Subject: [PATCH v6 0/9] soundwire: qcom: various improvements Date: Tue, 30 Mar 2021 15:47:10 +0100 [thread overview] Message-ID: <20210330144719.13284-1-srinivas.kandagatla@linaro.org> (raw) Thanks for reviewing v5 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. Changes since v5: - Use BIT macro in interrupt routine - add comment for fifo write 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, sdw_extract_slave_id and sdw_slave_add 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 ++++++++++++++---- drivers/soundwire/slave.c | 1 + include/linux/soundwire/sdw.h | 2 + 5 files changed, 443 insertions(+), 113 deletions(-) -- 2.21.0
next reply other threads:[~2021-03-30 14:48 UTC|newest] Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-03-30 14:47 Srinivas Kandagatla [this message] 2021-03-30 14:47 ` [PATCH v6 0/9] soundwire: qcom: various improvements Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 1/9] dt-bindings: soundwire: qcom: clarify data port bus parameters Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 2/9] soundwire: qcom: add support to missing transport params Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 3/9] soundwire: qcom: set continue execution flag for ignored commands Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 4/9] soundwire: qcom: start the clock during initialization Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 5/9] soundwire: qcom: update register read/write routine Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 6/9] soundwire: qcom: add support to new interrupts Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 7/9] soundwire: export sdw_compare_devid, sdw_extract_slave_id and sdw_slave_add Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 8/9] soundwire: qcom: add auto enumeration support Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 14:47 ` [PATCH v6 9/9] soundwire: qcom: wait for enumeration to be complete in probe Srinivas Kandagatla 2021-03-30 14:47 ` Srinivas Kandagatla 2021-03-30 17:25 ` [PATCH v6 0/9] soundwire: qcom: various improvements Vinod Koul 2021-03-30 17:25 ` Vinod Koul
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210330144719.13284-1-srinivas.kandagatla@linaro.org \ --to=srinivas.kandagatla@linaro.org \ --cc=alsa-devel@alsa-project.org \ --cc=devicetree@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=pierre-louis.bossart@linux.intel.com \ --cc=robh@kernel.org \ --cc=sanyog.r.kale@intel.com \ --cc=vkoul@kernel.org \ --cc=yung-chuan.liao@linux.intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.