mbox series

[00/22] drm: fix headers, add header test facility

Message ID cover.1709749576.git.jani.nikula@intel.com (mailing list archive)
Headers show
Series drm: fix headers, add header test facility | expand

Message

Jani Nikula March 6, 2024, 6:31 p.m. UTC
First, fix a bunch of issues in drm headers, uncovered with the last
patch. A few kernel-doc warnings are just brushed under the carpet for
now, with a FIXME comment. Otherwise, pretty straightforward stuff.

Second, add a header test facility to catch issues at build time when
CONFIG_DRM_HEADER_TEST=y. This is the last patch, and I think needs
Masahiro's ack.

BR,
Jani.


Cc: David Airlie <airlied@gmail.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Masahiro Yamada <masahiroy@kernel.org>

Jani Nikula (22):
  drm/crtc: make drm_crtc_internal.h self-contained
  drm: add missing header guards to drm_internal.h
  drm/kunit: fix drm_kunit_helpers.h kernel-doc
  drm/amdgpu: make amd_asic_type.h self-contained
  drm: bridge: samsung-dsim: make samsung-dsim.h self-contained
  drm/dp_mst: fix drm_dp_mst_helper.h kernel-doc
  drm/crc: make drm_debugfs_crc.h self-contained and fix kernel-doc
  drm/encoder: silence drm_encoder_slave.h kernel-doc
  drm: fix drm_format_helper.h kernel-doc warnings
  drm/lease: make drm_lease.h self-contained
  drm: fix drm_gem_vram_helper.h kernel-doc
  drm/of: make drm_of.h self-contained
  drm/i2c: silence ch7006.h and sil164.h kernel-doc warnings
  drm/suballoc: fix drm_suballoc.h kernel-doc
  drm/i915: fix i915_gsc_proxy_mei_interface.h kernel-doc
  drm/i915/hdcp: fix i915_hdcp_interface.h kernel-doc warnings
  drm/i915/pxp: fix i915_pxp_tee_interface.h kernel-doc warnings
  drm/ttm: fix ttm_bo.h kernel-doc warnings
  drm/ttm: make ttm_caching.h self-contained
  drm/ttm: fix ttm_execbuf_util.h kernel-doc warnings
  drm/ttm: fix ttm_kmap_iter.h kernel-doc warnings
  drm: ensure drm headers are self-contained and pass kernel-doc

 Kbuild                                     |  1 +
 drivers/gpu/drm/Kconfig                    | 11 +++++++++++
 drivers/gpu/drm/Makefile                   | 18 ++++++++++++++++++
 drivers/gpu/drm/drm_crtc_internal.h        |  1 +
 drivers/gpu/drm/drm_internal.h             |  5 +++++
 include/Kbuild                             |  1 +
 include/drm/Makefile                       | 18 ++++++++++++++++++
 include/drm/amd_asic_type.h                |  3 +++
 include/drm/bridge/samsung-dsim.h          |  4 +++-
 include/drm/display/drm_dp_mst_helper.h    |  1 -
 include/drm/drm_debugfs_crc.h              |  8 +++++++-
 include/drm/drm_encoder_slave.h            |  3 +++
 include/drm/drm_format_helper.h            |  1 +
 include/drm/drm_gem_vram_helper.h          |  1 -
 include/drm/drm_kunit_helpers.h            |  2 +-
 include/drm/drm_lease.h                    |  2 ++
 include/drm/drm_of.h                       |  1 +
 include/drm/drm_suballoc.h                 |  2 +-
 include/drm/i2c/ch7006.h                   |  1 +
 include/drm/i2c/sil164.h                   |  1 +
 include/drm/i915_gsc_proxy_mei_interface.h |  4 ++--
 include/drm/i915_hdcp_interface.h          | 18 +++++++++++++-----
 include/drm/i915_pxp_tee_interface.h       | 19 ++++++++++++-------
 include/drm/ttm/ttm_bo.h                   | 18 ++++++++++++------
 include/drm/ttm/ttm_caching.h              |  2 ++
 include/drm/ttm/ttm_execbuf_util.h         |  7 +++----
 include/drm/ttm/ttm_kmap_iter.h            |  4 ++--
 27 files changed, 125 insertions(+), 32 deletions(-)
 create mode 100644 include/Kbuild
 create mode 100644 include/drm/Makefile

