linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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,
	linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org,
	Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Subject: [PATCH v3 0/9] soundwire: qcom: various improvements
Date: Mon,  8 Mar 2021 13:49:48 +0000	[thread overview]
Message-ID: <20210308134957.16024-1-srinivas.kandagatla@linaro.org> (raw)

Thanks for reviewing v2 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 v1:
	- added auto enumeration patches to this patchset
	- added comments to qcom bindings to clarify invalid values
	- cleanup trasport parameters to use internal port config

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, 441 insertions(+), 114 deletions(-)

-- 
2.21.0


             reply	other threads:[~2021-03-08 13:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-08 13:49 Srinivas Kandagatla [this message]
2021-03-08 13:49 ` [PATCH v3 1/9] dt-bindings: soundwire: qcom: clarify data port bus parameters Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 2/9] soundwire: qcom: add support to missing transport params Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 3/9] soundwire: qcom: set continue execution flag for ignored commands Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 4/9] soundwire: qcom: start the clock during initialization Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 5/9] soundwire: qcom: update register read/write routine Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 6/9] soundwire: qcom: add support to new interrupts Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 7/9] soundwire: export sdw_compare_devid() and sdw_extract_slave_id() Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 8/9] soundwire: qcom: add auto enumeration support Srinivas Kandagatla
2021-03-08 15:56   ` Pierre-Louis Bossart
2021-03-08 16:16     ` Srinivas Kandagatla
2021-03-08 13:49 ` [PATCH v3 9/9] soundwire: qcom: wait for enumeration to be complete in probe Srinivas Kandagatla

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=20210308134957.16024-1-srinivas.kandagatla@linaro.org \
    --to=srinivas.kandagatla@linaro.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pierre-louis.bossart@linux.intel.com \
    --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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).