aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Biggers <[email protected]>2022-08-26 00:12:44 -0700
committerBjorn Andersson <[email protected]>2022-08-29 17:25:39 -0500
commit276ee34a40c1440544f609b54b23b99ead8f2205 (patch)
treed965dcc032d89bfb834b48109482f2b50c85c390
parent643d05163e3a18f224e4e1a80de09b2b74e1d249 (diff)
arm64: dts: qcom: sm8450: add Inline Crypto Engine registers and clock
Add the registers and clock for the Inline Crypto Engine (ICE) to the device tree node for the UFS host controller on sm8450. This makes ufs_qcom support inline encryption when CONFIG_SCSI_UFS_CRYPTO=y. The address and size of the register range, and the minimum and maximum frequency of the ICE core clock, all match the values used downstream. I've validated this on an SM8450 HDK using the 'encrypt' group of xfstests on ext4 with MOUNT_OPTIONS="-o inlinecrypt". Signed-off-by: Eric Biggers <[email protected]> Reviewed-by: Konrad Dybcio <[email protected]> Signed-off-by: Bjorn Andersson <[email protected]> Link: https://lore.kernel.org/r/[email protected]
-rw-r--r--arch/arm64/boot/dts/qcom/sm8450.dtsi13
1 files changed, 9 insertions, 4 deletions
diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qcom/sm8450.dtsi
index d5f20d45193d..d0ebf61a0074 100644
--- a/arch/arm64/boot/dts/qcom/sm8450.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi
@@ -3094,7 +3094,9 @@
ufs_mem_hc: ufshc@1d84000 {
compatible = "qcom,sm8450-ufshc", "qcom,ufshc",
"jedec,ufs-2.0";
- reg = <0 0x01d84000 0 0x3000>;
+ reg = <0 0x01d84000 0 0x3000>,
+ <0 0x01d88000 0 0x8000>;
+ reg-names = "std", "ice";
interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
phys = <&ufs_mem_phy_lanes>;
phy-names = "ufsphy";
@@ -3118,7 +3120,8 @@
"ref_clk",
"tx_lane0_sync_clk",
"rx_lane0_sync_clk",
- "rx_lane1_sync_clk";
+ "rx_lane1_sync_clk",
+ "ice_core_clk";
clocks =
<&gcc GCC_UFS_PHY_AXI_CLK>,
<&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
@@ -3127,7 +3130,8 @@
<&rpmhcc RPMH_CXO_CLK>,
<&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
<&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
- <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
+ <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>,
+ <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
freq-table-hz =
<75000000 300000000>,
<0 0>,
@@ -3136,7 +3140,8 @@
<75000000 300000000>,
<0 0>,
<0 0>,
- <0 0>;
+ <0 0>,
+ <75000000 300000000>;
status = "disabled";
};