<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/soc/qcom/Kconfig, branch master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/soc/qcom/Kconfig?h=master</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/soc/qcom/Kconfig?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2022-08-29T21:18:29Z</updated>
<entry>
<title>soc: qcom: Make QCOM_RPMPD depend on OF</title>
<updated>2022-08-29T21:18:29Z</updated>
<author>
<name>YueHaibing</name>
<email>yuehaibing@huawei.com</email>
</author>
<published>2022-08-20T11:32:02Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=0e5732e4d58437feded42fb459384904eb317e91'/>
<id>urn:sha1:0e5732e4d58437feded42fb459384904eb317e91</id>
<content type='text'>
WARNING: unmet direct dependencies detected for PM_GENERIC_DOMAINS_OF
  Depends on [n]: PM_GENERIC_DOMAINS [=y] &amp;&amp; OF [=n]
  Selected by [m]:
  - QCOM_RPMPD [=m] &amp;&amp; PM [=y] &amp;&amp; QCOM_SMD_RPM [=m]

PM_GENERIC_DOMAINS_OF depends on OF, so QCOM_RPMPD also depends on it.

Fixes: 7d0221fb5912 ("soc/qcom: Make QCOM_RPMPD select PM_GENERIC_DOMAINS/_OF")
Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Acked-by: Randy Dunlap &lt;rdunlap@infradead.org&gt; # build-tested
Signed-off-by: Bjorn Andersson &lt;andersson@kernel.org&gt;
Link: https://lore.kernel.org/r/20220820113202.23940-1-yuehaibing@huawei.com
</content>
</entry>
<entry>
<title>soc: qcom: Make QCOM_RPMPD depend on PM</title>
<updated>2022-07-16T15:08:56Z</updated>
<author>
<name>Konrad Dybcio</name>
<email>konrad.dybcio@somainline.org</email>
</author>
<published>2022-07-07T21:21:58Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=a6232f2aa99ce470799992e99e0012945bb5308f'/>
<id>urn:sha1:a6232f2aa99ce470799992e99e0012945bb5308f</id>
<content type='text'>
QCOM_RPMPD requires PM_GENERIC_DOMAINS/_OF, which in turns requires
CONFIG_PM. I forgot about the latter in my earlier patch (it's still
in -next as of the time of committing, hence no Fixes: tag). Fix it.

Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: Konrad Dybcio &lt;konrad.dybcio@somainline.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20220707212158.32684-1-konrad.dybcio@somainline.org
</content>
</entry>
<entry>
<title>soc: qcom: icc-bwmon: Add bandwidth monitoring driver</title>
<updated>2022-07-06T20:57:51Z</updated>
<author>
<name>Krzysztof Kozlowski</name>
<email>krzysztof.kozlowski@linaro.org</email>
</author>
<published>2022-07-04T12:17:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=b9c2ae6cac403dee3195fda9eb28d8ee733b225b'/>
<id>urn:sha1:b9c2ae6cac403dee3195fda9eb28d8ee733b225b</id>
<content type='text'>
Bandwidth monitoring (BWMON) sits between various subsytems like CPU,
GPU, Last Level caches and memory subsystem.  The BWMON can be
configured to monitor the data throuhput between memory and other
subsytems.  The throughput is measured within specified sampling window
and is used to vote for corresponding interconnect bandwidth.

Current implementation brings support for BWMON v4, used for example on
SDM845 to measure bandwidth between CPU (gladiator_noc) and Last Level
Cache (memnoc).  Usage of this BWMON allows to remove fixed bandwidth
votes from cpufreq (CPU nodes) thus achieve high memory throughput even
with lower CPU frequencies.

The driver was tested on SDM845.

Co-developed-by: Thara Gopinath &lt;thara.gopinath@gmail.com&gt;
Signed-off-by: Thara Gopinath &lt;thara.gopinath@gmail.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;krzysztof.kozlowski@linaro.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20220704121730.127925-3-krzysztof.kozlowski@linaro.org
</content>
</entry>
<entry>
<title>soc/qcom: Make QCOM_RPMPD select PM_GENERIC_DOMAINS/_OF</title>
<updated>2022-07-05T16:16:46Z</updated>
<author>
<name>Konrad Dybcio</name>
<email>konrad.dybcio@somainline.org</email>
</author>
<published>2022-07-01T07:37:00Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=7d0221fb59125181a31ef3a561306c70fb238bc7'/>
<id>urn:sha1:7d0221fb59125181a31ef3a561306c70fb238bc7</id>
<content type='text'>
The driver uses generic genpd OF APIs and with a very minimal config
where nothing else selects them, this driver will not probe, as
of_genpd_add_provider_onecell will return -EOPNOTSUPP.