Comments

Thomas Zimmermann March 7, 2024, 8:55 a.m. UTC | #1
Hi

Am 06.03.24 um 19:31 schrieb Jani Nikula:
> First, fix a bunch of issues in drm headers, uncovered with the last
> patch. A few kernel-doc warnings are just brushed under the carpet for
> now, with a FIXME comment. Otherwise, pretty straightforward stuff.

Nice, thanks a lot. For the FIXME comments, maybe maintainers can 
provide the docs to include in your patchset. But that wouldn't be a 
blocker IMHO. The /* private: */ comments make kernel-doc ignore the 
rest of the structure, right?

With the required fixes applied, for patches 1 to 14:

Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>

For patches 15 to 22:

Acked-by: Thomas Zimmermann <tzimmermann@suse.de>

Best regards
Thomas

>
> Second, add a header test facility to catch issues at build time when
> CONFIG_DRM_HEADER_TEST=y. This is the last patch, and I think needs
> Masahiro's ack.
>
> BR,
> Jani.
>
>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <mripard@kernel.org>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Masahiro Yamada <masahiroy@kernel.org>
>
> Jani Nikula (22):
>    drm/crtc: make drm_crtc_internal.h self-contained
>    drm: add missing header guards to drm_internal.h
>    drm/kunit: fix drm_kunit_helpers.h kernel-doc
>    drm/amdgpu: make amd_asic_type.h self-contained
>    drm: bridge: samsung-dsim: make samsung-dsim.h self-contained
>    drm/dp_mst: fix drm_dp_mst_helper.h kernel-doc
>    drm/crc: make drm_debugfs_crc.h self-contained and fix kernel-doc
>    drm/encoder: silence drm_encoder_slave.h kernel-doc
>    drm: fix drm_format_helper.h kernel-doc warnings
>    drm/lease: make drm_lease.h self-contained
>    drm: fix drm_gem_vram_helper.h kernel-doc
>    drm/of: make drm_of.h self-contained
>    drm/i2c: silence ch7006.h and sil164.h kernel-doc warnings
>    drm/suballoc: fix drm_suballoc.h kernel-doc
>    drm/i915: fix i915_gsc_proxy_mei_interface.h kernel-doc
>    drm/i915/hdcp: fix i915_hdcp_interface.h kernel-doc warnings
>    drm/i915/pxp: fix i915_pxp_tee_interface.h kernel-doc warnings
>    drm/ttm: fix ttm_bo.h kernel-doc warnings
>    drm/ttm: make ttm_caching.h self-contained
>    drm/ttm: fix ttm_execbuf_util.h kernel-doc warnings
>    drm/ttm: fix ttm_kmap_iter.h kernel-doc warnings
>    drm: ensure drm headers are self-contained and pass kernel-doc
>
>   Kbuild                                     |  1 +
>   drivers/gpu/drm/Kconfig                    | 11 +++++++++++
>   drivers/gpu/drm/Makefile                   | 18 ++++++++++++++++++
>   drivers/gpu/drm/drm_crtc_internal.h        |  1 +
>   drivers/gpu/drm/drm_internal.h             |  5 +++++
>   include/Kbuild                             |  1 +
>   include/drm/Makefile                       | 18 ++++++++++++++++++
>   include/drm/amd_asic_type.h                |  3 +++
>   include/drm/bridge/samsung-dsim.h          |  4 +++-
>   include/drm/display/drm_dp_mst_helper.h    |  1 -
>   include/drm/drm_debugfs_crc.h              |  8 +++++++-
>   include/drm/drm_encoder_slave.h            |  3 +++
>   include/drm/drm_format_helper.h            |  1 +
>   include/drm/drm_gem_vram_helper.h          |  1 -
>   include/drm/drm_kunit_helpers.h            |  2 +-
>   include/drm/drm_lease.h                    |  2 ++
>   include/drm/drm_of.h                       |  1 +
>   include/drm/drm_suballoc.h                 |  2 +-
>   include/drm/i2c/ch7006.h                   |  1 +
>   include/drm/i2c/sil164.h                   |  1 +
>   include/drm/i915_gsc_proxy_mei_interface.h |  4 ++--
>   include/drm/i915_hdcp_interface.h          | 18 +++++++++++++-----
>   include/drm/i915_pxp_tee_interface.h       | 19 ++++++++++++-------
>   include/drm/ttm/ttm_bo.h                   | 18 ++++++++++++------
>   include/drm/ttm/ttm_caching.h              |  2 ++
>   include/drm/ttm/ttm_execbuf_util.h         |  7 +++----
>   include/drm/ttm/ttm_kmap_iter.h            |  4 ++--
>   27 files changed, 125 insertions(+), 32 deletions(-)
>   create mode 100644 include/Kbuild
>   create mode 100644 include/drm/Makefile
>
Jani Nikula March 7, 2024, 9:04 a.m. UTC | #2
On Thu, 07 Mar 2024, Thomas Zimmermann <tzimmermann@suse.de> wrote:
> Hi
>
> Am 06.03.24 um 19:31 schrieb Jani Nikula:
>> First, fix a bunch of issues in drm headers, uncovered with the last
>> patch. A few kernel-doc warnings are just brushed under the carpet for
>> now, with a FIXME comment. Otherwise, pretty straightforward stuff.
>
> Nice, thanks a lot. For the FIXME comments, maybe maintainers can 
> provide the docs to include in your patchset. But that wouldn't be a 
> blocker IMHO. The /* private: */ comments make kernel-doc ignore the 
> rest of the structure, right?

