On 21/09/2022 23:14, Konrad Dybcio wrote: >> Unfortunately I don't get this explanation... you mean some other >> firmware requires Linux drivers to use specific compatibles instead of >> one fallback? > No, perhaps I misunderstood you. > >> >> All of these do not have driver data, so they are essentially compatible >> for Linux driver. Growing this list in the driver seems pointless. What >> is the benefit of growing driver with same entries, except more patches? > Compatible lists in smmu-impl files allow matching driver quirks for SMMUs themselves > and consumer devices (such as MDSS). The situation is more complicated, because some > qcom SMMUs also require more quirks than others (think 8974 vs 8994 vs 8996/pro&660&8998 > vs 845+ vs adreno smmu in various flavours), so all qcom SMMUs need to use > `qcom_smmu_impl` and some others need even more quirks on top of that (that generally > hurt performance or functionality, so we don't want them when they're unnecessary). > If all generations of qcom SMMU implementation that bear the same name behaved anywhere > near consistent, there would be no need for keeping this around, instead requiring only > "qcom,broken-smmu" or something". So where are the quirks? Again: driver data is empty. Best regards, Krzysztof