Make sure to select these in Kconfig to prevent that.

Signed-off-by: Konrad Dybcio &lt;konrad.dybcio@somainline.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20220701073700.17124-1-konrad.dybcio@somainline.org
</content>
</entry>
<entry>
<title>qcom: spm: allow compile-testing</title>
<updated>2021-10-26T18:01:40Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2021-10-19T15:42:02Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=4f22aa4569e55131d69dae87e76869070d62c392'/>
<id>urn:sha1:4f22aa4569e55131d69dae87e76869070d62c392</id>
<content type='text'>
ARM_QCOM_SPM_CPUIDLE can be selected when compile-testing on
other architectures, but this causes a Kconfig warning
for QCOM_SPM:

WARNING: unmet direct dependencies detected for QCOM_SPM
  Depends on [n]: ARCH_QCOM [=n]
  Selected by [y]:
  - ARM_QCOM_SPM_CPUIDLE [=y] &amp;&amp; CPU_IDLE [=y] &amp;&amp; (ARM [=y] || ARM64) &amp;&amp; (ARCH_QCOM [=n] || COMPILE_TEST [=y]) &amp;&amp; !ARM64 &amp;&amp; MMU [=y]

Make it possible to also compile-test this one, which can
be done now that v5.15-rc5 lets you select QCOM_SCM everywhere.

Fixes: a871be6b8eee ("cpuidle: Convert Qualcomm SPM driver to a generic CPUidle driver")
Fixes: 498ba2a8a275 ("cpuidle: Fix ARM_QCOM_SPM_CPUIDLE configuration")
Reviewed-by: Stephen Boyd &lt;swboyd@chromium.org&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>soc: qcom: Add Sleep stats driver</title>
<updated>2021-10-16T23:23:30Z</updated>
<author>
<name>Mahesh Sivasubramanian</name>
<email>msivasub@codeaurora.org</email>
</author>
<published>2021-10-13T06:38:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=1d7724690344a264f8a567c9214aa65456d7566d'/>
<id>urn:sha1:1d7724690344a264f8a567c9214aa65456d7566d</id>
<content type='text'>
Let's add a driver to read the stats from remote processor and
export to debugfs.

The driver creates "qcom_sleep_stats" directory in debugfs and
adds files for various low power mode available. Below is sample
output with command

cat /sys/kernel/debug/qcom_sleep_stats/ddr
count = 0
Last Entered At = 0
Last Exited At = 0
Accumulated Duration = 0

Signed-off-by: Mahesh Sivasubramanian &lt;msivasub@codeaurora.org&gt;
Signed-off-by: Lina Iyer &lt;ilina@codeaurora.org&gt;
[mkshah: add subsystem sleep stats, create one file for each stat]
Signed-off-by: Maulik Shah &lt;mkshah@codeaurora.org&gt;
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/1634107104-22197-3-git-send-email-mkshah@codeaurora.org
</content>
</entry>
<entry>
<title>Merge tag '20210927135559.738-6-srinivas.kandagatla@linaro.org' into drivers-for-5.16</title>
<updated>2021-09-28T03:13:45Z</updated>
<author>
<name>Bjorn Andersson</name>
<email>bjorn.andersson@linaro.org</email>
</author>
<published>2021-09-28T03:13:45Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=f27591125a56c8c50491919b159569ab5730878d'/>
<id>urn:sha1:f27591125a56c8c50491919b159569ab5730878d</id>
<content type='text'>
v5.15-rc1 + 20210927135559.738-[23456]-srinivas.kandagatla@linaro.org

This immutable branch is based on v5.15-rc1 and contains the following
patches extending the existig APR driver to also implement GPR:
20210927135559.738-2-srinivas.kandagatla@linaro.org
20210927135559.738-3-srinivas.kandagatla@linaro.org
20210927135559.738-4-srinivas.kandagatla@linaro.org
20210927135559.738-5-srinivas.kandagatla@linaro.org
20210927135559.738-6-srinivas.kandagatla@linaro.org
</content>
</entry>
<entry>
<title>soc: qcom: apr: Add GPR support</title>
<updated>2021-09-28T03:10:07Z</updated>
<author>
<name>Srinivas Kandagatla</name>
<email>srinivas.kandagatla@linaro.org</email>
</author>
<published>2021-09-27T13:55:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ec1471a898cca38af6b8956a83ebc1297214546f'/>
<id>urn:sha1:ec1471a898cca38af6b8956a83ebc1297214546f</id>
<content type='text'>
Qualcomm Generic Packet router aka GPR is the IPC mechanism found
in AudioReach next generation signal processing framework to perform
command and response messages between various processors.

