Messages in this thread | | | Date | Wed, 11 Jan 2023 16:49:49 +0100 | Subject | Re: [PATCH 03/11] drm/aperture: Remove primary argument | From | Thomas Zimmermann <> |
| |
Hi
Am 11.01.23 um 16:41 schrieb Daniel Vetter: > Only really pci devices have a business setting this - it's for > figuring out whether the legacy vga stuff should be nuked too. And > with the preceeding two patches those are all using the pci version of > this. > > Which means for all other callers primary == false and we can remove > it now.
AFAICS this patch needs to be merged with patch 4 to build.
> > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > Cc: Thomas Zimmermann <tzimmermann@suse.de> > Cc: Javier Martinez Canillas <javierm@redhat.com> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Maxime Ripard <mripard@kernel.org> > Cc: Deepak Rawat <drawat.floss@gmail.com> > Cc: Neil Armstrong <neil.armstrong@linaro.org> > Cc: Kevin Hilman <khilman@baylibre.com> > Cc: Jerome Brunet <jbrunet@baylibre.com> > Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Jonathan Hunter <jonathanh@nvidia.com> > Cc: Emma Anholt <emma@anholt.net> > Cc: Helge Deller <deller@gmx.de> > Cc: David Airlie <airlied@gmail.com> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: linux-hyperv@vger.kernel.org > Cc: linux-amlogic@lists.infradead.org > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-tegra@vger.kernel.org > Cc: linux-fbdev@vger.kernel.org > --- > drivers/gpu/drm/arm/hdlcd_drv.c | 2 +- > drivers/gpu/drm/armada/armada_drv.c | 2 +- > drivers/gpu/drm/drm_aperture.c | 11 +++-------- > drivers/gpu/drm/hyperv/hyperv_drm_drv.c | 1 - > drivers/gpu/drm/meson/meson_drv.c | 2 +- > drivers/gpu/drm/msm/msm_fbdev.c | 2 +- > drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +- > drivers/gpu/drm/stm/drv.c | 2 +- > drivers/gpu/drm/sun4i/sun4i_drv.c | 2 +- > drivers/gpu/drm/tegra/drm.c | 2 +- > drivers/gpu/drm/vc4/vc4_drv.c | 2 +- > include/drm/drm_aperture.h | 7 +++---- > 12 files changed, 15 insertions(+), 22 deletions(-) > > diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c > index 7043d1c9ed8f..98267e355918 100644 > --- a/drivers/gpu/drm/arm/hdlcd_drv.c > +++ b/drivers/gpu/drm/arm/hdlcd_drv.c > @@ -297,7 +297,7 @@ static int hdlcd_drm_bind(struct device *dev) > */ > if (hdlcd_read(hdlcd, HDLCD_REG_COMMAND)) { > hdlcd_write(hdlcd, HDLCD_REG_COMMAND, 0); > - drm_aperture_remove_framebuffers(false, &hdlcd_driver); > + drm_aperture_remove_framebuffers(&hdlcd_driver); > } > > drm_mode_config_reset(drm); > diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c > index 0643887800b4..c99ec7078301 100644 > --- a/drivers/gpu/drm/armada/armada_drv.c > +++ b/drivers/gpu/drm/armada/armada_drv.c > @@ -95,7 +95,7 @@ static int armada_drm_bind(struct device *dev) > } > > /* Remove early framebuffers */ > - ret = drm_aperture_remove_framebuffers(false, &armada_drm_driver); > + ret = drm_aperture_remove_framebuffers(&armada_drm_driver); > if (ret) { > dev_err(dev, "[" DRM_NAME ":%s] can't kick out simple-fb: %d\n", > __func__, ret); > diff --git a/drivers/gpu/drm/drm_aperture.c b/drivers/gpu/drm/drm_aperture.c > index 3b8fdeeafd53..697cffbfd603 100644 > --- a/drivers/gpu/drm/drm_aperture.c > +++ b/drivers/gpu/drm/drm_aperture.c > @@ -32,17 +32,13 @@ > * > * static int remove_conflicting_framebuffers(struct pci_dev *pdev) > * { > - * bool primary = false; > * resource_size_t base, size; > * int ret; > * > * base = pci_resource_start(pdev, 0); > * size = pci_resource_len(pdev, 0); > - * #ifdef CONFIG_X86 > - * primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW; > - * #endif > * > - * return drm_aperture_remove_conflicting_framebuffers(base, size, primary, > + * return drm_aperture_remove_conflicting_framebuffers(base, size, > * &example_driver); > * } > * > @@ -161,7 +157,6 @@ EXPORT_SYMBOL(devm_aperture_acquire_from_firmware); > * drm_aperture_remove_conflicting_framebuffers - remove existing framebuffers in the given range > * @base: the aperture's base address in physical memory > * @size: aperture size in bytes > - * @primary: also kick vga16fb if present > * @req_driver: requesting DRM driver > * > * This function removes graphics device drivers which use the memory range described by > @@ -171,9 +166,9 @@ EXPORT_SYMBOL(devm_aperture_acquire_from_firmware); > * 0 on success, or a negative errno code otherwise > */ > int drm_aperture_remove_conflicting_framebuffers(resource_size_t base, resource_size_t size, > - bool primary, const struct drm_driver *req_driver) > + const struct drm_driver *req_driver) > { > - return aperture_remove_conflicting_devices(base, size, primary, req_driver->name); > + return aperture_remove_conflicting_devices(base, size, false, req_driver->name); > } > EXPORT_SYMBOL(drm_aperture_remove_conflicting_framebuffers); > > diff --git a/drivers/gpu/drm/hyperv/hyperv_drm_drv.c b/drivers/gpu/drm/hyperv/hyperv_drm_drv.c > index 427c20ba3404..7e81d58c083f 100644 > --- a/drivers/gpu/drm/hyperv/hyperv_drm_drv.c > +++ b/drivers/gpu/drm/hyperv/hyperv_drm_drv.c > @@ -74,7 +74,6 @@ static int hyperv_setup_vram(struct hyperv_drm_device *hv, > > drm_aperture_remove_conflicting_framebuffers(screen_info.lfb_base, > screen_info.lfb_size, > - false, > &hyperv_driver); > > hv->fb_size = (unsigned long)hv->mmio_megabytes * 1024 * 1024; > diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c > index 79bfe3938d3c..c8d39809d897 100644 > --- a/drivers/gpu/drm/meson/meson_drv.c > +++ b/drivers/gpu/drm/meson/meson_drv.c > @@ -285,7 +285,7 @@ static int meson_drv_bind_master(struct device *dev, bool has_components) > * Remove early framebuffers (ie. simplefb). The framebuffer can be > * located anywhere in RAM > */ > - ret = drm_aperture_remove_framebuffers(false, &meson_driver); > + ret = drm_aperture_remove_framebuffers(&meson_driver); > if (ret) > goto free_drm; > > diff --git a/drivers/gpu/drm/msm/msm_fbdev.c b/drivers/gpu/drm/msm/msm_fbdev.c > index 31e1e30cb52a..84dfbccb6912 100644 > --- a/drivers/gpu/drm/msm/msm_fbdev.c > +++ b/drivers/gpu/drm/msm/msm_fbdev.c > @@ -155,7 +155,7 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev) > } > > /* the fw fb could be anywhere in memory */ > - ret = drm_aperture_remove_framebuffers(false, dev->driver); > + ret = drm_aperture_remove_framebuffers(dev->driver); > if (ret) > goto fini; > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > index 6e0788d14c10..d97f2edc646b 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > @@ -140,7 +140,7 @@ static int rockchip_drm_bind(struct device *dev) > int ret; > > /* Remove existing drivers that may own the framebuffer memory. */ > - ret = drm_aperture_remove_framebuffers(false, &rockchip_drm_driver); > + ret = drm_aperture_remove_framebuffers(&rockchip_drm_driver); > if (ret) { > DRM_DEV_ERROR(dev, > "Failed to remove existing framebuffers - %d.\n", > diff --git a/drivers/gpu/drm/stm/drv.c b/drivers/gpu/drm/stm/drv.c > index 50410bd99dfe..354349c6e085 100644 > --- a/drivers/gpu/drm/stm/drv.c > +++ b/drivers/gpu/drm/stm/drv.c > @@ -185,7 +185,7 @@ static int stm_drm_platform_probe(struct platform_device *pdev) > > DRM_DEBUG("%s\n", __func__); > > - ret = drm_aperture_remove_framebuffers(false, &drv_driver); > + ret = drm_aperture_remove_framebuffers(&drv_driver); > if (ret) > return ret; > > diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c > index cc94efbbf2d4..6367b89cbab1 100644 > --- a/drivers/gpu/drm/sun4i/sun4i_drv.c > +++ b/drivers/gpu/drm/sun4i/sun4i_drv.c > @@ -98,7 +98,7 @@ static int sun4i_drv_bind(struct device *dev) > goto cleanup_mode_config; > > /* Remove early framebuffers (ie. simplefb) */ > - ret = drm_aperture_remove_framebuffers(false, &sun4i_drv_driver); > + ret = drm_aperture_remove_framebuffers(&sun4i_drv_driver); > if (ret) > goto cleanup_mode_config; > > diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c > index 7bd2e65c2a16..d2ff527cf6d7 100644 > --- a/drivers/gpu/drm/tegra/drm.c > +++ b/drivers/gpu/drm/tegra/drm.c > @@ -1252,7 +1252,7 @@ static int host1x_drm_probe(struct host1x_device *dev) > > drm_mode_config_reset(drm); > > - err = drm_aperture_remove_framebuffers(false, &tegra_drm_driver); > + err = drm_aperture_remove_framebuffers(&tegra_drm_driver); > if (err < 0) > goto hub; > > diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c > index 0ccaee57fe9a..0a9e922636b1 100644 > --- a/drivers/gpu/drm/vc4/vc4_drv.c > +++ b/drivers/gpu/drm/vc4/vc4_drv.c > @@ -350,7 +350,7 @@ static int vc4_drm_bind(struct device *dev) > return -EPROBE_DEFER; > } > > - ret = drm_aperture_remove_framebuffers(false, driver); > + ret = drm_aperture_remove_framebuffers(driver); > if (ret) > return ret; > > diff --git a/include/drm/drm_aperture.h b/include/drm/drm_aperture.h > index 7096703c3949..cbe33b49fd5d 100644 > --- a/include/drm/drm_aperture.h > +++ b/include/drm/drm_aperture.h > @@ -13,14 +13,13 @@ int devm_aperture_acquire_from_firmware(struct drm_device *dev, resource_size_t > resource_size_t size); > > int drm_aperture_remove_conflicting_framebuffers(resource_size_t base, resource_size_t size, > - bool primary, const struct drm_driver *req_driver); > + const struct drm_driver *req_driver); > > int drm_aperture_remove_conflicting_pci_framebuffers(struct pci_dev *pdev, > const struct drm_driver *req_driver); > > /** > * drm_aperture_remove_framebuffers - remove all existing framebuffers > - * @primary: also kick vga16fb if present > * @req_driver: requesting DRM driver > * > * This function removes all graphics device drivers. Use this function on systems > @@ -30,9 +29,9 @@ int drm_aperture_remove_conflicting_pci_framebuffers(struct pci_dev *pdev, > * 0 on success, or a negative errno code otherwise > */ > static inline int > -drm_aperture_remove_framebuffers(bool primary, const struct drm_driver *req_driver) > +drm_aperture_remove_framebuffers(const struct drm_driver *req_driver) > { > - return drm_aperture_remove_conflicting_framebuffers(0, (resource_size_t)-1, primary, > + return drm_aperture_remove_conflicting_framebuffers(0, (resource_size_t)-1, > req_driver); > } >
-- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Ivo Totev [unhandled content-type:application/pgp-signature] | |