<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/interconnect/qcom, branch v5.10</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.10</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.10'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2020-11-20T13:52:05Z</updated>
<entry>
<title>interconnect: qcom: qcs404: Remove GPU and display RPM IDs</title>
<updated>2020-11-20T13:52:05Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-11-18T11:10:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7ab1e9117607485df977bb6e271be5c5ad649a4c'/>
<id>urn:sha1:7ab1e9117607485df977bb6e271be5c5ad649a4c</id>
<content type='text'>
The following errors are noticed during boot on a QCS404 board:
[    2.926647] qcom_icc_rpm_smd_send mas 6 error -6
[    2.934573] qcom_icc_rpm_smd_send mas 8 error -6

These errors show when we try to configure the GPU and display nodes.
Since these particular nodes aren't supported on RPM and are purely
local, we should just change their mas_rpm_id to -1 to avoid any
requests being sent for these master IDs.

Reviewed-by: Mike Tipton &lt;mdtipton@codeaurora.org&gt;
Reviewed-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20201118111044.26056-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: msm8916: Remove rpm-ids from non-RPM nodes</title>
<updated>2020-11-20T13:51:51Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-11-12T10:51:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c497f9322af947204c28292be6f20dd2d97483dd'/>
<id>urn:sha1:c497f9322af947204c28292be6f20dd2d97483dd</id>
<content type='text'>
Some nodes are incorrectly marked as RPM-controlled (they have RPM
master and slave ids assigned), but are actually controlled by the
application CPU instead. The RPM complains when we send requests for
resources that it can't control. Let's fix this by replacing the IDs,
with the default "-1" in which case no requests are sent.

Reviewed-by: Mike Tipton &lt;mdtipton@codeaurora.org&gt;
Link: https://lore.kernel.org/r/20201112105140.10092-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: msm8974: Don't boost the NoC rate during boot</title>
<updated>2020-11-17T22:21:47Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-11-09T12:45:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9caf2d956cfa254c6d89c5f4d7b3f8235d75b28f'/>
<id>urn:sha1:9caf2d956cfa254c6d89c5f4d7b3f8235d75b28f</id>
<content type='text'>
It has been reported that on Fairphone 2 (msm8974-based), increasing
the clock rate for some of the NoCs during boot may lead to hangs.
Let's restore the original behavior and not touch the clock rate of
any of the NoCs to fix the regression.

Reported-by: Luca Weiss &lt;luca@z3ntu.xyz&gt;
Tested-by: Luca Weiss &lt;luca@z3ntu.xyz&gt;
Fixes: b1d681d8d324 ("interconnect: Add sync state support")
Link: https://lore.kernel.org/r/20201109124512.10776-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: msm8974: Prevent integer overflow in rate</title>
<updated>2020-11-17T22:18:05Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-11-06T14:48:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7381e27b1e563aa8a1c6bcf74a8cadb6901c283a'/>
<id>urn:sha1:7381e27b1e563aa8a1c6bcf74a8cadb6901c283a</id>
<content type='text'>
When sync_state support got introduced recently, by default we try to
set the NoCs to run initially at maximum rate. But as these values are
aggregated, we may end with a really big clock rate value, which is
then converted from "u64" to "long" during the clock rate rounding.
But on 32bit platforms this may result an overflow. Fix it by making
sure that the rate is within range.

Reported-by: Luca Weiss &lt;luca@z3ntu.xyz&gt;
Reviewed-by: Brian Masney &lt;masneyb@onstation.org&gt;
Link: https://lore.kernel.org/r/20201106144847.7726-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: use icc_sync state for sm8[12]50</title>
<updated>2020-10-27T14:01:22Z</updated>
<author>
<name>Dmitry Baryshkov</name>
<email>dmitry.baryshkov@linaro.org</email>
</author>
<published>2020-10-27T13:34:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=fce52ad3483281930dc9215a68d69837f219f889'/>
<id>urn:sha1:fce52ad3483281930dc9215a68d69837f219f889</id>
<content type='text'>
In addition to the rest of Qcom interconnect drivers use icc_sync_state
for SM8150/SM8250 interconnect drivers to notify the interconnect
framework when all consumers are probed and there is no need to keep the
bandwidth set to maximum anymore.

Also move the BCM initialization before creating the nodes to set the
max bandwidth in hardware for the initialization/probing stage.

