soc: qcom: Add RPM processor/subsystem driver
authorStephan Gerhold <stephan@gerhold.net>
Thu, 15 Jun 2023 16:50:42 +0000 (18:50 +0200)
committerBjorn Andersson <andersson@kernel.org>
Fri, 14 Jul 2023 05:18:57 +0000 (22:18 -0700)
commit8ddfa81d090c71fd6cb3cb8ca1d420c0da33a575
treeb765e7b950478247de6b752c24890a6edf395535
parent181563be4373e70bfab82773e3fce571edea9629
soc: qcom: Add RPM processor/subsystem driver

Add a simple driver for the qcom,rpm-proc compatible that registers the
"smd-edge" and populates other children defined in the device tree.

Note that the DT schema belongs to the remoteproc subsystem while this
driver is added inside soc/qcom. I argue that the RPM *is* a remoteproc,
but as an implementation detail in Linux it can currently not benefit
from anything provided by the remoteproc subsystem. The RPM firmware is
usually already loaded and started by earlier components in the boot
chain and is not meant to be ever restarted.

To avoid breaking existing kernel configurations the driver is always
built when smd-rpm.c is also built. They belong closely together anyway.
To avoid build errors CONFIG_RPMSG_QCOM_SMD must be also built-in if
rpm-proc is.

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20230531-rpm-rproc-v3-9-a07dcdefd918@gerhold.net
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
drivers/soc/qcom/Kconfig
drivers/soc/qcom/Makefile
drivers/soc/qcom/rpm-proc.c [new file with mode: 0644]