That's right. In some cases it's the appropriate thing to do, like patch
9/22 where the members of struct drm_format_conv_state should be
private.

>
> With the required fixes applied, for patches 1 to 14:
>
> Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
>
> For patches 15 to 22:
>
> Acked-by: Thomas Zimmermann <tzimmermann@suse.de>

Thanks!

BR,
Jani.

>
> Best regards
> Thomas
>
>>
>> Second, add a header test facility to catch issues at build time when
>> CONFIG_DRM_HEADER_TEST=y. This is the last patch, and I think needs
>> Masahiro's ack.
>>
>> BR,
>> Jani.
>>
>>
>> Cc: David Airlie <airlied@gmail.com>
>> Cc: Daniel Vetter <daniel@ffwll.ch>
>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>> Cc: Maxime Ripard <mripard@kernel.org>
>> Cc: Thomas Zimmermann <tzimmermann@suse.de>
>> Cc: Masahiro Yamada <masahiroy@kernel.org>
>>
>> Jani Nikula (22):
>>    drm/crtc: make drm_crtc_internal.h self-contained
>>    drm: add missing header guards to drm_internal.h
>>    drm/kunit: fix drm_kunit_helpers.h kernel-doc
>>    drm/amdgpu: make amd_asic_type.h self-contained
>>    drm: bridge: samsung-dsim: make samsung-dsim.h self-contained
>>    drm/dp_mst: fix drm_dp_mst_helper.h kernel-doc
>>    drm/crc: make drm_debugfs_crc.h self-contained and fix kernel-doc
>>    drm/encoder: silence drm_encoder_slave.h kernel-doc
>>    drm: fix drm_format_helper.h kernel-doc warnings
>>    drm/lease: make drm_lease.h self-contained
>>    drm: fix drm_gem_vram_helper.h kernel-doc
>>    drm/of: make drm_of.h self-contained
>>    drm/i2c: silence ch7006.h and sil164.h kernel-doc warnings
>>    drm/suballoc: fix drm_suballoc.h kernel-doc
>>    drm/i915: fix i915_gsc_proxy_mei_interface.h kernel-doc
>>    drm/i915/hdcp: fix i915_hdcp_interface.h kernel-doc warnings
>>    drm/i915/pxp: fix i915_pxp_tee_interface.h kernel-doc warnings
>>    drm/ttm: fix ttm_bo.h kernel-doc warnings
>>    drm/ttm: make ttm_caching.h self-contained
>>    drm/ttm: fix ttm_execbuf_util.h kernel-doc warnings
>>    drm/ttm: fix ttm_kmap_iter.h kernel-doc warnings
>>    drm: ensure drm headers are self-contained and pass kernel-doc
>>
>>   Kbuild                                     |  1 +
>>   drivers/gpu/drm/Kconfig                    | 11 +++++++++++
>>   drivers/gpu/drm/Makefile                   | 18 ++++++++++++++++++
>>   drivers/gpu/drm/drm_crtc_internal.h        |  1 +
>>   drivers/gpu/drm/drm_internal.h             |  5 +++++
>>   include/Kbuild                             |  1 +
>>   include/drm/Makefile                       | 18 ++++++++++++++++++
>>   include/drm/amd_asic_type.h                |  3 +++
>>   include/drm/bridge/samsung-dsim.h          |  4 +++-
>>   include/drm/display/drm_dp_mst_helper.h    |  1 -
>>   include/drm/drm_debugfs_crc.h              |  8 +++++++-
>>   include/drm/drm_encoder_slave.h            |  3 +++
>>   include/drm/drm_format_helper.h            |  1 +
>>   include/drm/drm_gem_vram_helper.h          |  1 -
>>   include/drm/drm_kunit_helpers.h            |  2 +-
>>   include/drm/drm_lease.h                    |  2 ++
>>   include/drm/drm_of.h                       |  1 +
>>   include/drm/drm_suballoc.h                 |  2 +-
>>   include/drm/i2c/ch7006.h                   |  1 +
>>   include/drm/i2c/sil164.h                   |  1 +
>>   include/drm/i915_gsc_proxy_mei_interface.h |  4 ++--
>>   include/drm/i915_hdcp_interface.h          | 18 +++++++++++++-----
>>   include/drm/i915_pxp_tee_interface.h       | 19 ++++++++++++-------
>>   include/drm/ttm/ttm_bo.h                   | 18 ++++++++++++------
>>   include/drm/ttm/ttm_caching.h              |  2 ++
>>   include/drm/ttm/ttm_execbuf_util.h         |  7 +++----
>>   include/drm/ttm/ttm_kmap_iter.h            |  4 ++--
>>   27 files changed, 125 insertions(+), 32 deletions(-)
>>   create mode 100644 include/Kbuild
>>   create mode 100644 include/drm/Makefile
>>
Jani Nikula March 7, 2024, 3:23 p.m. UTC | #3
On Thu, 07 Mar 2024, Thomas Zimmermann <tzimmermann@suse.de> wrote:
> Hi
>
> Am 06.03.24 um 19:31 schrieb Jani Nikula:
>> First, fix a bunch of issues in drm headers, uncovered with the last
>> patch. A few kernel-doc warnings are just brushed under the carpet for
>> now, with a FIXME comment. Otherwise, pretty straightforward stuff.
>
> Nice, thanks a lot. For the FIXME comments, maybe maintainers can 
> provide the docs to include in your patchset. But that wouldn't be a 
> blocker IMHO. The /* private: */ comments make kernel-doc ignore the 
> rest of the structure, right?
>
> With the required fixes applied, for patches 1 to 14:
>
> Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>

