[PATCH 13/13] drm/vkms: Allow to attach connectors and encoders

Louis Chauvet louis.chauvet at bootlin.com
Thu Jan 30 13:48:35 UTC 2025


On 29/01/25 - 12:00, José Expósito wrote:
> Add a list of possible encoders to the connector configuration and
> helpers to attach and detach them.
> 
> Now that the default configuration has its connector and encoder
> correctly, configure the output following the configuration.
> 
> Signed-off-by: Louis Chauvet <louis.chauvet at bootlin.com>
> Signed-off-by: José Expósito <jose.exposito89 at gmail.com>

Co-developped-by: Louis Chauvet <louis.chauvet at bootlin.com>
Signed-off-by: Louis Chauvet <louis.chauvet at bootlin.com>
Signed-off-by: José Expósito <jose.exposito89 at gmail.com>

> ---
>  drivers/gpu/drm/vkms/tests/vkms_config_test.c | 62 +++++++++++++++++
>  drivers/gpu/drm/vkms/vkms_config.c            | 69 +++++++++++++++++++
>  drivers/gpu/drm/vkms/vkms_config.h            | 33 +++++++++
>  drivers/gpu/drm/vkms/vkms_output.c            | 57 +++++++++++----
>  4 files changed, 209 insertions(+), 12 deletions(-)

[...]

> +int __must_check vkms_config_connector_attach_encoder(struct vkms_config_connector *connector_cfg,
> +						      struct vkms_config_encoder *encoder_cfg)
> +{
> +	struct vkms_config_encoder *possible_encoder;
> +	unsigned long idx = 0;
> +	u32 encoder_idx = 0;
> +
> +	xa_for_each(&connector_cfg->possible_encoders, idx, possible_encoder) {
> +		if (possible_encoder == encoder_cfg)
> +			return -EINVAL;

Is this really an error? For me this should be valid: we want to attach 
the connector and the encoder, it is already the case, so it is good.

> +	}
> +
> +	return xa_alloc(&connector_cfg->possible_encoders, &encoder_idx,
> +			encoder_cfg, xa_limit_32b, GFP_KERNEL);
> +}
> +

[...]


More information about the dri-devel mailing list