Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [High] drm/msm: mdss: missing qcom,sm7250 UBWC config breaks msm_mdss_init() --
commit 0057475d95677bf9a33c044b3beaf8c21ba53ed1 Author: Ishu Brar <[email protected]> drm/msm: mdss: Add SM7250 support This commit adds the qcom,sm7250-mdss compatible entry to mdss_dt_match[] to enable MDSS support on SM7250 platforms. > diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c > index e69b122f2687a..f619052bbb463 100644 > --- a/drivers/gpu/drm/msm/msm_mdss.c > +++ b/drivers/gpu/drm/msm/msm_mdss.c > @@ -562,6 +562,7 @@ static const struct of_device_id mdss_dt_match[] = { > { .compatible = "qcom,sm6350-mdss", .data = &data_76k8 }, > { .compatible = "qcom,sm6375-mdss", .data = &data_76k8 }, > { .compatible = "qcom,sm7150-mdss", .data = &data_76k8 }, > + { .compatible = "qcom,sm7250-mdss", .data = &data_76k8 }, [Severity: High] Will mdss_probe() and dpu_kms_hw_init() fail with -EINVAL on SM7250 because qcom,sm7250 is missing from qcom_ubwc_configs[]? During probe, mdss_probe() -> msm_mdss_init() requires a valid UBWC configuration: drivers/gpu/drm/msm/msm_mdss.c:msm_mdss_init() { ... msm_mdss->mdss_data = qcom_ubwc_config_get_data(); if (IS_ERR(msm_mdss->mdss_data)) return ERR_CAST(msm_mdss->mdss_data); ... } Similarly, dpu_kms_hw_init() in drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c calls qcom_ubwc_config_get_data() and aborts on error: drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c:dpu_kms_hw_init() { ... dpu_kms->mdss = qcom_ubwc_config_get_data(); if (IS_ERR(dpu_kms->mdss)) { rc = PTR_ERR(dpu_kms->mdss); DPU_ERROR("failed to get UBWC config data: %d\n", rc); goto err_pm_put; } ... } Because DRM_MSM selects QCOM_UBWC_CONFIG, qcom_ubwc_config_get_data() in drivers/soc/qcom/ubwc_config.c matches the root machine compatible against qcom_ubwc_configs[] via of_machine_get_match_data() and returns ERR_PTR(-EINVAL) when no entry is found. Currently, qcom_ubwc_configs[] only contains entries for qcom,sm7125, qcom,sm7150, qcom,sm7225, and qcom,sm7325 in the SM7xxx family: drivers/soc/qcom/ubwc_config.c: { .compatible = "qcom,sm7150", .data = &ubwc_2_0_hbb14, }, { .compatible = "qcom,sm7225", .data = &ubwc_2_0_hbb14, }, { .compatible = "qcom,sm7325", .data = &ubwc_3_1_hbb14, }, Does qcom_ubwc_configs[] also need a qcom,sm7250 entry so that MDSS and DPU initialization can succeed on SM7250? -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=5