Thanks for the review, I started off with pushing patches 1-7, 9-12, and
14 to drm-misc-next, with Alex's ack on patch 4.

Patches 8 and 13 have fixmes, so skipped those for now.

BR,
Jani.



>
> For patches 15 to 22:
>
> Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
>
> Best regards
> Thomas
>
>>
>> Second, add a header test facility to catch issues at build time when
>> CONFIG_DRM_HEADER_TEST=y. This is the last patch, and I think needs
>> Masahiro's ack.
>>
>> BR,
>> Jani.
>>
>>
>> Cc: David Airlie <airlied@gmail.com>
>> Cc: Daniel Vetter <daniel@ffwll.ch>
>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>> Cc: Maxime Ripard <mripard@kernel.org>
>> Cc: Thomas Zimmermann <tzimmermann@suse.de>
>> Cc: Masahiro Yamada <masahiroy@kernel.org>
>>
>> Jani Nikula (22):
>>    drm/crtc: make drm_crtc_internal.h self-contained
>>    drm: add missing header guards to drm_internal.h
>>    drm/kunit: fix drm_kunit_helpers.h kernel-doc
>>    drm/amdgpu: make amd_asic_type.h self-contained
>>    drm: bridge: samsung-dsim: make samsung-dsim.h self-contained
>>    drm/dp_mst: fix drm_dp_mst_helper.h kernel-doc
>>    drm/crc: make drm_debugfs_crc.h self-contained and fix kernel-doc
>>    drm/encoder: silence drm_encoder_slave.h kernel-doc
>>    drm: fix drm_format_helper.h kernel-doc warnings
>>    drm/lease: make drm_lease.h self-contained
>>    drm: fix drm_gem_vram_helper.h kernel-doc
>>    drm/of: make drm_of.h self-contained
>>    drm/i2c: silence ch7006.h and sil164.h kernel-doc warnings
>>    drm/suballoc: fix drm_suballoc.h kernel-doc
>>    drm/i915: fix i915_gsc_proxy_mei_interface.h kernel-doc
>>    drm/i915/hdcp: fix i915_hdcp_interface.h kernel-doc warnings
>>    drm/i915/pxp: fix i915_pxp_tee_interface.h kernel-doc warnings
>>    drm/ttm: fix ttm_bo.h kernel-doc warnings
>>    drm/ttm: make ttm_caching.h self-contained
>>    drm/ttm: fix ttm_execbuf_util.h kernel-doc warnings
>>    drm/ttm: fix ttm_kmap_iter.h kernel-doc warnings
>>    drm: ensure drm headers are self-contained and pass kernel-doc
>>
>>   Kbuild                                     |  1 +
>>   drivers/gpu/drm/Kconfig                    | 11 +++++++++++
>>   drivers/gpu/drm/Makefile                   | 18 ++++++++++++++++++
>>   drivers/gpu/drm/drm_crtc_internal.h        |  1 +
>>   drivers/gpu/drm/drm_internal.h             |  5 +++++
>>   include/Kbuild                             |  1 +
>>   include/drm/Makefile                       | 18 ++++++++++++++++++
>>   include/drm/amd_asic_type.h                |  3 +++
>>   include/drm/bridge/samsung-dsim.h          |  4 +++-
>>   include/drm/display/drm_dp_mst_helper.h    |  1 -
>>   include/drm/drm_debugfs_crc.h              |  8 +++++++-
>>   include/drm/drm_encoder_slave.h            |  3 +++
>>   include/drm/drm_format_helper.h            |  1 +
>>   include/drm/drm_gem_vram_helper.h          |  1 -
>>   include/drm/drm_kunit_helpers.h            |  2 +-
>>   include/drm/drm_lease.h                    |  2 ++
>>   include/drm/drm_of.h                       |  1 +
>>   include/drm/drm_suballoc.h                 |  2 +-
>>   include/drm/i2c/ch7006.h                   |  1 +
>>   include/drm/i2c/sil164.h                   |  1 +
>>   include/drm/i915_gsc_proxy_mei_interface.h |  4 ++--
>>   include/drm/i915_hdcp_interface.h          | 18 +++++++++++++-----
>>   include/drm/i915_pxp_tee_interface.h       | 19 ++++++++++++-------
>>   include/drm/ttm/ttm_bo.h                   | 18 ++++++++++++------
>>   include/drm/ttm/ttm_caching.h              |  2 ++
>>   include/drm/ttm/ttm_execbuf_util.h         |  7 +++----
>>   include/drm/ttm/ttm_kmap_iter.h            |  4 ++--
>>   27 files changed, 125 insertions(+), 32 deletions(-)
>>   create mode 100644 include/Kbuild
>>   create mode 100644 include/drm/Makefile
>>