GPR has concepts of static and dynamic port, all static services like
APM (Audio Processing Manager), PRM (Proxy resource manager) have
fixed port numbers where as dynamic services like graphs have dynamic
port numbers which are allocated at runtime. All GPR packet messages
will have source and destination domain and port along with opcode
and payload.

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Reviewed-by: Pierre-Louis Bossart &lt;pierre-louis.bossart@linux.intel.com&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20210927135559.738-6-srinivas.kandagatla@linaro.org
</content>
</entry>
<entry>
<title>cpuidle: qcom_spm: Detach state machine from main SPM handling</title>
<updated>2021-09-21T22:41:48Z</updated>
<author>
<name>AngeloGioacchino Del Regno</name>
<email>angelogioacchino.delregno@somainline.org</email>
</author>
<published>2021-07-29T15:56:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=60f3692b5f0b3e1df3ccc07c28758379052d0ab6'/>
<id>urn:sha1:60f3692b5f0b3e1df3ccc07c28758379052d0ab6</id>
<content type='text'>
In commit a871be6b8eee ("cpuidle: Convert Qualcomm SPM driver to a generic
CPUidle driver") the SPM driver has been converted to a
generic CPUidle driver: that was mainly made to simplify the
driver and that was a great accomplishment;
Though, at that time, this driver was only applicable to ARM 32-bit SoCs,
lacking logic about the handling of newer generation SAW.

In preparation for the enablement of SPM features on AArch64/ARM64,
split the cpuidle-qcom-spm driver in two: the CPUIdle related
state machine (currently used only on ARM SoCs) stays there, while
the SPM communication handling lands back in soc/qcom/spm.c and
also making sure to not discard the simplifications that were
introduced in the aforementioned commit.

Since now the "two drivers" are split, the SCM dependency in the
main SPM handling is gone and for this reason it was also possible
to move the SPM initialization early: this will also make sure that
whenever the SAW CPUIdle driver is getting initialized, the SPM
driver will be ready to do the job.

Please note that the anticipation of the SPM initialization was
also done to optimize the boot times on platforms that have their
CPU/L2 idle states managed by other means (such as PSCI), while
needing SAW initialization for other purposes, like AVS control.

Signed-off-by: AngeloGioacchino Del Regno &lt;angelogioacchino.delregno@somainline.org&gt;
Reviewed-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Acked-by: Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Link: https://lore.kernel.org/r/20210729155609.608159-2-angelogioacchino.delregno@somainline.org
</content>
</entry>
<entry>
<title>soc: qcom: Kconfig: make RPMH match Command DB setting</title>
<updated>2020-10-27T21:44:58Z</updated>
<author>
<name>Lina Iyer</name>
<email>ilina@codeaurora.org</email>
</author>
<published>2020-10-08T04:09:07Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=827b5e6ec1144a34de27247a45a2f78b25d753a3'/>
<id>urn:sha1:827b5e6ec1144a34de27247a45a2f78b25d753a3</id>
<content type='text'>
RPMH and drivers that use RPMH APIs need Command DB API to find the
dynamic resource information. Let's match the RPMH to match the Command
DB configuration.

This should fix undefined symbol references reported by CI :

   aarch64-linux-ld: drivers/clk/qcom/clk-rpmh.o: in function `clk_rpmh_probe':
&gt;&gt; clk-rpmh.c:(.text+0xac): undefined reference to `cmd_db_read_addr'
&gt;&gt; aarch64-linux-ld: clk-rpmh.c:(.text+0xc0): undefined reference to `cmd_db_read_aux_data'
   aarch64-linux-ld: drivers/soc/qcom/rpmh-rsc.o: in function `rpmh_rsc_probe':
&gt;&gt; rpmh-rsc.c:(.text+0x42c): undefined reference to `cmd_db_ready'
   aarch64-linux-ld: drivers/regulator/qcom-rpmh-regulator.o: in function `rpmh_regulator_probe':
&gt;&gt; qcom-rpmh-regulator.c:(.text+0x3e0): undefined reference to `cmd_db_read_addr'

Cc: Todd Kjos &lt;tkjos@google.com&gt;
Cc: John Stultz &lt;john.stultz@linaro.org&gt;
Cc: Maulik Shah &lt;mkshah@codeaurora.org&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: Lina Iyer &lt;ilina@codeaurora.org&gt;
Link: https://lore.kernel.org/r/20201008040907.7036-1-ilina@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
</feed>
