]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/gpu/drm/msm/msm_drv.c
Merge tag 'io_uring-5.6-2020-02-14' of git://git.kernel.dk/linux-block
[linux.git] / drivers / gpu / drm / msm / msm_drv.c
index ac678ace09a36aabc8826ff2d2a8c43170937e30..e4b750b0c2d3fcdad40761fe6cae1597b2844164 100644 (file)
@@ -441,6 +441,14 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv)
        if (ret)
                goto err_msm_uninit;
 
+       if (!dev->dma_parms) {
+               dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms),
+                                             GFP_KERNEL);
+               if (!dev->dma_parms)
+                       return -ENOMEM;
+       }
+       dma_set_max_seg_size(dev, DMA_BIT_MASK(32));
+
        msm_gem_shrinker_init(ddev);
 
        switch (get_mdp_ver(pdev)) {
@@ -1192,7 +1200,8 @@ static int add_display_components(struct device *dev,
         * the interfaces to our components list.
         */
        if (of_device_is_compatible(dev->of_node, "qcom,mdss") ||
-           of_device_is_compatible(dev->of_node, "qcom,sdm845-mdss")) {
+           of_device_is_compatible(dev->of_node, "qcom,sdm845-mdss") ||
+           of_device_is_compatible(dev->of_node, "qcom,sc7180-mdss")) {
                ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
                if (ret) {
                        DRM_DEV_ERROR(dev, "failed to populate children devices\n");
@@ -1317,6 +1326,7 @@ static const struct of_device_id dt_match[] = {
        { .compatible = "qcom,mdp4", .data = (void *)KMS_MDP4 },
        { .compatible = "qcom,mdss", .data = (void *)KMS_MDP5 },
        { .compatible = "qcom,sdm845-mdss", .data = (void *)KMS_DPU },
+       { .compatible = "qcom,sc7180-mdss", .data = (void *)KMS_DPU },
        {}
 };
 MODULE_DEVICE_TABLE(of, dt_match);