On 23.12.2022 01:19, Dmitry Baryshkov wrote: > On 10/12/2022 22:03, Konrad Dybcio wrote: >> In a very unfortunate turn of events, enabling interconnect on non-UFS >> devices (or more precisely devices-with-UFS-clocks-disabled-from- >> bootloader) crashes the device, as a memory read to an unlocked peripheral >> is attempted. This series tries to fix that with the least amount of >> casualties.. > > Just to note. I had occasional boot issues with UFS on msm8996 even after these patches being applied. It seems I was able to fix them by enabling interconnect support in the UFS-qcom driver. > To be fair, we may be missing some more things (I have no concrete evidence, maybe things go south just because my ports of icc drivers all turn out to be garbage..): - icc is not aware of what hardware is on from the bootloader and if we don't add interconnects= *everywhere*, *including* where downstream made (in their case) educated assumptions, things start falling apart real quick, as random bits of hw may stop working if they get a zero vote - on other platforms, this is even a bigger mess, because some hardware *"unvotes"* on reset, such as MDSS or PCIe.. - if some but not all connections are described, requested bus rate may be lower than expected, with effects ranging from subpar performance to things simply not working because of too much traffic - it's really hard to test smd rpm icc drivers other than dumping reg writes and comparing them with downstream, sometimes things "work" by luck, other times it breaks booting.. Konrad >> >> Konrad Dybcio (5): >> dt-bindings: interconnect: Add UFS clocks to MSM8996 A2NoC >> interconnect: qcom: msm8996: Provide UFS clocks to A2NoC >> interconnect: qcom: msm8996: Fix regmap max_register values >> interconnect: qcom: rpm: Use _optional func for provider clocks >> arm64: dts: qcom: msm8996: Add additional A2NoC clocks >> >> .../bindings/interconnect/qcom,rpm.yaml | 24 ++++++++++++++++++- >> arch/arm64/boot/dts/qcom/msm8996.dtsi | 6 +++-- >> drivers/interconnect/qcom/icc-rpm.c | 2 +- >> drivers/interconnect/qcom/msm8996.c | 19 +++++++++++---- >> 4 files changed, 42 insertions(+), 9 deletions(-) >> >