From: Thomas Zimmermann <tzimmermann@suse.de> To: daniel@ffwll.ch, javierm@redhat.com, sam@ravnborg.org, deller@gmx.de, geert+renesas@glider.be, lee@kernel.org, daniel.thompson@linaro.org, jingoohan1@gmail.com Cc: linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-sh@vger.kernel.org, linux-omap@vger.kernel.org, linux-staging@lists.linux.dev, Thomas Zimmermann <tzimmermann@suse.de> Subject: [PATCH 26/30] fbdev/core: Add fb_device_{create,destroy}() Date: Mon, 5 Jun 2023 16:48:08 +0200 [thread overview] Message-ID: <20230605144812.15241-27-tzimmermann@suse.de> (raw) In-Reply-To: <20230605144812.15241-1-tzimmermann@suse.de> Move the logic to create and destroy fbdev devices into the new helpers fb_device_create() and fb_device_destroy(). There was a call to fb_cleanup_device() in do_unregister_framebuffer() that was too late. The device had already been removed at this point. Move the call into fb_device_destroy(). Declare the helpers in the new internal header file fb_internal.h, as they are only used within the fbdev core module. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- drivers/video/fbdev/core/fb_internal.h | 12 ++++++++ drivers/video/fbdev/core/fbmem.c | 21 +++----------- drivers/video/fbdev/core/fbsysfs.c | 38 ++++++++++++++++++++++++-- include/linux/fb.h | 3 -- 4 files changed, 52 insertions(+), 22 deletions(-) create mode 100644 drivers/video/fbdev/core/fb_internal.h diff --git a/drivers/video/fbdev/core/fb_internal.h b/drivers/video/fbdev/core/fb_internal.h new file mode 100644 index 000000000000..0b9640ae7a3d --- /dev/null +++ b/drivers/video/fbdev/core/fb_internal.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef _FB_INTERNAL_H +#define _FB_INTERNAL_H + +struct fb_info; + +/* fbsysfs.c */ +int fb_device_create(struct fb_info *fb_info); +void fb_device_destroy(struct fb_info *fb_info); + +#endif diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c index f91ae7d4c94d..66532774d351 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -40,6 +40,8 @@ #include <video/nomodeset.h> #include <video/vga.h> +#include "fb_internal.h" + /* * Frame buffer device initialization and setup routines */ @@ -1447,14 +1449,7 @@ static int do_register_framebuffer(struct fb_info *fb_info) mutex_init(&fb_info->lock); mutex_init(&fb_info->mm_lock); - fb_info->dev = device_create(fb_class, fb_info->device, - MKDEV(FB_MAJOR, i), NULL, "fb%d", i); - if (IS_ERR(fb_info->dev)) { - /* Not fatal */ - printk(KERN_WARNING "Unable to create device for framebuffer %d; errno = %ld\n", i, PTR_ERR(fb_info->dev)); - fb_info->dev = NULL; - } else - fb_init_device(fb_info); + fb_device_create(fb_info); if (fb_info->pixmap.addr == NULL) { fb_info->pixmap.addr = kmalloc(FBPIXMAPSIZE, GFP_KERNEL); @@ -1515,16 +1510,9 @@ static void unlink_framebuffer(struct fb_info *fb_info) if (WARN_ON(i < 0 || i >= FB_MAX || registered_fb[i] != fb_info)) return; - if (!fb_info->dev) - return; - - device_destroy(fb_class, MKDEV(FB_MAJOR, i)); - + fb_device_destroy(fb_info); pm_vt_switch_unregister(fb_info->device); - unbind_console(fb_info); - - fb_info->dev = NULL; } static void do_unregister_framebuffer(struct fb_info *fb_info) @@ -1539,7 +1527,6 @@ static void do_unregister_framebuffer(struct fb_info *fb_info) fb_destroy_modelist(&fb_info->modelist); registered_fb[fb_info->node] = NULL; num_registered_fb--; - fb_cleanup_device(fb_info); #ifdef CONFIG_GUMSTIX_AM200EPD { struct fb_event event; diff --git a/drivers/video/fbdev/core/fbsysfs.c b/drivers/video/fbdev/core/fbsysfs.c index 849073f1ca06..fafe574398b0 100644 --- a/drivers/video/fbdev/core/fbsysfs.c +++ b/drivers/video/fbdev/core/fbsysfs.c @@ -8,6 +8,9 @@ #include <linux/console.h> #include <linux/fb.h> #include <linux/fbcon.h> +#include <linux/major.h> + +#include "fb_internal.h" #define FB_SYSFS_FLAG_ATTR 1 @@ -435,7 +438,7 @@ static struct device_attribute device_attrs[] = { #endif }; -int fb_init_device(struct fb_info *fb_info) +static int fb_init_device(struct fb_info *fb_info) { int i, error = 0; @@ -459,7 +462,7 @@ int fb_init_device(struct fb_info *fb_info) return 0; } -void fb_cleanup_device(struct fb_info *fb_info) +static void fb_cleanup_device(struct fb_info *fb_info) { unsigned int i; @@ -470,3 +473,34 @@ void fb_cleanup_device(struct fb_info *fb_info) fb_info->class_flag &= ~FB_SYSFS_FLAG_ATTR; } } + +int fb_device_create(struct fb_info *fb_info) +{ + int node = fb_info->node; + dev_t devt = MKDEV(FB_MAJOR, node); + int ret; + + fb_info->dev = device_create(fb_class, fb_info->device, devt, NULL, "fb%d", node); + if (IS_ERR(fb_info->dev)) { + /* Not fatal */ + ret = PTR_ERR(fb_info->dev); + pr_warn("Unable to create device for framebuffer %d; error %d\n", node, ret); + fb_info->dev = NULL; + } else { + fb_init_device(fb_info); + } + + return 0; +} + +void fb_device_destroy(struct fb_info *fb_info) +{ + dev_t devt = MKDEV(FB_MAJOR, fb_info->node); + + if (!fb_info->dev) + return; + + fb_cleanup_device(fb_info); + device_destroy(fb_class, devt); + fb_info->dev = NULL; +} diff --git a/include/linux/fb.h b/include/linux/fb.h index ce6823e157e6..1988d11f78bc 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h @@ -735,11 +735,8 @@ static inline bool fb_be_math(struct fb_info *info) #endif /* CONFIG_FB_FOREIGN_ENDIAN */ } -/* drivers/video/fbsysfs.c */ extern struct fb_info *framebuffer_alloc(size_t size, struct device *dev); extern void framebuffer_release(struct fb_info *info); -extern int fb_init_device(struct fb_info *fb_info); -extern void fb_cleanup_device(struct fb_info *head); extern void fb_bl_default_curve(struct fb_info *fb_info, u8 off, u8 min, u8 max); /* drivers/video/fbmon.c */ -- 2.40.1
WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de> To: daniel@ffwll.ch, javierm@redhat.com, sam@ravnborg.org, deller@gmx.de, geert+renesas@glider.be, lee@kernel.org, daniel.thompson@linaro.org, jingoohan1@gmail.com Cc: linux-fbdev@vger.kernel.org, linux-sh@vger.kernel.org, linux-staging@lists.linux.dev, dri-devel@lists.freedesktop.org, Thomas Zimmermann <tzimmermann@suse.de>, linux-omap@vger.kernel.org Subject: [PATCH 26/30] fbdev/core: Add fb_device_{create,destroy}() Date: Mon, 5 Jun 2023 16:48:08 +0200 [thread overview] Message-ID: <20230605144812.15241-27-tzimmermann@suse.de> (raw) In-Reply-To: <20230605144812.15241-1-tzimmermann@suse.de> Move the logic to create and destroy fbdev devices into the new helpers fb_device_create() and fb_device_destroy(). There was a call to fb_cleanup_device() in do_unregister_framebuffer() that was too late. The device had already been removed at this point. Move the call into fb_device_destroy(). Declare the helpers in the new internal header file fb_internal.h, as they are only used within the fbdev core module. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- drivers/video/fbdev/core/fb_internal.h | 12 ++++++++ drivers/video/fbdev/core/fbmem.c | 21 +++----------- drivers/video/fbdev/core/fbsysfs.c | 38 ++++++++++++++++++++++++-- include/linux/fb.h | 3 -- 4 files changed, 52 insertions(+), 22 deletions(-) create mode 100644 drivers/video/fbdev/core/fb_internal.h diff --git a/drivers/video/fbdev/core/fb_internal.h b/drivers/video/fbdev/core/fb_internal.h new file mode 100644 index 000000000000..0b9640ae7a3d --- /dev/null +++ b/drivers/video/fbdev/core/fb_internal.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef _FB_INTERNAL_H +#define _FB_INTERNAL_H + +struct fb_info; + +/* fbsysfs.c */ +int fb_device_create(struct fb_info *fb_info); +void fb_device_destroy(struct fb_info *fb_info); + +#endif diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c index f91ae7d4c94d..66532774d351 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -40,6 +40,8 @@ #include <video/nomodeset.h> #include <video/vga.h> +#include "fb_internal.h" + /* * Frame buffer device initialization and setup routines */ @@ -1447,14 +1449,7 @@ static int do_register_framebuffer(struct fb_info *fb_info) mutex_init(&fb_info->lock); mutex_init(&fb_info->mm_lock); - fb_info->dev = device_create(fb_class, fb_info->device, - MKDEV(FB_MAJOR, i), NULL, "fb%d", i); - if (IS_ERR(fb_info->dev)) { - /* Not fatal */ - printk(KERN_WARNING "Unable to create device for framebuffer %d; errno = %ld\n", i, PTR_ERR(fb_info->dev)); - fb_info->dev = NULL; - } else - fb_init_device(fb_info); + fb_device_create(fb_info); if (fb_info->pixmap.addr == NULL) { fb_info->pixmap.addr = kmalloc(FBPIXMAPSIZE, GFP_KERNEL); @@ -1515,16 +1510,9 @@ static void unlink_framebuffer(struct fb_info *fb_info) if (WARN_ON(i < 0 || i >= FB_MAX || registered_fb[i] != fb_info)) return; - if (!fb_info->dev) - return; - - device_destroy(fb_class, MKDEV(FB_MAJOR, i)); - + fb_device_destroy(fb_info); pm_vt_switch_unregister(fb_info->device); - unbind_console(fb_info); - - fb_info->dev = NULL; } static void do_unregister_framebuffer(struct fb_info *fb_info) @@ -1539,7 +1527,6 @@ static void do_unregister_framebuffer(struct fb_info *fb_info) fb_destroy_modelist(&fb_info->modelist); registered_fb[fb_info->node] = NULL; num_registered_fb--; - fb_cleanup_device(fb_info); #ifdef CONFIG_GUMSTIX_AM200EPD { struct fb_event event; diff --git a/drivers/video/fbdev/core/fbsysfs.c b/drivers/video/fbdev/core/fbsysfs.c index 849073f1ca06..fafe574398b0 100644 --- a/drivers/video/fbdev/core/fbsysfs.c +++ b/drivers/video/fbdev/core/fbsysfs.c @@ -8,6 +8,9 @@ #include <linux/console.h> #include <linux/fb.h> #include <linux/fbcon.h> +#include <linux/major.h> + +#include "fb_internal.h" #define FB_SYSFS_FLAG_ATTR 1 @@ -435,7 +438,7 @@ static struct device_attribute device_attrs[] = { #endif }; -int fb_init_device(struct fb_info *fb_info) +static int fb_init_device(struct fb_info *fb_info) { int i, error = 0; @@ -459,7 +462,7 @@ int fb_init_device(struct fb_info *fb_info) return 0; } -void fb_cleanup_device(struct fb_info *fb_info) +static void fb_cleanup_device(struct fb_info *fb_info) { unsigned int i; @@ -470,3 +473,34 @@ void fb_cleanup_device(struct fb_info *fb_info) fb_info->class_flag &= ~FB_SYSFS_FLAG_ATTR; } } + +int fb_device_create(struct fb_info *fb_info) +{ + int node = fb_info->node; + dev_t devt = MKDEV(FB_MAJOR, node); + int ret; + + fb_info->dev = device_create(fb_class, fb_info->device, devt, NULL, "fb%d", node); + if (IS_ERR(fb_info->dev)) { + /* Not fatal */ + ret = PTR_ERR(fb_info->dev); + pr_warn("Unable to create device for framebuffer %d; error %d\n", node, ret); + fb_info->dev = NULL; + } else { + fb_init_device(fb_info); + } + + return 0; +} + +void fb_device_destroy(struct fb_info *fb_info) +{ + dev_t devt = MKDEV(FB_MAJOR, fb_info->node); + + if (!fb_info->dev) + return; + + fb_cleanup_device(fb_info); + device_destroy(fb_class, devt); + fb_info->dev = NULL; +} diff --git a/include/linux/fb.h b/include/linux/fb.h index ce6823e157e6..1988d11f78bc 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h @@ -735,11 +735,8 @@ static inline bool fb_be_math(struct fb_info *info) #endif /* CONFIG_FB_FOREIGN_ENDIAN */ } -/* drivers/video/fbsysfs.c */ extern struct fb_info *framebuffer_alloc(size_t size, struct device *dev); extern void framebuffer_release(struct fb_info *info); -extern int fb_init_device(struct fb_info *fb_info); -extern void fb_cleanup_device(struct fb_info *head); extern void fb_bl_default_curve(struct fb_info *fb_info, u8 off, u8 min, u8 max); /* drivers/video/fbmon.c */ -- 2.40.1
next prev parent reply other threads:[~2023-06-05 14:48 UTC|newest] Thread overview: 190+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-06-05 14:47 [PATCH 00/30] fbdev: Make userspace interfaces optional Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-05 14:47 ` [PATCH 01/30] backlight/bd6107: Compare against struct fb_info.device Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:30 ` Javier Martinez Canillas 2023-06-07 7:30 ` Javier Martinez Canillas 2023-06-07 7:34 ` Javier Martinez Canillas 2023-06-07 7:34 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 02/30] backlight/gpio_backlight: " Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-05 20:19 ` Ruhl, Michael J 2023-06-05 20:23 ` Sam Ravnborg 2023-06-05 20:23 ` Sam Ravnborg 2023-06-05 20:41 ` Ruhl, Michael J 2023-06-05 20:41 ` Ruhl, Michael J 2023-06-06 7:24 ` Thomas Zimmermann 2023-06-06 7:49 ` Dan Carpenter 2023-06-06 7:49 ` Dan Carpenter 2023-06-06 8:05 ` Thomas Zimmermann 2023-06-06 8:05 ` Thomas Zimmermann 2023-06-05 14:47 ` [PATCH 03/30] backlight/lv5207lp: " Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:35 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 04/30] fbdev/atyfb: Reorder backlight and framebuffer init/cleanup Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:36 ` Javier Martinez Canillas 2023-06-07 7:36 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 05/30] fbdev/atyfb: Use hardware device as backlight parent Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:41 ` Javier Martinez Canillas 2023-06-07 7:41 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 06/30] fbdev/aty128fb: Reorder backlight and framebuffer init/cleanup Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:42 ` Javier Martinez Canillas 2023-06-07 7:42 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 07/30] fbdev/aty128fb: Use hardware device as backlight parent Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:55 ` Javier Martinez Canillas 2023-06-07 7:55 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 08/30] fbdev/broadsheetfb: Call device_remove_file() with hardware device Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 7:55 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 09/30] fbdev/ep93xx-fb: Alloc DMA memory from " Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 8:47 ` Javier Martinez Canillas 2023-06-07 8:47 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 10/30] fbdev/ep93xx-fb: Output messages with fb_info() and fb_err() Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 8:59 ` Javier Martinez Canillas 2023-06-07 8:59 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 11/30] fbdev/ep93xx-fb: Do not assign to struct fb_info.dev Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-06 5:26 ` Dan Carpenter 2023-06-06 5:26 ` Dan Carpenter 2023-06-07 9:00 ` Javier Martinez Canillas 2023-06-07 9:00 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 12/30] fbdev/mb862xxfb: Output messages with fb_dbg() and fb_err() Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:00 ` Javier Martinez Canillas 2023-06-07 9:00 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 13/30] fbdev/metronomefb: Use hardware device for dev_err() Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:01 ` Javier Martinez Canillas 2023-06-07 9:01 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 14/30] fbdev/nvidiafb: Reorder backlight and framebuffer init/cleanup Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:02 ` Javier Martinez Canillas 2023-06-07 9:02 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 15/30] fbdev/nvidiafb: Use hardware device as backlight parent Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:02 ` Javier Martinez Canillas 2023-06-07 9:02 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 16/30] fbdev/pxa168fb: Do not assign to struct fb_info.dev Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:09 ` Javier Martinez Canillas 2023-06-07 9:09 ` Javier Martinez Canillas 2023-06-05 14:47 ` [PATCH 17/30] fbdev/radeonfb: Reorder backlight and framebuffer cleanup Thomas Zimmermann 2023-06-05 14:47 ` Thomas Zimmermann 2023-06-07 9:09 ` Javier Martinez Canillas 2023-06-07 9:09 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 18/30] fbdev/radeonfb: Use hardware device as backlight parent Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-06 5:28 ` Dan Carpenter 2023-06-06 5:28 ` Dan Carpenter 2023-06-06 7:30 ` Thomas Zimmermann 2023-06-06 7:30 ` Thomas Zimmermann 2023-06-07 9:10 ` Javier Martinez Canillas 2023-06-07 9:10 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 19/30] fbdev/rivafb: Reorder backlight and framebuffer init/cleanup Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 9:11 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 20/30] fbdev/rivafb: Use hardware device as backlight parent Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 9:11 ` Javier Martinez Canillas 2023-06-07 9:11 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 21/30] fbdev/sm501fb: Output message with fb_err() Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 9:12 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 22/30] fbdev/smscufx: Detect registered fb_info from refcount Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 22:22 ` Javier Martinez Canillas 2023-06-07 22:22 ` Javier Martinez Canillas 2023-06-12 10:19 ` Thomas Zimmermann 2023-06-12 10:40 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 23/30] fbdev/tdfxfb: Set i2c adapter parent to hardware device Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 22:23 ` Javier Martinez Canillas 2023-06-07 22:23 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 24/30] fbdev/core: Pass Linux device to pm_vt_switch_*() functions Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 19:25 ` Sam Ravnborg 2023-06-07 19:25 ` Sam Ravnborg 2023-06-05 14:48 ` [PATCH 25/30] fbdev/core: Move framebuffer and backlight helpers into separate files Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 19:38 ` Sam Ravnborg 2023-06-07 19:38 ` Sam Ravnborg 2023-06-09 7:19 ` Thomas Zimmermann 2023-06-09 7:19 ` Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann [this message] 2023-06-05 14:48 ` [PATCH 26/30] fbdev/core: Add fb_device_{create,destroy}() Thomas Zimmermann 2023-06-07 19:45 ` Sam Ravnborg 2023-06-07 19:45 ` Sam Ravnborg 2023-06-05 14:48 ` [PATCH 27/30] fbdev/core: Move procfs code to separate file Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 20:33 ` Sam Ravnborg 2023-06-07 20:33 ` Sam Ravnborg 2023-06-05 14:48 ` [PATCH 28/30] fbdev/core: Move file-I/O code into " Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-05 21:35 ` kernel test robot 2023-06-05 21:35 ` kernel test robot 2023-06-07 20:48 ` Sam Ravnborg 2023-06-07 20:48 ` Sam Ravnborg 2023-06-12 10:35 ` Thomas Zimmermann 2023-06-12 10:35 ` Thomas Zimmermann 2023-06-07 22:28 ` Javier Martinez Canillas 2023-06-07 22:28 ` Javier Martinez Canillas 2023-06-05 14:48 ` [PATCH 29/30] fbdev/core: Rework fb init code Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-07 20:51 ` Sam Ravnborg 2023-06-07 20:51 ` Sam Ravnborg 2023-06-05 14:48 ` [PATCH 30/30] fbdev: Make support for userspace interfaces configurable Thomas Zimmermann 2023-06-05 14:48 ` Thomas Zimmermann 2023-06-05 15:03 ` Greg KH 2023-06-05 15:03 ` Greg KH 2023-06-05 21:45 ` kernel test robot 2023-06-05 21:45 ` kernel test robot 2023-06-07 8:48 ` Geert Uytterhoeven 2023-06-07 8:48 ` Geert Uytterhoeven 2023-06-07 15:15 ` Thomas Zimmermann 2023-06-07 15:15 ` Thomas Zimmermann 2023-06-07 15:24 ` Geert Uytterhoeven 2023-06-07 15:24 ` Geert Uytterhoeven 2023-06-07 23:07 ` Javier Martinez Canillas 2023-06-07 23:07 ` Javier Martinez Canillas 2023-06-09 7:09 ` Thomas Zimmermann 2023-06-09 7:09 ` Thomas Zimmermann 2023-06-09 7:29 ` Geert Uytterhoeven 2023-06-09 7:29 ` Geert Uytterhoeven 2023-06-09 8:00 ` Thomas Zimmermann 2023-06-09 8:00 ` Thomas Zimmermann 2023-06-09 9:14 ` Geert Uytterhoeven 2023-06-09 9:14 ` Geert Uytterhoeven 2023-06-09 11:04 ` Thomas Zimmermann 2023-06-09 11:04 ` Thomas Zimmermann 2023-06-09 11:22 ` Geert Uytterhoeven 2023-06-09 11:22 ` Geert Uytterhoeven 2023-06-09 9:59 ` Javier Martinez Canillas 2023-06-09 9:59 ` Javier Martinez Canillas 2023-06-09 10:10 ` Geert Uytterhoeven 2023-06-09 10:10 ` Geert Uytterhoeven 2023-06-09 10:24 ` Javier Martinez Canillas 2023-06-09 10:24 ` Javier Martinez Canillas 2023-06-09 11:27 ` Javier Martinez Canillas 2023-06-09 11:27 ` Javier Martinez Canillas 2023-06-11 16:37 ` Sam Ravnborg 2023-06-11 16:37 ` Sam Ravnborg 2023-06-12 6:47 ` Thomas Zimmermann 2023-06-12 6:47 ` Thomas Zimmermann 2023-06-12 7:00 ` Thomas Zimmermann 2023-06-12 7:00 ` Thomas Zimmermann 2023-06-07 8:35 ` [PATCH 00/30] fbdev: Make userspace interfaces optional Geert Uytterhoeven 2023-06-07 8:35 ` Geert Uytterhoeven 2023-06-12 10:46 ` Thomas Zimmermann 2023-06-12 10:46 ` Thomas Zimmermann 2023-06-07 12:06 ` Markus Elfring 2023-06-07 12:06 ` Markus Elfring 2023-06-07 12:21 ` Thomas Zimmermann 2023-06-07 12:21 ` Thomas Zimmermann 2023-06-07 14:08 ` Markus Elfring 2023-06-07 14:08 ` Markus Elfring
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=20230605144812.15241-27-tzimmermann@suse.de \ --to=tzimmermann@suse.de \ --cc=daniel.thompson@linaro.org \ --cc=daniel@ffwll.ch \ --cc=deller@gmx.de \ --cc=dri-devel@lists.freedesktop.org \ --cc=geert+renesas@glider.be \ --cc=javierm@redhat.com \ --cc=jingoohan1@gmail.com \ --cc=lee@kernel.org \ --cc=linux-fbdev@vger.kernel.org \ --cc=linux-omap@vger.kernel.org \ --cc=linux-sh@vger.kernel.org \ --cc=linux-staging@lists.linux.dev \ --cc=sam@ravnborg.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: linkBe 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.