diff options
author | Mark Brown <broonie@kernel.org> | 2020-07-07 14:26:34 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-07-07 14:26:34 +0100 |
commit | 0e801d547cf3d988edb17514e1f0d5b7b1fd7e90 (patch) | |
tree | 2afba83a07266488e0cca094b88c2b3ad7058759 | |
parent | 411b0f305b4ba05a7bae6b0fe924d02a3086eed6 (diff) | |
parent | cfdab2cd85ecd3f98837e5cc59dd3319cd9b6fff (diff) | |
download | linux-0e801d547cf3d988edb17514e1f0d5b7b1fd7e90.tar.gz linux-0e801d547cf3d988edb17514e1f0d5b7b1fd7e90.tar.bz2 linux-0e801d547cf3d988edb17514e1f0d5b7b1fd7e90.zip |
Merge series "spi: spi-geni-qcom: Avoid a bunch of per-transfer overhead" from Douglas Anderson <dianders@chromium.org>:
This series tries to reduce a whole bunch of overhead in each SPI
transfer. Much of this overhead is new with the recent interconnect
changes, but even without those changes we still had some overhead
that we could avoid. Let's avoid all of it.
These changes are atop the Qualcomm tree to avoid merge conflicts. If
they look good, the most expedient way to land them is probably to get
Ack's from Mark and land then via the Qualcomm tree.
Most testing was done on the Chrome OS 5.4 tree, but sanity check was
done on mainline.
Douglas Anderson (3):
spi: spi-geni-qcom: Avoid clock setting if not needed
spi: spi-geni-qcom: Set an autosuspend delay of 250 ms
spi: spi-geni-qcom: Get rid of most overhead in prepare_message()
drivers/spi/spi-geni-qcom.c | 67 ++++++++++++++++++-------------------
1 file changed, 32 insertions(+), 35 deletions(-)
--
2.27.0.383.g050319c2ae-goog
-rw-r--r-- | drivers/spi/spi-geni-qcom.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index e99a9d57449f..1d96a7f32fda 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -619,6 +619,8 @@ static int spi_geni_probe(struct platform_device *pdev) init_completion(&mas->cancel_done); init_completion(&mas->abort_done); spin_lock_init(&mas->lock); + pm_runtime_use_autosuspend(&pdev->dev); + pm_runtime_set_autosuspend_delay(&pdev->dev, 250); pm_runtime_enable(dev); ret = spi_geni_init(mas); |