Signed-off-by: Dmitry Baryshkov &lt;dmitry.baryshkov@linaro.org&gt;
Fixes: 7d3b0b0d8184 ("interconnect: qcom: Use icc_sync_state")
Link: https://lore.kernel.org/r/20201027133418.976687-1-dmitry.baryshkov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: Ensure that the floor bandwidth value is enforced</title>
<updated>2020-10-22T10:26:26Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-10-22T10:26:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=266cd33b59138501579c64648f54b93eab2e5adf'/>
<id>urn:sha1:266cd33b59138501579c64648f54b93eab2e5adf</id>
<content type='text'>
Take into account the initial bandwidth from the framework and update
the internal sum and max values before committing if needed. This will
ensure that the floor bandwidth values are enforced until the providers
get into sync state.

Fixes: 7d3b0b0d8184 ("interconnect: qcom: Use icc_sync_state")
Tested-by: Akash Asthana &lt;akashast@codeaurora.org&gt;
Link: https://lore.kernel.org/r/20201021155938.9223-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: sc7180: Init BCMs before creating the nodes</title>
<updated>2020-10-15T06:24:00Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-10-13T13:59:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=599809540f173f572c32a35d712accdc14d6357c'/>
<id>urn:sha1:599809540f173f572c32a35d712accdc14d6357c</id>
<content type='text'>
Currently if we use sync_state, by default the bandwidth is maxed out,
but in order to set this in hardware, the BCMs (Bus Clock Managers) need
to be initialized first. Move the BCM initialization before creating the
nodes to fix this.

Fixes: 7d3b0b0d8184 ("interconnect: qcom: Use icc_sync_state")
Acked-by: Saravana Kannan &lt;saravanak@google.com&gt;
Link: https://lore.kernel.org/r/20201013135913.29059-3-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: sdm845: Init BCMs before creating the nodes</title>
<updated>2020-10-15T06:24:00Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-10-13T13:59:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0f221a729049ab727c87b0fe47e309b952d879ce'/>
<id>urn:sha1:0f221a729049ab727c87b0fe47e309b952d879ce</id>
<content type='text'>
Currently if we use sync_state, by default the bandwidth is maxed out,
but in order to set this in hardware, the BCMs (Bus Clock Managers) need
to be initialized first. Move the BCM initialization before creating the
nodes to fix this.

Fixes: 7d3b0b0d8184 ("interconnect: qcom: Use icc_sync_state")
Acked-by: Saravana Kannan &lt;saravanak@google.com&gt;
Link: https://lore.kernel.org/r/20201013135913.29059-2-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM</title>
<updated>2020-10-15T06:23:25Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-10-12T19:40:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5be1805dc3961ce0465bcb0beab85fe8580af08d'/>
<id>urn:sha1:5be1805dc3961ce0465bcb0beab85fe8580af08d</id>
<content type='text'>
After enabling interconnect scaling for display on the db845c board,
in certain configurations the board hangs, while the following errors
are observed on the console:

  Error sending AMC RPMH requests (-110)
  qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
  qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
  qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
  ...

In this specific case, the above is related to one of the sequencers
being stuck, while client drivers are returning from probe and trying
to disable the currently unused clock and interconnect resources.
Generally we want to keep the multimedia NoC enabled like the rest of
the NoCs, so let's set the keepalive flag on it too.

Fixes: aae57773fbe0 ("interconnect: qcom: sdm845: Split qnodes into their respective NoCs")
Reported-by: Amit Pundir &lt;amit.pundir@linaro.org&gt;
Reviewed-by: Mike Tipton &lt;mdtipton@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Link: https://lore.kernel.org/r/20201012194034.26944-1-georgi.djakov@linaro.org
Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'icc-syncstate' into icc-next</title>
<updated>2020-09-18T06:13:40Z</updated>
<author>
<name>Georgi Djakov</name>
<email>georgi.djakov@linaro.org</email>
</author>
<published>2020-09-18T06:12:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=628fdbcf9d665ab68f5493936ca23383a5844ff7'/>
<id>urn:sha1:628fdbcf9d665ab68f5493936ca23383a5844ff7</id>
<content type='text'>
* icc-syncstate:
  interconnect: Add get_bw() callback
  interconnect: Add sync state support
  interconnect: qcom: Use icc_sync_state

Signed-off-by: Georgi Djakov &lt;georgi.djakov@linaro.org&gt;
</content>
</entry>
</feed>
