* [PATCH 7/7] drm: Complete remove drm_mode_object dependency
@ 2018-12-18 13:38 Shayenne Moura
2018-12-19 13:15 ` Daniel Vetter
0 siblings, 1 reply; 5+ messages in thread
From: Shayenne Moura @ 2018-12-18 13:38 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie
Cc: dri-devel, linux-kernel
This patch finalizes the KMS cleanup task dependency from drm_display_mode
It removes the use of drm_mode_object from drm_display_mode struct
and it removes the use of base.id and base.type.
Signed-off-by: Shayenne Moura <shayenneluzmoura@gmail.com>
---
include/drm/drm_modes.h | 21 +++------------------
1 file changed, 3 insertions(+), 18 deletions(-)
diff --git a/include/drm/drm_modes.h b/include/drm/drm_modes.h
index baded6514456..9ecc1e835565 100644
--- a/include/drm/drm_modes.h
+++ b/include/drm/drm_modes.h
@@ -136,8 +136,7 @@ enum drm_mode_status {
.hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \
.htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \
.vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \
- .vscan = (vs), .flags = (f), \
- .base.type = DRM_MODE_OBJECT_MODE
+ .vscan = (vs), .flags = (f)
#define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */
#define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */
@@ -213,20 +212,6 @@ struct drm_display_mode {
*/
struct list_head head;
- /**
- * @base:
- *
- * A display mode is a normal modeset object, possibly including public
- * userspace id.
- *
- * FIXME:
- *
- * This can probably be removed since the entire concept of userspace
- * managing modes explicitly has never landed in upstream kernel mode
- * setting support.
- */
- struct drm_mode_object base;
-
/**
* @name:
*
@@ -429,14 +414,14 @@ struct drm_display_mode {
/**
* DRM_MODE_FMT - printf string for &struct drm_display_mode
*/
-#define DRM_MODE_FMT "%d:\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
+#define DRM_MODE_FMT "\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
/**
* DRM_MODE_ARG - printf arguments for &struct drm_display_mode
* @m: display mode
*/
#define DRM_MODE_ARG(m) \
- (m)->base.id, (m)->name, (m)->vrefresh, (m)->clock, \
+ (m)->name, (m)->vrefresh, (m)->clock, \
(m)->hdisplay, (m)->hsync_start, (m)->hsync_end, (m)->htotal, \
(m)->vdisplay, (m)->vsync_start, (m)->vsync_end, (m)->vtotal, \
(m)->type, (m)->flags
--
2.17.1
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH 7/7] drm: Complete remove drm_mode_object dependency
2018-12-18 13:38 [PATCH 7/7] drm: Complete remove drm_mode_object dependency Shayenne Moura
@ 2018-12-19 13:15 ` Daniel Vetter
2018-12-19 17:33 ` Shayenne Moura
0 siblings, 1 reply; 5+ messages in thread
From: Daniel Vetter @ 2018-12-19 13:15 UTC (permalink / raw)
To: Shayenne Moura
Cc: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie,
linux-kernel, dri-devel
On Tue, Dec 18, 2018 at 11:38:36AM -0200, Shayenne Moura wrote:
> This patch finalizes the KMS cleanup task dependency from drm_display_mode
> It removes the use of drm_mode_object from drm_display_mode struct
> and it removes the use of base.id and base.type.
>
> Signed-off-by: Shayenne Moura <shayenneluzmoura@gmail.com>
I didn't yet compile-test all the drivers, but aside from that this looks
all good.
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
> include/drm/drm_modes.h | 21 +++------------------
> 1 file changed, 3 insertions(+), 18 deletions(-)
>
> diff --git a/include/drm/drm_modes.h b/include/drm/drm_modes.h
> index baded6514456..9ecc1e835565 100644
> --- a/include/drm/drm_modes.h
> +++ b/include/drm/drm_modes.h
> @@ -136,8 +136,7 @@ enum drm_mode_status {
> .hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \
> .htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \
> .vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \
> - .vscan = (vs), .flags = (f), \
> - .base.type = DRM_MODE_OBJECT_MODE
> + .vscan = (vs), .flags = (f)
>
> #define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */
> #define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */
> @@ -213,20 +212,6 @@ struct drm_display_mode {
> */
> struct list_head head;
>
> - /**
> - * @base:
> - *
> - * A display mode is a normal modeset object, possibly including public
> - * userspace id.
> - *
> - * FIXME:
> - *
> - * This can probably be removed since the entire concept of userspace
> - * managing modes explicitly has never landed in upstream kernel mode
> - * setting support.
> - */
> - struct drm_mode_object base;
> -
> /**
> * @name:
> *
> @@ -429,14 +414,14 @@ struct drm_display_mode {
> /**
> * DRM_MODE_FMT - printf string for &struct drm_display_mode
> */
> -#define DRM_MODE_FMT "%d:\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
> +#define DRM_MODE_FMT "\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
>
> /**
> * DRM_MODE_ARG - printf arguments for &struct drm_display_mode
> * @m: display mode
> */
> #define DRM_MODE_ARG(m) \
> - (m)->base.id, (m)->name, (m)->vrefresh, (m)->clock, \
> + (m)->name, (m)->vrefresh, (m)->clock, \
> (m)->hdisplay, (m)->hsync_start, (m)->hsync_end, (m)->htotal, \
> (m)->vdisplay, (m)->vsync_start, (m)->vsync_end, (m)->vtotal, \
> (m)->type, (m)->flags
> --
> 2.17.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH 7/7] drm: Complete remove drm_mode_object dependency
2018-12-19 13:15 ` Daniel Vetter
@ 2018-12-19 17:33 ` Shayenne Moura
0 siblings, 0 replies; 5+ messages in thread
From: Shayenne Moura @ 2018-12-19 17:33 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie,
linux-kernel, dri-devel
On 12/19, Daniel Vetter wrote:
> On Tue, Dec 18, 2018 at 11:38:36AM -0200, Shayenne Moura wrote:
> > This patch finalizes the KMS cleanup task dependency from drm_display_mode
> > It removes the use of drm_mode_object from drm_display_mode struct
> > and it removes the use of base.id and base.type.
> >
> > Signed-off-by: Shayenne Moura <shayenneluzmoura@gmail.com>
>
> I didn't yet compile-test all the drivers, but aside from that this looks
> all good.
>
Thank you for your reviews! :)
Shayenne
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> > ---
> > include/drm/drm_modes.h | 21 +++------------------
> > 1 file changed, 3 insertions(+), 18 deletions(-)
> >
> > diff --git a/include/drm/drm_modes.h b/include/drm/drm_modes.h
> > index baded6514456..9ecc1e835565 100644
> > --- a/include/drm/drm_modes.h
> > +++ b/include/drm/drm_modes.h
> > @@ -136,8 +136,7 @@ enum drm_mode_status {
> > .hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \
> > .htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \
> > .vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \
> > - .vscan = (vs), .flags = (f), \
> > - .base.type = DRM_MODE_OBJECT_MODE
> > + .vscan = (vs), .flags = (f)
> >
> > #define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */
> > #define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */
> > @@ -213,20 +212,6 @@ struct drm_display_mode {
> > */
> > struct list_head head;
> >
> > - /**
> > - * @base:
> > - *
> > - * A display mode is a normal modeset object, possibly including public
> > - * userspace id.
> > - *
> > - * FIXME:
> > - *
> > - * This can probably be removed since the entire concept of userspace
> > - * managing modes explicitly has never landed in upstream kernel mode
> > - * setting support.
> > - */
> > - struct drm_mode_object base;
> > -
> > /**
> > * @name:
> > *
> > @@ -429,14 +414,14 @@ struct drm_display_mode {
> > /**
> > * DRM_MODE_FMT - printf string for &struct drm_display_mode
> > */
> > -#define DRM_MODE_FMT "%d:\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
> > +#define DRM_MODE_FMT "\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
> >
> > /**
> > * DRM_MODE_ARG - printf arguments for &struct drm_display_mode
> > * @m: display mode
> > */
> > #define DRM_MODE_ARG(m) \
> > - (m)->base.id, (m)->name, (m)->vrefresh, (m)->clock, \
> > + (m)->name, (m)->vrefresh, (m)->clock, \
> > (m)->hdisplay, (m)->hsync_start, (m)->hsync_end, (m)->htotal, \
> > (m)->vdisplay, (m)->vsync_start, (m)->vsync_end, (m)->vtotal, \
> > (m)->type, (m)->flags
> > --
> > 2.17.1
> >
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 0/7] drm: Remove drm_mode_object dependency from drm_display_mode
@ 2018-12-19 21:21 Shayenne Moura
2018-12-19 21:29 ` [PATCH 7/7] drm: Complete remove drm_mode_object dependency Shayenne Moura
0 siblings, 1 reply; 5+ messages in thread
From: Shayenne Moura @ 2018-12-19 21:21 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie
Cc: dri-devel, linux-kernel
This patch serie removes drm_mode_object dependency from
drm_display_mode struct. This is part of KMS cleanup.
The motivation is that a display mode is a normal modeset object,
possibly including public userspace id.
This can be removed since the entire concept of userspace
managing modes explicitly has never landed in upstream kernel mode
setting support.
Shayenne Moura (7):
drm: msm: Cleanup drm_display_mode print string
drm: omapdrm: Cleanup drm_display_mode print str
drm: meson: Cleanup on drm_display_mode print str
drm: sti: Cleanup drm_display_mode print str
drm: i915: Cleanup drm_display_mode print str
drm: Remove use of drm_mode_object
drm: Complete remove drm_mode_object dependency
drivers/gpu/drm/drm_crtc_helper.c | 5 ++---
drivers/gpu/drm/drm_modes.c | 5 -----
drivers/gpu/drm/i915/i915_debugfs.c | 9 +-------
drivers/gpu/drm/meson/meson_dw_hdmi.c | 12 +++--------
drivers/gpu/drm/msm/disp/mdp4/mdp4_crtc.c | 10 ++-------
.../gpu/drm/msm/disp/mdp4/mdp4_dsi_encoder.c | 9 +-------
.../gpu/drm/msm/disp/mdp4/mdp4_dtv_encoder.c | 9 +-------
.../gpu/drm/msm/disp/mdp4/mdp4_lcdc_encoder.c | 9 +-------
.../gpu/drm/msm/disp/mdp5/mdp5_cmd_encoder.c | 9 +-------
drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c | 9 +-------
drivers/gpu/drm/msm/disp/mdp5/mdp5_encoder.c | 9 +-------
drivers/gpu/drm/msm/dsi/dsi_manager.c | 9 +-------
drivers/gpu/drm/msm/edp/edp_bridge.c | 9 +-------
drivers/gpu/drm/omapdrm/omap_connector.c | 9 ++------
drivers/gpu/drm/omapdrm/omap_crtc.c | 8 ++-----
drivers/gpu/drm/sti/sti_crtc.c | 16 ++++----------
include/drm/drm_modes.h | 21 +++----------------
17 files changed, 27 insertions(+), 140 deletions(-)
--
2.17.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 7/7] drm: Complete remove drm_mode_object dependency
2018-12-19 21:21 [PATCH 0/7] drm: Remove drm_mode_object dependency from drm_display_mode Shayenne Moura
@ 2018-12-19 21:29 ` Shayenne Moura
2018-12-22 20:18 ` kbuild test robot
0 siblings, 1 reply; 5+ messages in thread
From: Shayenne Moura @ 2018-12-19 21:29 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie
Cc: dri-devel, linux-kernel
This patch finalizes the KMS cleanup task dependency from
drm_display_mode. It removes the use of drm_mode_object
from drm_display_mode struct and it removes the use of
base.id and base.type from drm_display_mode struct
print string.
Signed-off-by: Shayenne Moura <shayenneluzmoura@gmail.com>
---
include/drm/drm_modes.h | 21 +++------------------
1 file changed, 3 insertions(+), 18 deletions(-)
diff --git a/include/drm/drm_modes.h b/include/drm/drm_modes.h
index baded6514456..be4fed97e727 100644
--- a/include/drm/drm_modes.h
+++ b/include/drm/drm_modes.h
@@ -136,8 +136,7 @@ enum drm_mode_status {
.hdisplay = (hd), .hsync_start = (hss), .hsync_end = (hse), \
.htotal = (ht), .hskew = (hsk), .vdisplay = (vd), \
.vsync_start = (vss), .vsync_end = (vse), .vtotal = (vt), \
- .vscan = (vs), .flags = (f), \
- .base.type = DRM_MODE_OBJECT_MODE
+ .vscan = (vs), .flags = (f)
#define CRTC_INTERLACE_HALVE_V (1 << 0) /* halve V values for interlacing */
#define CRTC_STEREO_DOUBLE (1 << 1) /* adjust timings for stereo modes */
@@ -213,20 +212,6 @@ struct drm_display_mode {
*/
struct list_head head;
- /**
- * @base:
- *
- * A display mode is a normal modeset object, possibly including public
- * userspace id.
- *
- * FIXME:
- *
- * This can probably be removed since the entire concept of userspace
- * managing modes explicitly has never landed in upstream kernel mode
- * setting support.
- */
- struct drm_mode_object base;
-
/**
* @name:
*
@@ -429,14 +414,14 @@ struct drm_display_mode {
/**
* DRM_MODE_FMT - printf string for &struct drm_display_mode
*/
-#define DRM_MODE_FMT "%d:\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
+#define DRM_MODE_FMT "\"%s\": %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x"
/**
* DRM_MODE_ARG - printf arguments for &struct drm_display_mode
* @m: display mode
*/
#define DRM_MODE_ARG(m) \
- (m)->base.id, (m)->name, (m)->vrefresh, (m)->clock, \
+ (m)->name, (m)->vrefresh, (m)->clock, \
(m)->hdisplay, (m)->hsync_start, (m)->hsync_end, (m)->htotal, \
(m)->vdisplay, (m)->vsync_start, (m)->vsync_end, (m)->vtotal, \
(m)->type, (m)->flags
--
2.17.1
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH 7/7] drm: Complete remove drm_mode_object dependency
2018-12-19 21:29 ` [PATCH 7/7] drm: Complete remove drm_mode_object dependency Shayenne Moura
@ 2018-12-22 20:18 ` kbuild test robot
0 siblings, 0 replies; 5+ messages in thread
From: kbuild test robot @ 2018-12-22 20:18 UTC (permalink / raw)
To: Shayenne Moura
Cc: kbuild-all, Maarten Lankhorst, Maxime Ripard, Sean Paul,
David Airlie, linux-kernel, dri-devel
[-- Attachment #1: Type: text/plain, Size: 2866 bytes --]
Hi Shayenne,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on robclark/msm-next]
[also build test ERROR on v4.20-rc7 next-20181221]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Shayenne-Moura/drm-Remove-drm_mode_object-dependency-from-drm_display_mode/20181222-065838
base: git://people.freedesktop.org/~robclark/linux msm-next
config: i386-randconfig-a3-12211242 (attached as .config)
compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
drivers/gpu/drm/drm_modes.c: In function 'drm_mode_destroy':
>> drivers/gpu/drm/drm_modes.c:90:39: error: 'struct drm_display_mode' has no member named 'base'
drm_mode_object_unregister(dev, &mode->base);
^
drivers/gpu/drm/drm_modes.c: In function 'drm_mode_copy':
drivers/gpu/drm/drm_modes.c:909:14: error: 'struct drm_display_mode' has no member named 'base'
int id = dst->base.id;
^
drivers/gpu/drm/drm_modes.c:913:5: error: 'struct drm_display_mode' has no member named 'base'
dst->base.id = id;
^
vim +90 drivers/gpu/drm/drm_modes.c
8bd441b2 Daniel Vetter 2014-01-23 77
8bd441b2 Daniel Vetter 2014-01-23 78 /**
8bd441b2 Daniel Vetter 2014-01-23 79 * drm_mode_destroy - remove a mode
8bd441b2 Daniel Vetter 2014-01-23 80 * @dev: DRM device
8bd441b2 Daniel Vetter 2014-01-23 81 * @mode: mode to remove
8bd441b2 Daniel Vetter 2014-01-23 82 *
f5aabb97 Daniel Vetter 2014-01-23 83 * Release @mode's unique ID, then free it @mode structure itself using kfree.
8bd441b2 Daniel Vetter 2014-01-23 84 */
8bd441b2 Daniel Vetter 2014-01-23 85 void drm_mode_destroy(struct drm_device *dev, struct drm_display_mode *mode)
8bd441b2 Daniel Vetter 2014-01-23 86 {
8bd441b2 Daniel Vetter 2014-01-23 87 if (!mode)
8bd441b2 Daniel Vetter 2014-01-23 88 return;
8bd441b2 Daniel Vetter 2014-01-23 89
7c8f6d25 Dave Airlie 2016-04-15 @90 drm_mode_object_unregister(dev, &mode->base);
8bd441b2 Daniel Vetter 2014-01-23 91
8bd441b2 Daniel Vetter 2014-01-23 92 kfree(mode);
8bd441b2 Daniel Vetter 2014-01-23 93 }
8bd441b2 Daniel Vetter 2014-01-23 94 EXPORT_SYMBOL(drm_mode_destroy);
8bd441b2 Daniel Vetter 2014-01-23 95
:::::: The code at line 90 was first introduced by commit
:::::: 7c8f6d2577c7565f67ba3f6b9b76f7422710d66e drm/mode: rework drm_mode_object_put to drm_mode_object_unregister.
:::::: TO: Dave Airlie <airlied@redhat.com>
:::::: CC: Dave Airlie <airlied@redhat.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 30542 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-12-22 20:18 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-18 13:38 [PATCH 7/7] drm: Complete remove drm_mode_object dependency Shayenne Moura
2018-12-19 13:15 ` Daniel Vetter
2018-12-19 17:33 ` Shayenne Moura
2018-12-19 21:21 [PATCH 0/7] drm: Remove drm_mode_object dependency from drm_display_mode Shayenne Moura
2018-12-19 21:29 ` [PATCH 7/7] drm: Complete remove drm_mode_object dependency Shayenne Moura
2018-12-22 20:18 ` kbuild test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®