2023-05-15 15:14:42

by Anusha Canchi

[permalink] [raw]
Subject: [PATCH V2 0/4] Enable crypto for ipq9574

Update GCC driver to include clocks required for crypto.
Enable crypto nodes in ipq9574.

DTS patch depends on the below series
https://lore.kernel.org/linux-arm-msm/[email protected]/

Changes in V2:
Detailed change logs are added to the respective patches.

V1 can be found at
https://lore.kernel.org/linux-arm-msm/[email protected]/

Anusha Rao (4):
dt-bindings: clock: Add crypto clock and reset definitions
clk: qcom: gcc-ipq9574: Enable crypto clocks
dt-bindings: qcom-qce: add SoC compatible string for ipq9574
arm64: dts: qcom: ipq9574: Enable crypto nodes

.../devicetree/bindings/crypto/qcom-qce.yaml | 1 +
arch/arm64/boot/dts/qcom/ipq9574.dtsi | 20 ++++++
drivers/clk/qcom/gcc-ipq9574.c | 72 +++++++++++++++++++
include/dt-bindings/clock/qcom,ipq9574-gcc.h | 4 ++
include/dt-bindings/reset/qcom,ipq9574-gcc.h | 1 +
5 files changed, 98 insertions(+)


base-commit: aabe491169befbe5481144acf575a0260939764a
--
2.17.1



2023-05-15 15:16:44

by Anusha Canchi

[permalink] [raw]
Subject: [PATCH V2 4/4] arm64: dts: qcom: ipq9574: Enable crypto nodes

Enable crypto support for ipq9574.

Signed-off-by: Anusha Rao <[email protected]>
---
Changes in V2:
- Removed the deprecated compatible 'qcom,crypto-v5.1' and
added SoC specific compatible string.

arch/arm64/boot/dts/qcom/ipq9574.dtsi | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi
index fea15f3cf910..6e52d35a6a15 100644
--- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi
@@ -123,6 +123,26 @@
clock-names = "core";
};

+ cryptobam: dma-controller@704000 {
+ compatible = "qcom,bam-v1.7.0";
+ reg = <0x00704000 0x20000>;
+ interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
+ #dma-cells = <1>;
+ qcom,ee = <1>;
+ qcom,controlled-remotely;
+ };
+
+ crypto: crypto@73a000 {
+ compatible = "qcom,ipq9574-qce", "qcom,ipq4019-qce", "qcom,qce";
+ reg = <0x0073a000 0x6000>;
+ clocks = <&gcc GCC_CRYPTO_AHB_CLK>,
+ <&gcc GCC_CRYPTO_AXI_CLK>,
+ <&gcc GCC_CRYPTO_CLK>;
+ clock-names = "iface", "bus", "core";
+ dmas = <&cryptobam 2>, <&cryptobam 3>;
+ dma-names = "rx", "tx";
+ };
+
tlmm: pinctrl@1000000 {
compatible = "qcom,ipq9574-tlmm";
reg = <0x01000000 0x300000>;
--
2.17.1