[RESEND v9 0/5] enable use of resources on the SSC bus on (some) qcom SoCs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Michael Srba <Michael.Srba@xxxxxxxxx>

NOTE: previous versions of this series didn't use a cover letter,
it's added in this resend in order to not upset the kernel bot.

This series adds necessary changes for accessing recources in the SSC block
on msm8998 (though it should be possible to extend this to support other
SoCs).

In order to make use of these changes, Linux (HLOS in qcom's terms) needs
to be allowed to access the relevant address ranges by the SMMU
configuration.

For a simple way to modify an existing (closed source) qcom hypervisor
image to change the static SMMU configuration, see [1].

If you lack ownership of your device, it should alternatively be possible
to change the SMMU configuration at a later point, provided you manage to
get code execution in the hypervisor by way of an exploit.

[1] https://michael-srba.cz/mainline4life/msm8998_hypervisor_patch.html

Michael Srba (5):
  dt-bindings: clock: gcc-msm8998: Add definitions of SSC-related clocks
  clk: qcom: gcc-msm8998: add SSC-related clocks
  dt-bindings: bus: add device tree bindings for qcom,ssc-block-bus
  drivers: bus: add driver for initializing the SSC bus on (some) qcom
    SoCs
  arm64: dts: qcom: msm8998: reserve potentially inaccessible clocks

 .../bindings/bus/qcom,ssc-block-bus.yaml      | 147 +++++++
 arch/arm64/boot/dts/qcom/msm8998.dtsi         |  15 +
 drivers/bus/Kconfig                           |  11 +
 drivers/bus/Makefile                          |   1 +
 drivers/bus/qcom-ssc-block-bus.c              | 391 ++++++++++++++++++
 drivers/clk/qcom/gcc-msm8998.c                |  56 +++
 include/dt-bindings/clock/qcom,gcc-msm8998.h  |   4 +
 7 files changed, 625 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/bus/qcom,ssc-block-bus.yaml
 create mode 100644 drivers/bus/qcom-ssc-block-bus.c

-- 
2.35.1




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux