Message ID | 20220505135008.1351533-2-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/msm/mpd4: get rid of struct mdp4_platform_config | expand |
On 5/5/2022 6:50 AM, Dmitry Baryshkov wrote: > Move iommu_domain_alloc() in front of adress space/IOMMU initialization. > This allows us to drop it from struct mdp4_cfg_platform which > remained from the pre-DT days. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com> > --- > drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 8 ++++---- > drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h | 1 - > 2 files changed, 4 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c > index fb48c8c19ec3..1fba6ab06eb1 100644 > --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c > +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c > @@ -388,6 +388,7 @@ static int mdp4_kms_init(struct drm_device *dev) > struct msm_drm_private *priv = dev->dev_private; > struct mdp4_kms *mdp4_kms; > struct msm_kms *kms = NULL; > + struct iommu_domain *iommu; > struct msm_gem_address_space *aspace; > int irq, ret; > u32 major, minor; > @@ -495,9 +496,9 @@ static int mdp4_kms_init(struct drm_device *dev) > mdp4_disable(mdp4_kms); > mdelay(16); > > - if (config->iommu) { > - struct msm_mmu *mmu = msm_iommu_new(&pdev->dev, > - config->iommu); > + iommu = iommu_domain_alloc(pdev->dev.bus); > + if (iommu) { > + struct msm_mmu *mmu = msm_iommu_new(&pdev->dev, iommu); > > aspace = msm_gem_address_space_create(mmu, > "mdp4", 0x1000, 0x100000000 - 0x1000); > @@ -557,7 +558,6 @@ static struct mdp4_platform_config *mdp4_get_config(struct platform_device *dev) > > /* TODO: Chips that aren't apq8064 have a 200 Mhz max_clk */ > config.max_clk = 266667000; > - config.iommu = iommu_domain_alloc(&platform_bus_type); > > return &config; > } > diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h > index e8ee92ab7956..7cc549b6a82b 100644 > --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h > +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h > @@ -44,7 +44,6 @@ struct mdp4_kms { > > /* platform config data (ie. from DT, or pdata) */ > struct mdp4_platform_config { > - struct iommu_domain *iommu; > uint32_t max_clk; > }; >
diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c index fb48c8c19ec3..1fba6ab06eb1 100644 --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c @@ -388,6 +388,7 @@ static int mdp4_kms_init(struct drm_device *dev) struct msm_drm_private *priv = dev->dev_private; struct mdp4_kms *mdp4_kms; struct msm_kms *kms = NULL; + struct iommu_domain *iommu; struct msm_gem_address_space *aspace; int irq, ret; u32 major, minor; @@ -495,9 +496,9 @@ static int mdp4_kms_init(struct drm_device *dev) mdp4_disable(mdp4_kms); mdelay(16); - if (config->iommu) { - struct msm_mmu *mmu = msm_iommu_new(&pdev->dev, - config->iommu); + iommu = iommu_domain_alloc(pdev->dev.bus); + if (iommu) { + struct msm_mmu *mmu = msm_iommu_new(&pdev->dev, iommu); aspace = msm_gem_address_space_create(mmu, "mdp4", 0x1000, 0x100000000 - 0x1000); @@ -557,7 +558,6 @@ static struct mdp4_platform_config *mdp4_get_config(struct platform_device *dev) /* TODO: Chips that aren't apq8064 have a 200 Mhz max_clk */ config.max_clk = 266667000; - config.iommu = iommu_domain_alloc(&platform_bus_type); return &config; } diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h index e8ee92ab7956..7cc549b6a82b 100644 --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h @@ -44,7 +44,6 @@ struct mdp4_kms { /* platform config data (ie. from DT, or pdata) */ struct mdp4_platform_config { - struct iommu_domain *iommu; uint32_t max_clk; };
Move iommu_domain_alloc() in front of adress space/IOMMU initialization. This allows us to drop it from struct mdp4_cfg_platform which remained from the pre-DT days. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 8 ++++---- drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.h | 1 - 2 files changed, 4 insertions(+), 5 deletions(-)