On Mon, Jun 29, 2020 at 11:19 AM Eric Anholt <eric@xxxxxxxxxx> wrote: > > We don't expect to find vbif_nrt or regdma on cheza, but were clogging > up dmesg with errors about it. nit: s/cheza/sdm845/ (since this really applies to the SoC rather than the board.. also, maybe msm_ioremap_optional() ? BR, -R > > Signed-off-by: Eric Anholt <eric@xxxxxxxxxx> > --- > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 4 ++-- > drivers/gpu/drm/msm/msm_drv.c | 22 ++++++++++++++++++---- > drivers/gpu/drm/msm/msm_drv.h | 2 ++ > 3 files changed, 22 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c > index a4ab802fee6d..d9aef2b5e930 100644 > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c > @@ -838,13 +838,13 @@ static int dpu_kms_hw_init(struct msm_kms *kms) > dpu_kms->vbif[VBIF_RT] = NULL; > goto error; > } > - dpu_kms->vbif[VBIF_NRT] = msm_ioremap(dpu_kms->pdev, "vbif_nrt", "vbif_nrt"); > + dpu_kms->vbif[VBIF_NRT] = msm_ioremap_quiet(dpu_kms->pdev, "vbif_nrt", "vbif_nrt"); > if (IS_ERR(dpu_kms->vbif[VBIF_NRT])) { > dpu_kms->vbif[VBIF_NRT] = NULL; > DPU_DEBUG("VBIF NRT is not defined"); > } > > - dpu_kms->reg_dma = msm_ioremap(dpu_kms->pdev, "regdma", "regdma"); > + dpu_kms->reg_dma = msm_ioremap_quiet(dpu_kms->pdev, "regdma", "regdma"); > if (IS_ERR(dpu_kms->reg_dma)) { > dpu_kms->reg_dma = NULL; > DPU_DEBUG("REG_DMA is not defined"); > diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c > index f6ce40bf3699..df4a3c6a49cd 100644 > --- a/drivers/gpu/drm/msm/msm_drv.c > +++ b/drivers/gpu/drm/msm/msm_drv.c > @@ -120,8 +120,8 @@ struct clk *msm_clk_get(struct platform_device *pdev, const char *name) > return clk; > } > > -void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > - const char *dbgname) > +void __iomem *_msm_ioremap(struct platform_device *pdev, const char *name, > + const char *dbgname, bool quiet) > { > struct resource *res; > unsigned long size; > @@ -133,7 +133,8 @@ void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > > if (!res) { > - DRM_DEV_ERROR(&pdev->dev, "failed to get memory resource: %s\n", name); > + if (!quiet) > + DRM_DEV_ERROR(&pdev->dev, "failed to get memory resource: %s\n", name); > return ERR_PTR(-EINVAL); > } > > @@ -141,7 +142,8 @@ void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > > ptr = devm_ioremap(&pdev->dev, res->start, size); > if (!ptr) { > - DRM_DEV_ERROR(&pdev->dev, "failed to ioremap: %s\n", name); > + if (!quiet) > + DRM_DEV_ERROR(&pdev->dev, "failed to ioremap: %s\n", name); > return ERR_PTR(-ENOMEM); > } > > @@ -151,6 +153,18 @@ void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > return ptr; > } > > +void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > + const char *dbgname) > +{ > + return _msm_ioremap(pdev, name, dbgname, false); > +} > + > +void __iomem *msm_ioremap_quiet(struct platform_device *pdev, const char *name, > + const char *dbgname) > +{ > + return _msm_ioremap(pdev, name, dbgname, true); > +} > + > void msm_writel(u32 data, void __iomem *addr) > { > if (reglog) > diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h > index e2d6a6056418..2687f7a42c15 100644 > --- a/drivers/gpu/drm/msm/msm_drv.h > +++ b/drivers/gpu/drm/msm/msm_drv.h > @@ -411,6 +411,8 @@ struct clk *msm_clk_bulk_get_clock(struct clk_bulk_data *bulk, int count, > const char *name); > void __iomem *msm_ioremap(struct platform_device *pdev, const char *name, > const char *dbgname); > +void __iomem *msm_ioremap_quiet(struct platform_device *pdev, const char *name, > + const char *dbgname); > void msm_writel(u32 data, void __iomem *addr); > u32 msm_readl(const void __iomem *addr); > > -- > 2.26.2 > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel