mbox series

[v2,0/7] drm: make headers self-contained and drop drmP.h

Message ID 20190526173535.32701-1-sam@ravnborg.org (mailing list archive)
Headers show
Series drm: make headers self-contained and drop drmP.h | expand

Message

Sam Ravnborg May 26, 2019, 5:35 p.m. UTC
While removing use of drmP.h from files in drm/* I
noticed that I had to add the same include files due to
dependencies in the header files.

It is better to let the header files be self-contained and
let the users pull in only the additional headers files required.
So I went ahead and made the relevant header files self-contained.
(I did not check if this made any includes redundant in some files,
I do not have tooling in place to do so).

Daniel suggested to add support for testing that they stay
self contained.
Jani Nikula has sent a patch to kbuild to make this part of the
kbuild machinery. I have used it locally and as soon as it
lands in kbuild I will start using it for drm.
We could have duplicated the infrastructure now but that seemed
too much code chrunch.

This patchset include the actual removal of drmP.h as one big patch.
This is build tested on alpha (always interesting), arm, arm64, x86 etc.

For all files touched the following was done:
- include files divided up in blocks in following order:
    	linux/*
	video/*
	drm/*
	""
- within each block the include files are sorted alphabetically

v2:
- use same ordering af blocks
- move includes down below license text
- added patch with actual drmP.h removal
- reworded some subjects to make them more descriptive
- fixed a few spelling erros in changelogs (but a few may remain)

        Sam


Sam Ravnborg (7):
      drm: make drm/drm_auth.h self contained
      drm: make drm/drm_legacy.h self-contained
      drm: make drm_crtc_internal.h self-contained
      drm: make drm_internal.h self-contained
      drm: make drm_legacy.h self-contained
      drm: make drm_trace.h self-contained
      drm: drop use of drmP.h in drm/*

 drivers/gpu/drm/ati_pcigart.c                |  5 ++++-
 drivers/gpu/drm/drm_agpsupport.c             | 11 +++++++++--
 drivers/gpu/drm/drm_atomic.c                 |  9 +++++++--
 drivers/gpu/drm/drm_atomic_helper.c          | 11 +++++++----
 drivers/gpu/drm/drm_atomic_state_helper.c    |  7 ++++---
 drivers/gpu/drm/drm_auth.c                   | 10 ++++++++--
 drivers/gpu/drm/drm_blend.c                  |  9 ++++++---
 drivers/gpu/drm/drm_bufs.c                   | 21 ++++++++++++++++-----
 drivers/gpu/drm/drm_client.c                 |  2 +-
 drivers/gpu/drm/drm_color_mgmt.c             |  8 ++++++--
 drivers/gpu/drm/drm_context.c                |  8 +++++++-
 drivers/gpu/drm/drm_crtc_helper.c            | 14 ++++++++------
 drivers/gpu/drm/drm_crtc_internal.h          | 24 ++++++++++++++++++++----
 drivers/gpu/drm/drm_debugfs.c                | 13 ++++++++-----
 drivers/gpu/drm/drm_debugfs_crc.c            |  9 ++++++++-
 drivers/gpu/drm/drm_dma.c                    |  6 +++++-
 drivers/gpu/drm/drm_drv.c                    |  9 ++++++---
 drivers/gpu/drm/drm_dumb_buffers.c           |  4 +++-
 drivers/gpu/drm/drm_encoder.c                |  4 +++-
 drivers/gpu/drm/drm_fb_helper.c              | 19 ++++++++++++-------
 drivers/gpu/drm/drm_file.c                   | 11 +++++++----
 drivers/gpu/drm/drm_flip_work.c              |  6 ++++--
 drivers/gpu/drm/drm_fourcc.c                 |  2 +-
 drivers/gpu/drm/drm_framebuffer.c            | 13 +++++++++----
 drivers/gpu/drm/drm_gem.c                    |  8 ++++++--
 drivers/gpu/drm/drm_gem_cma_helper.c         | 11 ++++++-----
 drivers/gpu/drm/drm_gem_framebuffer_helper.c |  1 -
 drivers/gpu/drm/drm_hashtab.c                | 10 +++++++---
 drivers/gpu/drm/drm_internal.h               | 10 +++++++++-
 drivers/gpu/drm/drm_ioc32.c                  |  9 ++++++---
 drivers/gpu/drm/drm_ioctl.c                  | 22 ++++++++++++++--------
 drivers/gpu/drm/drm_irq.c                    | 13 +++++++++----
 drivers/gpu/drm/drm_kms_helper_common.c      |  3 ++-
 drivers/gpu/drm/drm_lease.c                  | 15 ++++++++++-----
 drivers/gpu/drm/drm_legacy.h                 |  4 ++++
 drivers/gpu/drm/drm_legacy_misc.c            |  7 ++++++-
 drivers/gpu/drm/drm_lock.c                   |  8 ++++++--
 drivers/gpu/drm/drm_memory.c                 |  9 +++++++--
 drivers/gpu/drm/drm_mm.c                     |  9 +++++----
 drivers/gpu/drm/drm_mode_config.c            |  6 +++++-
 drivers/gpu/drm/drm_mode_object.c            |  9 +++++++--
 drivers/gpu/drm/drm_modes.c                  |  7 +++++--
 drivers/gpu/drm/drm_modeset_lock.c           |  2 +-
 drivers/gpu/drm/drm_of.c                     |  5 +++--
 drivers/gpu/drm/drm_pci.c                    | 11 ++++++++---
 drivers/gpu/drm/drm_plane_helper.c           |  9 +++++----
 drivers/gpu/drm/drm_prime.c                  |  7 +++++--
 drivers/gpu/drm/drm_print.c                  |  7 ++++++-
 drivers/gpu/drm/drm_probe_helper.c           |  7 ++++---
 drivers/gpu/drm/drm_property.c               |  7 ++++++-
 drivers/gpu/drm/drm_rect.c                   |  4 +++-
 drivers/gpu/drm/drm_scatter.c                |  9 +++++++--
 drivers/gpu/drm/drm_scdc_helper.c            |  2 +-
 drivers/gpu/drm/drm_simple_kms_helper.c      |  5 +++--
 drivers/gpu/drm/drm_syncobj.c                | 13 +++++++++----
 drivers/gpu/drm/drm_sysfs.c                  | 15 +++++++++++----
 drivers/gpu/drm/drm_trace.h                  |  2 ++
 drivers/gpu/drm/drm_trace_points.c           |  3 ++-
 drivers/gpu/drm/drm_vblank.c                 | 12 +++++++++---
 drivers/gpu/drm/drm_vm.c                     | 14 +++++++++++++-
 drivers/gpu/drm/drm_vma_manager.c            |  6 +++---
 drivers/gpu/drm/drm_vram_mm_helper.c         |  4 +++-
 drivers/gpu/drm/drm_writeback.c              |  6 ++++--
 include/drm/drm_auth.h                       | 11 +++++++++--
 include/drm/drm_legacy.h                     | 12 ++++++------
 65 files changed, 406 insertions(+), 163 deletions(-)

Comments

Daniel Vetter May 27, 2019, 6:18 a.m. UTC | #1
On Sun, May 26, 2019 at 07:35:28PM +0200, Sam Ravnborg wrote:
> While removing use of drmP.h from files in drm/* I
> noticed that I had to add the same include files due to
> dependencies in the header files.
> 
> It is better to let the header files be self-contained and
> let the users pull in only the additional headers files required.
> So I went ahead and made the relevant header files self-contained.
> (I did not check if this made any includes redundant in some files,
> I do not have tooling in place to do so).
> 
> Daniel suggested to add support for testing that they stay
> self contained.
> Jani Nikula has sent a patch to kbuild to make this part of the
> kbuild machinery. I have used it locally and as soon as it
> lands in kbuild I will start using it for drm.
> We could have duplicated the infrastructure now but that seemed
> too much code chrunch.
> 
> This patchset include the actual removal of drmP.h as one big patch.
> This is build tested on alpha (always interesting), arm, arm64, x86 etc.
> 
> For all files touched the following was done:
> - include files divided up in blocks in following order:
>     	linux/*
> 	video/*
> 	drm/*
> 	""
> - within each block the include files are sorted alphabetically
> 
> v2:
> - use same ordering af blocks
> - move includes down below license text
> - added patch with actual drmP.h removal
> - reworded some subjects to make them more descriptive
> - fixed a few spelling erros in changelogs (but a few may remain)
> 
>         Sam

On the series:

Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Did a bit of scrolling, looks all reasonable, but definitely didn't check
things in-depth.

btw did you look at the i915 Makefile trickery to make sure headers stay
self-contained?
-Daniel

> 
> 
> Sam Ravnborg (7):
>       drm: make drm/drm_auth.h self contained
>       drm: make drm/drm_legacy.h self-contained
>       drm: make drm_crtc_internal.h self-contained
>       drm: make drm_internal.h self-contained
>       drm: make drm_legacy.h self-contained
>       drm: make drm_trace.h self-contained
>       drm: drop use of drmP.h in drm/*
> 
>  drivers/gpu/drm/ati_pcigart.c                |  5 ++++-
>  drivers/gpu/drm/drm_agpsupport.c             | 11 +++++++++--
>  drivers/gpu/drm/drm_atomic.c                 |  9 +++++++--
>  drivers/gpu/drm/drm_atomic_helper.c          | 11 +++++++----
>  drivers/gpu/drm/drm_atomic_state_helper.c    |  7 ++++---
>  drivers/gpu/drm/drm_auth.c                   | 10 ++++++++--
>  drivers/gpu/drm/drm_blend.c                  |  9 ++++++---
>  drivers/gpu/drm/drm_bufs.c                   | 21 ++++++++++++++++-----
>  drivers/gpu/drm/drm_client.c                 |  2 +-
>  drivers/gpu/drm/drm_color_mgmt.c             |  8 ++++++--
>  drivers/gpu/drm/drm_context.c                |  8 +++++++-
>  drivers/gpu/drm/drm_crtc_helper.c            | 14 ++++++++------
>  drivers/gpu/drm/drm_crtc_internal.h          | 24 ++++++++++++++++++++----
>  drivers/gpu/drm/drm_debugfs.c                | 13 ++++++++-----
>  drivers/gpu/drm/drm_debugfs_crc.c            |  9 ++++++++-
>  drivers/gpu/drm/drm_dma.c                    |  6 +++++-
>  drivers/gpu/drm/drm_drv.c                    |  9 ++++++---
>  drivers/gpu/drm/drm_dumb_buffers.c           |  4 +++-
>  drivers/gpu/drm/drm_encoder.c                |  4 +++-
>  drivers/gpu/drm/drm_fb_helper.c              | 19 ++++++++++++-------
>  drivers/gpu/drm/drm_file.c                   | 11 +++++++----
>  drivers/gpu/drm/drm_flip_work.c              |  6 ++++--
>  drivers/gpu/drm/drm_fourcc.c                 |  2 +-
>  drivers/gpu/drm/drm_framebuffer.c            | 13 +++++++++----
>  drivers/gpu/drm/drm_gem.c                    |  8 ++++++--
>  drivers/gpu/drm/drm_gem_cma_helper.c         | 11 ++++++-----
>  drivers/gpu/drm/drm_gem_framebuffer_helper.c |  1 -
>  drivers/gpu/drm/drm_hashtab.c                | 10 +++++++---
>  drivers/gpu/drm/drm_internal.h               | 10 +++++++++-
>  drivers/gpu/drm/drm_ioc32.c                  |  9 ++++++---
>  drivers/gpu/drm/drm_ioctl.c                  | 22 ++++++++++++++--------
>  drivers/gpu/drm/drm_irq.c                    | 13 +++++++++----
>  drivers/gpu/drm/drm_kms_helper_common.c      |  3 ++-
>  drivers/gpu/drm/drm_lease.c                  | 15 ++++++++++-----
>  drivers/gpu/drm/drm_legacy.h                 |  4 ++++
>  drivers/gpu/drm/drm_legacy_misc.c            |  7 ++++++-
>  drivers/gpu/drm/drm_lock.c                   |  8 ++++++--
>  drivers/gpu/drm/drm_memory.c                 |  9 +++++++--
>  drivers/gpu/drm/drm_mm.c                     |  9 +++++----
>  drivers/gpu/drm/drm_mode_config.c            |  6 +++++-
>  drivers/gpu/drm/drm_mode_object.c            |  9 +++++++--
>  drivers/gpu/drm/drm_modes.c                  |  7 +++++--
>  drivers/gpu/drm/drm_modeset_lock.c           |  2 +-
>  drivers/gpu/drm/drm_of.c                     |  5 +++--
>  drivers/gpu/drm/drm_pci.c                    | 11 ++++++++---
>  drivers/gpu/drm/drm_plane_helper.c           |  9 +++++----
>  drivers/gpu/drm/drm_prime.c                  |  7 +++++--
>  drivers/gpu/drm/drm_print.c                  |  7 ++++++-
>  drivers/gpu/drm/drm_probe_helper.c           |  7 ++++---
>  drivers/gpu/drm/drm_property.c               |  7 ++++++-
>  drivers/gpu/drm/drm_rect.c                   |  4 +++-
>  drivers/gpu/drm/drm_scatter.c                |  9 +++++++--
>  drivers/gpu/drm/drm_scdc_helper.c            |  2 +-
>  drivers/gpu/drm/drm_simple_kms_helper.c      |  5 +++--
>  drivers/gpu/drm/drm_syncobj.c                | 13 +++++++++----
>  drivers/gpu/drm/drm_sysfs.c                  | 15 +++++++++++----
>  drivers/gpu/drm/drm_trace.h                  |  2 ++
>  drivers/gpu/drm/drm_trace_points.c           |  3 ++-
>  drivers/gpu/drm/drm_vblank.c                 | 12 +++++++++---
>  drivers/gpu/drm/drm_vm.c                     | 14 +++++++++++++-
>  drivers/gpu/drm/drm_vma_manager.c            |  6 +++---
>  drivers/gpu/drm/drm_vram_mm_helper.c         |  4 +++-
>  drivers/gpu/drm/drm_writeback.c              |  6 ++++--
>  include/drm/drm_auth.h                       | 11 +++++++++--
>  include/drm/drm_legacy.h                     | 12 ++++++------
>  65 files changed, 406 insertions(+), 163 deletions(-)
> 
>
Sam Ravnborg May 27, 2019, 6:54 a.m. UTC | #2
Hi Daniel.
On Mon, May 27, 2019 at 08:18:35AM +0200, Daniel Vetter wrote:
> On Sun, May 26, 2019 at 07:35:28PM +0200, Sam Ravnborg wrote:
> > While removing use of drmP.h from files in drm/* I
> > noticed that I had to add the same include files due to
> > dependencies in the header files.
> > 
> > It is better to let the header files be self-contained and
> > let the users pull in only the additional headers files required.
> > So I went ahead and made the relevant header files self-contained.
> > (I did not check if this made any includes redundant in some files,
> > I do not have tooling in place to do so).
> > 
> > Daniel suggested to add support for testing that they stay
> > self contained.
> > Jani Nikula has sent a patch to kbuild to make this part of the
> > kbuild machinery. I have used it locally and as soon as it
> > lands in kbuild I will start using it for drm.
> > We could have duplicated the infrastructure now but that seemed
> > too much code chrunch.
> > 
> > This patchset include the actual removal of drmP.h as one big patch.
> > This is build tested on alpha (always interesting), arm, arm64, x86 etc.
> > 
> > For all files touched the following was done:
> > - include files divided up in blocks in following order:
> >     	linux/*
> > 	video/*
> > 	drm/*
> > 	""
> > - within each block the include files are sorted alphabetically
> > 
> > v2:
> > - use same ordering af blocks
> > - move includes down below license text
> > - added patch with actual drmP.h removal
> > - reworded some subjects to make them more descriptive
> > - fixed a few spelling erros in changelogs (but a few may remain)
> > 
> >         Sam
> 
> On the series:
> 
> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Thanks

> 
> Did a bit of scrolling, looks all reasonable, but definitely didn't check
> things in-depth.
> 
> btw did you look at the i915 Makefile trickery to make sure headers stay
> self-contained?
Yup, this is what Jani works on getting upstreamed to be part of kbuild.
When it lands I will activate it for the drm headers (if not beaten by
someone else)
I used it locally to check everything was OK.

	Sam
Sam Ravnborg May 27, 2019, 6:05 p.m. UTC | #3
On Mon, May 27, 2019 at 08:18:35AM +0200, Daniel Vetter wrote:
> On Sun, May 26, 2019 at 07:35:28PM +0200, Sam Ravnborg wrote:
> > While removing use of drmP.h from files in drm/* I
> > noticed that I had to add the same include files due to
> > dependencies in the header files.
> > 
> > It is better to let the header files be self-contained and
> > let the users pull in only the additional headers files required.
> > So I went ahead and made the relevant header files self-contained.
> > (I did not check if this made any includes redundant in some files,
> > I do not have tooling in place to do so).
> > 
> > Daniel suggested to add support for testing that they stay
> > self contained.
> > Jani Nikula has sent a patch to kbuild to make this part of the
> > kbuild machinery. I have used it locally and as soon as it
> > lands in kbuild I will start using it for drm.
> > We could have duplicated the infrastructure now but that seemed
> > too much code chrunch.
> > 
> > This patchset include the actual removal of drmP.h as one big patch.
> > This is build tested on alpha (always interesting), arm, arm64, x86 etc.
> > 
> > For all files touched the following was done:
> > - include files divided up in blocks in following order:
> >     	linux/*
> > 	video/*
> > 	drm/*
> > 	""
> > - within each block the include files are sorted alphabetically
> > 
> > v2:
> > - use same ordering af blocks
> > - move includes down below license text
> > - added patch with actual drmP.h removal
> > - reworded some subjects to make them more descriptive
> > - fixed a few spelling erros in changelogs (but a few may remain)
> > 
> >         Sam
> 
> On the series:
> 
> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> 
> Did a bit of scrolling, looks all reasonable, but definitely didn't check
> things in-depth.
Thanks, applied and will be pushed out in a minute.

	Sam