When the properties num-channels & qcom,num-ees are not specified, the driver tries to read the values from registers, but this read fails and resets the device if the interconnect from the qcom,qce node is not already active when that happens. Add the static properties to not touch any registers during probe, the rest of the time when the BAM is used by QCE then the interconnect will be active already. Fixes: d488f903a860 ("arm64: dts: qcom: sc7280: add QCrypto nodes") Signed-off-by: Luca Weiss <luca.weiss@xxxxxxxxxxxxx> --- See also: https://lore.kernel.org/linux-arm-msm/CY01EKQVWE36.B9X5TDXAREPF@xxxxxxxxxxxxx/ Alternatively you could add interconnect property (copied from &crypto) and add interconnect support to the BAM driver, then during probe we can read the registers without crashing the device. --- arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi index 83b5b76ba179..ce0d24ee7eed 100644 --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi @@ -2345,6 +2345,8 @@ cryptobam: dma-controller@1dc4000 { <&apps_smmu 0x4e6 0x0011>; qcom,ee = <0>; qcom,controlled-remotely; + num-channels = <16>; + qcom,num-ees = <4>; }; crypto: crypto@1dfa000 { --- base-commit: 39676dfe52331dba909c617f213fdb21015c8d10 change-id: 20231229-sc7280-cryptobam-fixup-fb5f94a5572f Best regards, -- Luca Weiss <luca.weiss@xxxxxxxxxxxxx>