Hi, On Mon, Jun 10, 2024 at 01:12:00PM GMT, Maxime Ripard wrote: > It looks like the documentation for the HDMI-related fields recently > added to both the drm_connector and drm_connector_state structures > trigger some warnings because of their use of anonymous structures: > > $ scripts/kernel-doc -none include/drm/drm_connector.h > include/drm/drm_connector.h:1138: warning: Excess struct member 'broadcast_rgb' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'infoframes' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'avi' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'hdr_drm' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'spd' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'vendor' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'is_limited_range' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'output_bpc' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'output_format' description in 'drm_connector_state' > include/drm/drm_connector.h:1138: warning: Excess struct member 'tmds_char_rate' description in 'drm_connector_state' > include/drm/drm_connector.h:2112: warning: Excess struct member 'vendor' description in 'drm_connector' > include/drm/drm_connector.h:2112: warning: Excess struct member 'product' description in 'drm_connector' > include/drm/drm_connector.h:2112: warning: Excess struct member 'supported_formats' description in 'drm_connector' > include/drm/drm_connector.h:2112: warning: Excess struct member 'infoframes' description in 'drm_connector' > include/drm/drm_connector.h:2112: warning: Excess struct member 'lock' description in 'drm_connector' > include/drm/drm_connector.h:2112: warning: Excess struct member 'audio' description in 'drm_connector' > > Create some intermediate structures instead of anonymous ones to silence > the warnings. > > Reported-by: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> > Suggested-by: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> > Fixes: 54cb39e2293b ("drm/connector: hdmi: Create an HDMI sub-state") > Fixes: 948f01d5e559 ("drm/connector: hdmi: Add support for output format") > Signed-off-by: Maxime Ripard <mripard@xxxxxxxxxx> > --- > include/drm/drm_connector.h | 207 +++++++++++++++++++----------------- > 1 file changed, 109 insertions(+), 98 deletions(-) > > diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h > index e04a8a0d1bbd..1afee2939b71 100644 > --- a/include/drm/drm_connector.h > +++ b/include/drm/drm_connector.h > @@ -927,10 +927,72 @@ struct drm_connector_hdmi_infoframe { > * @set: Is the content of @data valid? > */ > bool set; > }; > > +/* > + * struct drm_connector_hdmi_state - HDMI state container > + */ > +struct drm_connector_hdmi_state { > + /** > + * @broadcast_rgb: Connector property to pass the > + * Broadcast RGB selection value. > + */ > + enum drm_hdmi_broadcast_rgb broadcast_rgb; > + > + /** > + * @infoframes: HDMI Infoframes matching that state > + */ > + struct { > + /** > + * @avi: AVI Infoframes structure matching our > + * state. > + */ > + struct drm_connector_hdmi_infoframe avi; > + > + /** > + * @hdr_drm: DRM (Dynamic Range and Mastering) > + * Infoframes structure matching our state. > + */ > + struct drm_connector_hdmi_infoframe hdr_drm; > + > + /** > + * @spd: SPD Infoframes structure matching our > + * state. > + */ > + struct drm_connector_hdmi_infoframe spd; > + > + /** > + * @vendor: HDMI Vendor Infoframes structure > + * matching our state. > + */ > + struct drm_connector_hdmi_infoframe hdmi; > + } infoframes; > + > + /** > + * @is_limited_range: Is the output supposed to use a limited > + * RGB Quantization Range or not? > + */ > + bool is_limited_range; > + > + /** > + * @output_bpc: Bits per color channel to output. > + */ > + unsigned int output_bpc; > + > + /** > + * @output_format: Pixel format to output in. > + */ > + enum hdmi_colorspace output_format; > + > + /** > + * @tmds_char_rate: TMDS Character Rate, in Hz. > + */ > + unsigned long long tmds_char_rate; > + > +} FTR, there's a missing ; here Maxime
Attachment:
signature.asc
Description: PGP signature