All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@gmail.com, daniel@ffwll.ch,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	javierm@redhat.com
Cc: linux-samsung-soc@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	amd-gfx@lists.freedesktop.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	linux-tegra@vger.kernel.org, freedreno@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 04/10] drm/fbdev-generic: Initialize fb-helper structure in generic setup
Date: Tue, 24 Jan 2023 14:40:04 +0100	[thread overview]
Message-ID: <20230124134010.30263-5-tzimmermann@suse.de> (raw)
In-Reply-To: <20230124134010.30263-1-tzimmermann@suse.de>

Initialize the fb-helper structure immediately after its allocation
in drm_fbdev_generic_setup(). That will make it easier to fill it with
driver-specific values, such as the preferred BPP.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/gpu/drm/drm_fbdev_generic.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_fbdev_generic.c b/drivers/gpu/drm/drm_fbdev_generic.c
index 135d58b8007b..63f66325a8a5 100644
--- a/drivers/gpu/drm/drm_fbdev_generic.c
+++ b/drivers/gpu/drm/drm_fbdev_generic.c
@@ -385,8 +385,6 @@ static int drm_fbdev_client_hotplug(struct drm_client_dev *client)
 	if (dev->fb_helper)
 		return drm_fb_helper_hotplug_event(dev->fb_helper);
 
-	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
-
 	ret = drm_fb_helper_init(dev, fb_helper);
 	if (ret)
 		goto err;
@@ -456,12 +454,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 	fb_helper = kzalloc(sizeof(*fb_helper), GFP_KERNEL);
 	if (!fb_helper)
 		return;
+	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
 
 	ret = drm_client_init(dev, &fb_helper->client, "fbdev", &drm_fbdev_client_funcs);
 	if (ret) {
-		kfree(fb_helper);
 		drm_err(dev, "Failed to register client: %d\n", ret);
-		return;
+		goto err_drm_client_init;
 	}
 
 	/*
@@ -484,5 +482,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 		drm_dbg_kms(dev, "client hotplug ret=%d\n", ret);
 
 	drm_client_register(&fb_helper->client);
+
+	return;
+
+err_drm_client_init:
+	drm_fb_helper_unprepare(fb_helper);
+	kfree(fb_helper);
+	return;
 }
 EXPORT_SYMBOL(drm_fbdev_generic_setup);
-- 
2.39.0


WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@gmail.com, daniel@ffwll.ch,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	javierm@redhat.com
Cc: linux-samsung-soc@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	amd-gfx@lists.freedesktop.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	linux-tegra@vger.kernel.org, freedreno@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org
Subject: [Intel-gfx] [PATCH v2 04/10] drm/fbdev-generic: Initialize fb-helper structure in generic setup
Date: Tue, 24 Jan 2023 14:40:04 +0100	[thread overview]
Message-ID: <20230124134010.30263-5-tzimmermann@suse.de> (raw)
In-Reply-To: <20230124134010.30263-1-tzimmermann@suse.de>

Initialize the fb-helper structure immediately after its allocation
in drm_fbdev_generic_setup(). That will make it easier to fill it with
driver-specific values, such as the preferred BPP.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/gpu/drm/drm_fbdev_generic.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_fbdev_generic.c b/drivers/gpu/drm/drm_fbdev_generic.c
index 135d58b8007b..63f66325a8a5 100644
--- a/drivers/gpu/drm/drm_fbdev_generic.c
+++ b/drivers/gpu/drm/drm_fbdev_generic.c
@@ -385,8 +385,6 @@ static int drm_fbdev_client_hotplug(struct drm_client_dev *client)
 	if (dev->fb_helper)
 		return drm_fb_helper_hotplug_event(dev->fb_helper);
 
-	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
-
 	ret = drm_fb_helper_init(dev, fb_helper);
 	if (ret)
 		goto err;
@@ -456,12 +454,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 	fb_helper = kzalloc(sizeof(*fb_helper), GFP_KERNEL);
 	if (!fb_helper)
 		return;
+	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
 
 	ret = drm_client_init(dev, &fb_helper->client, "fbdev", &drm_fbdev_client_funcs);
 	if (ret) {
-		kfree(fb_helper);
 		drm_err(dev, "Failed to register client: %d\n", ret);
-		return;
+		goto err_drm_client_init;
 	}
 
 	/*
@@ -484,5 +482,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 		drm_dbg_kms(dev, "client hotplug ret=%d\n", ret);
 
 	drm_client_register(&fb_helper->client);
+
+	return;
+
+err_drm_client_init:
+	drm_fb_helper_unprepare(fb_helper);
+	kfree(fb_helper);
+	return;
 }
 EXPORT_SYMBOL(drm_fbdev_generic_setup);
-- 
2.39.0


WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@gmail.com, daniel@ffwll.ch,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	javierm@redhat.com
Cc: dri-devel@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, linux-arm-msm@vger.kernel.org,
	freedreno@lists.freedesktop.org, amd-gfx@lists.freedesktop.org,
	linux-tegra@vger.kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v2 04/10] drm/fbdev-generic: Initialize fb-helper structure in generic setup
Date: Tue, 24 Jan 2023 14:40:04 +0100	[thread overview]
Message-ID: <20230124134010.30263-5-tzimmermann@suse.de> (raw)
In-Reply-To: <20230124134010.30263-1-tzimmermann@suse.de>

Initialize the fb-helper structure immediately after its allocation
in drm_fbdev_generic_setup(). That will make it easier to fill it with
driver-specific values, such as the preferred BPP.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/gpu/drm/drm_fbdev_generic.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_fbdev_generic.c b/drivers/gpu/drm/drm_fbdev_generic.c
index 135d58b8007b..63f66325a8a5 100644
--- a/drivers/gpu/drm/drm_fbdev_generic.c
+++ b/drivers/gpu/drm/drm_fbdev_generic.c
@@ -385,8 +385,6 @@ static int drm_fbdev_client_hotplug(struct drm_client_dev *client)
 	if (dev->fb_helper)
 		return drm_fb_helper_hotplug_event(dev->fb_helper);
 
-	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
-
 	ret = drm_fb_helper_init(dev, fb_helper);
 	if (ret)
 		goto err;
@@ -456,12 +454,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 	fb_helper = kzalloc(sizeof(*fb_helper), GFP_KERNEL);
 	if (!fb_helper)
 		return;
+	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
 
 	ret = drm_client_init(dev, &fb_helper->client, "fbdev", &drm_fbdev_client_funcs);
 	if (ret) {
-		kfree(fb_helper);
 		drm_err(dev, "Failed to register client: %d\n", ret);
-		return;
+		goto err_drm_client_init;
 	}
 
 	/*
@@ -484,5 +482,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 		drm_dbg_kms(dev, "client hotplug ret=%d\n", ret);
 
 	drm_client_register(&fb_helper->client);
+
+	return;
+
+err_drm_client_init:
+	drm_fb_helper_unprepare(fb_helper);
+	kfree(fb_helper);
+	return;
 }
 EXPORT_SYMBOL(drm_fbdev_generic_setup);
-- 
2.39.0


WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@gmail.com, daniel@ffwll.ch,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	javierm@redhat.com
Cc: dri-devel@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, linux-arm-msm@vger.kernel.org,
	freedreno@lists.freedesktop.org, amd-gfx@lists.freedesktop.org,
	linux-tegra@vger.kernel.org,
	Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v2 04/10] drm/fbdev-generic: Initialize fb-helper structure in generic setup
Date: Tue, 24 Jan 2023 14:40:04 +0100	[thread overview]
Message-ID: <20230124134010.30263-5-tzimmermann@suse.de> (raw)
In-Reply-To: <20230124134010.30263-1-tzimmermann@suse.de>

Initialize the fb-helper structure immediately after its allocation
in drm_fbdev_generic_setup(). That will make it easier to fill it with
driver-specific values, such as the preferred BPP.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/gpu/drm/drm_fbdev_generic.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_fbdev_generic.c b/drivers/gpu/drm/drm_fbdev_generic.c
index 135d58b8007b..63f66325a8a5 100644
--- a/drivers/gpu/drm/drm_fbdev_generic.c
+++ b/drivers/gpu/drm/drm_fbdev_generic.c
@@ -385,8 +385,6 @@ static int drm_fbdev_client_hotplug(struct drm_client_dev *client)
 	if (dev->fb_helper)
 		return drm_fb_helper_hotplug_event(dev->fb_helper);
 
-	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
-
 	ret = drm_fb_helper_init(dev, fb_helper);
 	if (ret)
 		goto err;
@@ -456,12 +454,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 	fb_helper = kzalloc(sizeof(*fb_helper), GFP_KERNEL);
 	if (!fb_helper)
 		return;
+	drm_fb_helper_prepare(dev, fb_helper, &drm_fb_helper_generic_funcs);
 
 	ret = drm_client_init(dev, &fb_helper->client, "fbdev", &drm_fbdev_client_funcs);
 	if (ret) {
-		kfree(fb_helper);
 		drm_err(dev, "Failed to register client: %d\n", ret);
-		return;
+		goto err_drm_client_init;
 	}
 
 	/*
@@ -484,5 +482,12 @@ void drm_fbdev_generic_setup(struct drm_device *dev,
 		drm_dbg_kms(dev, "client hotplug ret=%d\n", ret);
 
 	drm_client_register(&fb_helper->client);
+
+	return;
+
+err_drm_client_init:
+	drm_fb_helper_unprepare(fb_helper);
+	kfree(fb_helper);
+	return;
 }
 EXPORT_SYMBOL(drm_fbdev_generic_setup);
-- 
2.39.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2023-01-24 13:40 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-24 13:40 [PATCH v2 00/10] drm/fb-helper: Various cleanups Thomas Zimmermann
2023-01-24 13:40 ` Thomas Zimmermann
2023-01-24 13:40 ` Thomas Zimmermann
2023-01-24 13:40 ` [Intel-gfx] " Thomas Zimmermann
2023-01-24 13:40 ` [PATCH v2 01/10] drm/client: Test for connectors before sending hotplug event Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  8:30   ` Javier Martinez Canillas
2023-01-25  8:30     ` Javier Martinez Canillas
2023-01-25  8:30     ` Javier Martinez Canillas
2023-01-25  8:30     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-25 14:04     ` Thomas Zimmermann
2023-01-25 14:04       ` Thomas Zimmermann
2023-01-25 14:04       ` Thomas Zimmermann
2023-01-25 14:04       ` [Intel-gfx] " Thomas Zimmermann
2023-01-24 13:40 ` [PATCH v2 02/10] drm/client: Add hotplug_failed flag Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:05   ` Javier Martinez Canillas
2023-01-25  9:05     ` Javier Martinez Canillas
2023-01-25  9:05     ` Javier Martinez Canillas
2023-01-25  9:05     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 03/10] drm/fb-helper: Introduce drm_fb_helper_unprepare() Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:18   ` Javier Martinez Canillas
2023-01-25  9:18     ` Javier Martinez Canillas
2023-01-25  9:18     ` Javier Martinez Canillas
2023-01-25  9:18     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-25 14:11     ` Thomas Zimmermann
2023-01-25 14:11       ` Thomas Zimmermann
2023-01-25 14:11       ` Thomas Zimmermann
2023-01-25 14:11       ` [Intel-gfx] " Thomas Zimmermann
2023-01-24 13:40 ` Thomas Zimmermann [this message]
2023-01-24 13:40   ` [PATCH v2 04/10] drm/fbdev-generic: Initialize fb-helper structure in generic setup Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:25   ` Javier Martinez Canillas
2023-01-25  9:25     ` Javier Martinez Canillas
2023-01-25  9:25     ` Javier Martinez Canillas
2023-01-25  9:25     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 05/10] drm/fb-helper: Remove preferred_bpp parameter from fbdev internals Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:31   ` Javier Martinez Canillas
2023-01-25  9:31     ` Javier Martinez Canillas
2023-01-25  9:31     ` Javier Martinez Canillas
2023-01-25  9:31     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 06/10] drm/fb-helper: Initialize fb-helper's preferred BPP in prepare function Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  4:51   ` kernel test robot
2023-01-25  4:51     ` kernel test robot
2023-01-25  4:51     ` kernel test robot
2023-01-25  9:41   ` Javier Martinez Canillas
2023-01-25  9:41     ` Javier Martinez Canillas
2023-01-25  9:41     ` Javier Martinez Canillas
2023-01-25  9:41     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-25 12:12   ` kernel test robot
2023-01-25 12:12     ` kernel test robot
2023-01-25 12:12     ` kernel test robot
2023-01-24 13:40 ` [PATCH v2 07/10] drm/fbdev-generic: Minimize hotplug error handling Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:44   ` Javier Martinez Canillas
2023-01-25  9:44     ` Javier Martinez Canillas
2023-01-25  9:44     ` Javier Martinez Canillas
2023-01-25  9:44     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 08/10] drm/fbdev-generic: Minimize client unregistering Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:50   ` Javier Martinez Canillas
2023-01-25  9:50     ` Javier Martinez Canillas
2023-01-25  9:50     ` Javier Martinez Canillas
2023-01-25  9:50     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 09/10] drm/fbdev-generic: Inline clean-up helpers into drm_fbdev_fb_destroy() Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:52   ` Javier Martinez Canillas
2023-01-25  9:52     ` Javier Martinez Canillas
2023-01-25  9:52     ` Javier Martinez Canillas
2023-01-25  9:52     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 13:40 ` [PATCH v2 10/10] drm/fbdev-generic: Rename struct fb_info 'fbi' to 'info' Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` Thomas Zimmermann
2023-01-24 13:40   ` [Intel-gfx] " Thomas Zimmermann
2023-01-25  9:54   ` Javier Martinez Canillas
2023-01-25  9:54     ` Javier Martinez Canillas
2023-01-25  9:54     ` Javier Martinez Canillas
2023-01-25  9:54     ` [Intel-gfx] " Javier Martinez Canillas
2023-01-24 19:42 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/fb-helper: Various cleanups (rev2) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230124134010.30263-5-tzimmermann@suse.de \
    --to=tzimmermann@suse.de \
    --cc=airlied@gmail.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=javierm@redhat.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.