diff options
author | Elliot Berman <[email protected]> | 2020-01-07 13:04:26 -0800 |
---|---|---|
committer | Bjorn Andersson <[email protected]> | 2020-01-07 22:14:43 -0800 |
commit | 9a434cee773ae15309ac225f27551b5492618e4a (patch) | |
tree | 26d7deff138efa039629a0611ada779626d552e5 /tools/perf/scripts/python/export-to-sqlite.py | |
parent | 57d3b816718c1cf832e2929a754da3564c6127cc (diff) |
firmware: qcom_scm: Dynamically support SMCCC and legacy conventions
Dynamically support SMCCCC and legacy conventions by detecting which
convention to use at runtime. qcom_scm_call_atomic and qcom_scm_call can
then be moved in qcom_scm.c and use underlying convention backend as
appropriate. Thus, rename qcom_scm-64,-32 to reflect that they are
backends for -smc and -legacy, respectively.
Also add support for making SCM calls earlier than when SCM driver
probes to support use cases such as qcom_scm_set_cold_boot_addr. Support
is added by lazily initializing the convention and guarding the query
with a spin lock. The limitation of these early SCM calls is that they
cannot use DMA, as in the case of >4 arguments for SMC convention and
any non-atomic call for legacy convention.
Tested-by: Brian Masney <[email protected]> # arm32
Tested-by: Stephan Gerhold <[email protected]>
Signed-off-by: Elliot Berman <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Bjorn Andersson <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions