drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
Use aperture helpers to remove all generic graphics drivers before
loading mxsfb. Makes mxsfb compatible with simpledrm.
Co-developed-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---
drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
index cb5ce4e81fc7..a8d6dffcd02c 100644
--- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c
+++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
@@ -17,6 +17,7 @@
#include <linux/property.h>
#include <linux/pm_runtime.h>
+#include <drm/drm_aperture.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_bridge.h>
#include <drm/drm_connector.h>
@@ -360,6 +361,15 @@ static int mxsfb_probe(struct platform_device *pdev)
if (ret)
goto err_free;
+ /*
+ * Remove early framebuffers (ie. simplefb). The framebuffer can be
+ * located anywhere in RAM
+ */
+ ret = drm_aperture_remove_framebuffers(&mxsfb_driver);
+ if (ret)
+ return dev_err_probe(&pdev->dev, ret,
+ "can't kick out existing framebuffers\n");
+
ret = drm_dev_register(drm, 0);
if (ret)
goto err_unload;
--
2.43.0
Hi Am 24.10.24 um 12:46 schrieb Dario Binacchi: > Use aperture helpers to remove all generic graphics drivers before > loading mxsfb. Makes mxsfb compatible with simpledrm. > > Co-developed-by: Michael Trimarchi <michael@amarulasolutions.com> > Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > > --- > > drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > index cb5ce4e81fc7..a8d6dffcd02c 100644 > --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c > +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > @@ -17,6 +17,7 @@ > #include <linux/property.h> > #include <linux/pm_runtime.h> > > +#include <drm/drm_aperture.h> > #include <drm/drm_atomic_helper.h> > #include <drm/drm_bridge.h> > #include <drm/drm_connector.h> > @@ -360,6 +361,15 @@ static int mxsfb_probe(struct platform_device *pdev) > if (ret) > goto err_free; > > + /* > + * Remove early framebuffers (ie. simplefb). The framebuffer can be > + * located anywhere in RAM > + */ > + ret = drm_aperture_remove_framebuffers(&mxsfb_driver); This function has been removed recently. Call aperture_remove_all_conflicting_devices() instead. You can use msxfb_driver.name for the argument. [1] https://elixir.bootlin.com/linux/v6.11.5/source/include/linux/aperture.h#L57 Best regards Thomas > + if (ret) > + return dev_err_probe(&pdev->dev, ret, > + "can't kick out existing framebuffers\n"); > + > ret = drm_dev_register(drm, 0); > if (ret) > goto err_unload; -- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstrasse 146, 90461 Nuernberg, Germany GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman HRB 36809 (AG Nuernberg)
© 2016 - 2024 Red Hat, Inc.