drm/vc4: tests: Switch generation mockup to a switch
authorMaxime Ripard <maxime@cerno.tech>
Fri, 17 Feb 2023 12:35:16 +0000 (13:35 +0100)
committerDom Cobley <popcornmix@gmail.com>
Mon, 19 Feb 2024 11:34:59 +0000 (11:34 +0000)
Testing whether the VideoCore generation we want to mock is vc5 or vc4
worked so far, but will be difficult to extend to support BCM2712 (VC6).

Convert to a switch.

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
drivers/gpu/drm/vc4/tests/vc4_mock.c

index 123380a..b407f01 100644 (file)
@@ -162,13 +162,27 @@ static void kunit_action_drm_dev_unregister(void *ptr)
 
 static struct vc4_dev *__mock_device(struct kunit *test, enum vc4_gen gen)
 {
+       const struct vc4_mock_desc *desc;
+       const struct drm_driver *drv;
        struct drm_device *drm;
-       const struct drm_driver *drv = (gen == VC4_GEN_5) ? &vc5_drm_driver : &vc4_drm_driver;
-       const struct vc4_mock_desc *desc = (gen == VC4_GEN_5) ? &vc5_mock : &vc4_mock;
        struct vc4_dev *vc4;
        struct device *dev;
        int ret;
 
+       switch (gen) {
+       case VC4_GEN_4:
+               drv = &vc4_drm_driver;
+               desc = &vc4_mock;
+               break;
+       case VC4_GEN_5:
+               drv = &vc5_drm_driver;
+               desc = &vc5_mock;
+               break;
+
+       default:
+               return NULL;
+       }
+
        dev = drm_kunit_helper_alloc_device(test);
        KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev);