| d5be7722 | 03-Apr-2025 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: Retry pv-muxing tests when EDEADLK
Some functions used by the HVS->PV muxing tests can return with EDEADLK, meaning the entire sequence should be restarted. It's not a fatal error an
drm/vc4: tests: Retry pv-muxing tests when EDEADLK
Some functions used by the HVS->PV muxing tests can return with EDEADLK, meaning the entire sequence should be restarted. It's not a fatal error and we should treat it as a recoverable error, and recover, instead of failing the test like we currently do.
Fixes: 76ec18dc5afa ("drm/vc4: tests: Add unit test suite for the PV muxing") Reviewed-by: Maíra Canal <mcanal@igalia.com> Link: https://lore.kernel.org/r/20250403-drm-vc4-kunit-failures-v2-4-e09195cc8840@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 7e0351ae | 03-Apr-2025 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: Stop allocating the state in test init
The vc4-pv-muxing-combinations and vc5-pv-muxing-combinations test suites use a common test init function which, in part, allocates the drm ato
drm/vc4: tests: Stop allocating the state in test init
The vc4-pv-muxing-combinations and vc5-pv-muxing-combinations test suites use a common test init function which, in part, allocates the drm atomic state the test will use.
That allocation relies on drm_kunit_helper_atomic_state_alloc(), and thus requires a struct drm_modeset_acquire_ctx. This context will then be stored in the allocated state->acquire_ctx field.
However, the context is local to the test init function, and is cleared as soon as drm_kunit_helper_atomic_state_alloc() is done. We thus end up with an dangling pointer to a cleared context in state->acquire_ctx for our test to consumes.
We should really allocate the context and the state in the test functions, so we can also control when we're done with it.
Fixes: 30188df0c387 ("drm/tests: Drop drm_kunit_helper_acquire_ctx_alloc()") Reviewed-by: Maíra Canal <mcanal@igalia.com> Link: https://lore.kernel.org/r/20250403-drm-vc4-kunit-failures-v2-3-e09195cc8840@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 321e6447 | 03-Apr-2025 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: Document output handling functions
vc4_mock_atomic_add_output() and vc4_mock_atomic_del_output() are public but aren't documented. Let's provide the documentation.
In particular, sp
drm/vc4: tests: Document output handling functions
vc4_mock_atomic_add_output() and vc4_mock_atomic_del_output() are public but aren't documented. Let's provide the documentation.
In particular, special care should be taken to deal with EDEADLK.
Reviewed-by: Maíra Canal <mcanal@igalia.com> Link: https://lore.kernel.org/r/20250403-drm-vc4-kunit-failures-v2-2-e09195cc8840@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 7dc41ea6 | 25-Oct-2024 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: txp: Add a new TXP encoder type
Starting with BCM2712, we'll have a two TXP. Let's follow the HDMI example and add two encoder types for TXP: TXP0 and TXP1.
Signed-off-by: Maxime Ripard <m
drm/vc4: txp: Add a new TXP encoder type
Starting with BCM2712, we'll have a two TXP. Let's follow the HDMI example and add two encoder types for TXP: TXP0 and TXP1.
Signed-off-by: Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20241025-drm-vc4-2712-support-v2-19-35efa83c8fc0@raspberrypi.com Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
show more ...
|
| 4013716d | 25-Oct-2024 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: txp: Rename TXP data structure
The TXP data structure has a name too generic for the multiple variants we'll have to support. Let's rename it to mention the SoC it applies to.
Signed-off-b
drm/vc4: txp: Rename TXP data structure
The TXP data structure has a name too generic for the multiple variants we'll have to support. Let's rename it to mention the SoC it applies to.
Signed-off-by: Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20241025-drm-vc4-2712-support-v2-14-35efa83c8fc0@raspberrypi.com Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
show more ...
|
| 7621db4d | 21-Jun-2024 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: hvs: Change prototype of __vc4_hvs_alloc to pass registers
The BCM2712 HVS has registers to report the size of the various SRAM the driver uses, and their size actually differ depending on
drm/vc4: hvs: Change prototype of __vc4_hvs_alloc to pass registers
The BCM2712 HVS has registers to report the size of the various SRAM the driver uses, and their size actually differ depending on the stepping.
The initialisation of the memory pools happen in the __vc4_hvs_alloc() function that also allocates the main HVS structure, that will then hold the pointer to the memory mapping of the registers.
This creates some kind of circular dependency that we can break by passing the mapping pointer as an argument for __vc4_hvs_alloc() to use to query to get the SRAM sizes and initialise the memory pools accordingly.
Signed-off-by: Maxime Ripard <mripard@kernel.org> Reviewed-by: Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20240621152055.4180873-29-dave.stevenson@raspberrypi.com Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
show more ...
|
| b3bf1955 | 27-May-2024 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: Convert to plane creation helper
Now that we have a plane create helper for kunit mocked drivers, let's convert to it in vc4.
Reviewed-by: Maíra Canal <mcanal@igalia.com> Link: http
drm/vc4: tests: Convert to plane creation helper
Now that we have a plane create helper for kunit mocked drivers, let's convert to it in vc4.
Reviewed-by: Maíra Canal <mcanal@igalia.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240527-kms-hdmi-connector-state-v15-27-c5af16c3aae2@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| b229ea58 | 28-Jul-2023 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: pv-muxing: Document test scenario
We've had a couple of tests that weren't really obvious, nor did they document what they were supposed to test. Document that to make it hopefully m
drm/vc4: tests: pv-muxing: Document test scenario
We've had a couple of tests that weren't really obvious, nor did they document what they were supposed to test. Document that to make it hopefully more obvious.
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Maíra Canal <mairacanal@riseup.net> Link: https://lore.kernel.org/r/20230728-kms-kunit-actions-rework-v3-11-952565ccccfe@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 1ef726c8 | 28-Jul-2023 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: Switch to atomic state allocation helper
Now that we have a helper that takes care of an atomic state allocation and cleanup, we can migrate to it to simplify our tests.
Reviewed-by
drm/vc4: tests: Switch to atomic state allocation helper
Now that we have a helper that takes care of an atomic state allocation and cleanup, we can migrate to it to simplify our tests.
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Maíra Canal <mairacanal@riseup.net> Link: https://lore.kernel.org/r/20230728-kms-kunit-actions-rework-v3-10-952565ccccfe@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 55ab5e60 | 28-Jul-2023 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: pv-muxing: Switch to managed locking init
The new helper to init the locking context allows to remove some boilerplate.
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Re
drm/vc4: tests: pv-muxing: Switch to managed locking init
The new helper to init the locking context allows to remove some boilerplate.
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Maíra Canal <mairacanal@riseup.net> Link: https://lore.kernel.org/r/20230728-kms-kunit-actions-rework-v3-9-952565ccccfe@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|
| 571f88b0 | 28-Jul-2023 |
Maxime Ripard <mripard@kernel.org> |
drm/vc4: tests: mock: Use a kunit action to unregister DRM device
The *_mock_device functions allocate a DRM device that needs to be released using drm_dev_unregister.
Now that we have a kunit rele
drm/vc4: tests: mock: Use a kunit action to unregister DRM device
The *_mock_device functions allocate a DRM device that needs to be released using drm_dev_unregister.
Now that we have a kunit release action API, we can switch to it and don't require any kind of garbage collection from the caller.
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Maíra Canal <mairacanal@riseup.net> Link: https://lore.kernel.org/r/20230728-kms-kunit-actions-rework-v3-8-952565ccccfe@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
show more ...
|