drm/vkms: Introduce detailed configuration
From: | Louis Chauvet <louis.chauvet-AT-bootlin.com> | |
To: | Maíra Canal <mairacanal-AT-riseup.net>, Haneen Mohammed <hamohammed.sa-AT-gmail.com>, Simona Vetter <simona-AT-ffwll.ch>, Melissa Wen <melissa.srw-AT-gmail.com>, Maarten Lankhorst <maarten.lankhorst-AT-linux.intel.com>, Maxime Ripard <mripard-AT-kernel.org>, Thomas Zimmermann <tzimmermann-AT-suse.de>, David Airlie <airlied-AT-gmail.com> | |
Subject: | [PATCH v3 00/16] drm/vkms: Introduce detailed configuration | |
Date: | Tue, 21 Jan 2025 11:55:24 +0100 | |
Message-ID: | <20250121-google-remove-crtc-index-from-parameter-v3-0-cac00a3c3544@bootlin.com> | |
Cc: | arthurgrillo-AT-riseup.net, jeremie.dautheribes-AT-bootlin.com, miquel.raynal-AT-bootlin.com, thomas.petazzoni-AT-bootlin.com, seanpaul-AT-google.com, nicolejadeyee-AT-google.com, linux-kernel-AT-vger.kernel.org, dri-devel-AT-lists.freedesktop.org, Louis Chauvet <louis.chauvet-AT-bootlin.com>, José Expósito <jose.exposito89-AT-gmail.com> | |
Archive-link: | Article |
The current code is not flexible to configure the VKMS device. In preparation for ConfigFS interface introduce few structure that can be used to configure the device creation: `vkms_config`. This part is splitted from the ConfigFS implementation itself to avoid mixing two complex interfaces. The vkms_config structure will allows the configuration of: - planes - name - possible_crtcs - supported_rotations - default_rotation - type - format - crtcs - name - possible_planes [automatically filled by helpers] - possible_encoders [automatically filled by helpers] - encoders - name - type - possible_crtcs - connectors: - type - status - EDID Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com> --- Changes in v3: - Remove the plane color encoding/range and not yet supported formats so it does not have any dependencies - Created a helper to get config for a connector - Rebased on drm-misc-next - Link to v2: https://lore.kernel.org/r/20241122-google-remove-crtc-ind... Changes in v2: - Rebased on drm-misc-next - Added support for many new configuration - Link to v1: https://lore.kernel.org/r/20240814-google-remove-crtc-ind... --- Louis Chauvet (16): drm/vkms: Extract vkms_config header drm/vkms: Add a validation function for vkms configuration drm/vkms: Move default_config creation to its own function drm/vkms: Introduce config for plane drm/vkms: Introduce config for plane name drm/vkms: Introduce config for plane rotation drm/vkms: Introduce config for CRTCs and encoders drm/vkms: Introduce config for encoder name drm/vkms: Introduce config for CRTC name drm/vkms: Add test for config structure drm/vkms: Introduce config for connector drm/vkms: Introduce config for connector type drm/vkms: Introduce config for plane format drm/vkms: Introduce config for connector status drm/vkms: Introduce config for connector EDID drm/vkms: Introduce config for encoder type drivers/gpu/drm/vkms/Makefile | 3 +- drivers/gpu/drm/vkms/tests/Makefile | 3 + drivers/gpu/drm/vkms/tests/vkms_config_test.c | 137 +++++++ drivers/gpu/drm/vkms/vkms_config.c | 556 ++++++++++++++++++++++++++ drivers/gpu/drm/vkms/vkms_config.h | 237 +++++++++++ drivers/gpu/drm/vkms/vkms_crtc.c | 10 +- drivers/gpu/drm/vkms/vkms_drv.c | 42 +- drivers/gpu/drm/vkms/vkms_drv.h | 25 +- drivers/gpu/drm/vkms/vkms_output.c | 192 +++++---- drivers/gpu/drm/vkms/vkms_plane.c | 21 +- 10 files changed, 1088 insertions(+), 138 deletions(-) --- base-commit: 49a167c393b0ceb592b9d2e65cc4f46bcc707108 change-id: 20240521-google-remove-crtc-index-from-parameter-f9afb21c7a85 Best regards, -- Louis Chauvet <louis.chauvet@bootlin.com>