Lines Matching full:connector

24 	struct drm_connector connector;  member
74 strscpy(priv->ddc.name, "dummy-connector-ddc", sizeof(priv->ddc.name)); in drm_test_connector_init()
90 * Test that the registration of a bog standard connector works as
98 ret = drmm_connector_init(&priv->drm, &priv->connector, in drm_test_drmm_connector_init()
106 * Test that the registration of a connector without a DDC adapter
114 ret = drmm_connector_init(&priv->drm, &priv->connector, in drm_test_drmm_connector_init_null_ddc()
122 * Test that the registration of a connector succeeds for all possible
123 * connector types.
131 ret = drmm_connector_init(&priv->drm, &priv->connector, in drm_test_drmm_connector_init_type_valid()
193 * Test that the initialization of a bog standard dynamic connector works
199 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init() local
202 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init()
212 struct drm_connector *connector = &priv->connector; in drm_test_connector_dynamic_init_cleanup() local
214 drm_connector_cleanup(connector); in drm_test_connector_dynamic_init_cleanup()
218 * Test that the initialization of a dynamic connector without a DDC adapter
224 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init_null_ddc() local
227 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init_null_ddc()
235 * Test that the initialization of a dynamic connector doesn't add the
236 * connector to the connector list.
241 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init_not_added() local
244 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init_not_added()
249 KUNIT_ASSERT_PTR_EQ(test, connector->head.next, &connector->head); in drm_test_drm_connector_dynamic_init_not_added()
253 struct drm_connector *connector, in test_connector_property() argument
261 prop = drm_mode_obj_find_prop_id(&connector->base, expected_prop->base.id); in test_connector_property()
265 ret = drm_object_property_get_default_value(&connector->base, prop, &val); in test_connector_property()
269 /* TODO: Check property value in the connector state. */ in test_connector_property()
273 * Test that the initialization of a dynamic connector adds all the expected
279 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init_properties() local
292 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init_properties()
299 test_connector_property(test, connector, props[i]); in drm_test_drm_connector_dynamic_init_properties()
303 * Test that the initialization of a dynamic connector succeeds for all
304 * possible connector types.
309 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init_type_valid() local
313 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init_type_valid()
321 * Test that the initialization of a dynamic connector sets the expected name
322 * for it for all possible connector types.
327 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_init_name() local
332 ret = drm_connector_dynamic_init(&priv->drm, connector, in drm_test_drm_connector_dynamic_init_name()
339 drm_get_connector_type_name(connector_type), connector->connector_type_id); in drm_test_drm_connector_dynamic_init_name()
340 KUNIT_ASSERT_STREQ(test, connector->name, expected_name); in drm_test_drm_connector_dynamic_init_name()
372 ret = drm_connector_dynamic_init(&priv->drm, &priv->connector, in drm_test_connector_dynamic_register_early_init()
384 struct drm_connector *connector = &priv->connector; in drm_test_connector_dynamic_register_early_cleanup() local
386 drm_connector_unregister(connector); in drm_test_connector_dynamic_register_early_cleanup()
387 drm_connector_put(connector); in drm_test_connector_dynamic_register_early_cleanup()
391 * Test that registration of a dynamic connector adds it to the connector list.
396 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_early_on_list() local
399 KUNIT_ASSERT_TRUE(test, list_empty(&connector->head)); in drm_test_drm_connector_dynamic_register_early_on_list()
401 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_early_on_list()
404 KUNIT_ASSERT_PTR_EQ(test, connector->head.next, &priv->drm.mode_config.connector_list); in drm_test_drm_connector_dynamic_register_early_on_list()
408 * Test that the registration of a dynamic connector before the drm device is
409 * registered results in deferring the connector's user interface registration.
414 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_early_defer() local
417 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_early_defer()
420 KUNIT_ASSERT_EQ(test, connector->registration_state, DRM_CONNECTOR_INITIALIZING); in drm_test_drm_connector_dynamic_register_early_defer()
424 * Test that the registration of a dynamic connector fails, if this is done before
425 * the connector is initialized.
429 struct drm_connector *connector; in drm_test_drm_connector_dynamic_register_early_no_init() local
432 connector = kunit_kzalloc(test, sizeof(*connector), GFP_KERNEL); /* auto freed */ in drm_test_drm_connector_dynamic_register_early_no_init()
433 KUNIT_ASSERT_NOT_NULL(test, connector); in drm_test_drm_connector_dynamic_register_early_no_init()
435 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_early_no_init()
440 * Test that the registration of a dynamic connector before the drm device is
441 * registered results in deferring adding a mode object for the connector.
446 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_early_no_mode_object() local
450 ret = drm_connector_dynamic_register(&priv->connector); in drm_test_drm_connector_dynamic_register_early_no_mode_object()
453 tmp_connector = drm_connector_lookup(connector->dev, NULL, connector->base.id); in drm_test_drm_connector_dynamic_register_early_no_mode_object()
482 ret = drm_dev_register(priv->connector.dev, 0); in drm_test_connector_dynamic_register_init()
491 struct drm_device *dev = priv->connector.dev; in drm_test_connector_dynamic_register_cleanup()
493 drm_connector_unregister(&priv->connector); in drm_test_connector_dynamic_register_cleanup()
494 drm_connector_put(&priv->connector); in drm_test_connector_dynamic_register_cleanup()
506 KUNIT_ASSERT_TRUE(test, list_empty(&priv->connector.head)); in drm_test_drm_connector_dynamic_register_on_list()
508 ret = drm_connector_dynamic_register(&priv->connector); in drm_test_drm_connector_dynamic_register_on_list()
511 KUNIT_ASSERT_PTR_EQ(test, priv->connector.head.next, &priv->drm.mode_config.connector_list); in drm_test_drm_connector_dynamic_register_on_list()
515 * Test that the registration of a dynamic connector doesn't get deferred if
523 KUNIT_ASSERT_EQ(test, priv->connector.registration_state, DRM_CONNECTOR_INITIALIZING); in drm_test_drm_connector_dynamic_register_no_defer()
525 ret = drm_connector_dynamic_register(&priv->connector); in drm_test_drm_connector_dynamic_register_no_defer()
528 KUNIT_ASSERT_EQ(test, priv->connector.registration_state, DRM_CONNECTOR_REGISTERED); in drm_test_drm_connector_dynamic_register_no_defer()
532 * Test that the registration of a dynamic connector fails if this is done after the
533 * drm device is registered, but before the connector is initialized.
537 struct drm_connector *connector; in drm_test_drm_connector_dynamic_register_no_init() local
540 connector = kunit_kzalloc(test, sizeof(*connector), GFP_KERNEL); /* auto freed */ in drm_test_drm_connector_dynamic_register_no_init()
541 KUNIT_ASSERT_NOT_NULL(test, connector); in drm_test_drm_connector_dynamic_register_no_init()
543 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_no_init()
548 * Test that the registration of a dynamic connector after the drm device is
549 * registered adds the mode object for the connector.
554 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_mode_object() local
558 tmp_connector = drm_connector_lookup(connector->dev, NULL, connector->base.id); in drm_test_drm_connector_dynamic_register_mode_object()
561 ret = drm_connector_dynamic_register(&priv->connector); in drm_test_drm_connector_dynamic_register_mode_object()
564 tmp_connector = drm_connector_lookup(connector->dev, NULL, connector->base.id); in drm_test_drm_connector_dynamic_register_mode_object()
565 KUNIT_ASSERT_PTR_EQ(test, tmp_connector, connector); in drm_test_drm_connector_dynamic_register_mode_object()
569 * Test that the registration of a dynamic connector after the drm device is
570 * registered adds the connector to sysfs.
575 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_sysfs() local
578 KUNIT_ASSERT_NULL(test, connector->kdev); in drm_test_drm_connector_dynamic_register_sysfs()
580 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_sysfs()
583 KUNIT_ASSERT_NOT_NULL(test, connector->kdev); in drm_test_drm_connector_dynamic_register_sysfs()
587 * Test that the registration of a dynamic connector after the drm device is
588 * registered sets the connector's sysfs name as expected.
593 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_dynamic_register_sysfs_name() local
597 ret = drm_connector_dynamic_register(connector); in drm_test_drm_connector_dynamic_register_sysfs_name()
601 connector->dev->primary->index, connector->name); in drm_test_drm_connector_dynamic_register_sysfs_name()
603 KUNIT_ASSERT_STREQ(test, dev_name(connector->kdev), expected_name); in drm_test_drm_connector_dynamic_register_sysfs_name()
607 * Test that the registration of a dynamic connector after the drm device is
608 * registered adds the connector to debugfs.
615 KUNIT_ASSERT_NULL(test, priv->connector.debugfs_entry); in drm_test_drm_connector_dynamic_register_debugfs()
617 ret = drm_connector_dynamic_register(&priv->connector); in drm_test_drm_connector_dynamic_register_debugfs()
621 KUNIT_ASSERT_NOT_NULL(test, priv->connector.debugfs_entry); in drm_test_drm_connector_dynamic_register_debugfs()
623 KUNIT_ASSERT_NULL(test, priv->connector.debugfs_entry); in drm_test_drm_connector_dynamic_register_debugfs()
645 * Test that the registration of a bog standard connector works as
653 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_valid()
665 * Test that the registration of a connector without a DDC adapter
673 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_null_ddc()
685 * Test that the registration of an HDMI connector with a NULL vendor
693 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_null_vendor()
705 * Test that the registration of an HDMI connector with a NULL product
713 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_null_product()
725 * Test that the registration of a connector with a valid, shorter than
739 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_product_valid()
749 priv->connector.hdmi.product, in drm_test_connector_hdmi_init_product_valid()
751 sizeof(priv->connector.hdmi.product)); in drm_test_connector_hdmi_init_product_valid()
755 * Test that the registration of a connector with a valid, at max
772 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_product_length_exact()
782 priv->connector.hdmi.product, in drm_test_connector_hdmi_init_product_length_exact()
784 sizeof(priv->connector.hdmi.product)); in drm_test_connector_hdmi_init_product_length_exact()
788 * Test that the registration of a connector with a product name larger
799 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_product_length_too_long()
811 * Test that the registration of a connector with a vendor name smaller
825 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_vendor_valid()
835 priv->connector.hdmi.vendor, in drm_test_connector_hdmi_init_vendor_valid()
837 sizeof(priv->connector.hdmi.vendor)); in drm_test_connector_hdmi_init_vendor_valid()
841 * Test that the registration of a connector with a vendor name at the
857 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_vendor_length_exact()
867 priv->connector.hdmi.vendor, in drm_test_connector_hdmi_init_vendor_length_exact()
869 sizeof(priv->connector.hdmi.vendor)); in drm_test_connector_hdmi_init_vendor_length_exact()
873 * Test that the registration of a connector with a vendor name larger
884 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_vendor_length_too_long()
896 * Test that the registration of a connector with an invalid maximum bpc
904 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_bpc_invalid()
916 * Test that the registration of a connector with a null maximum bpc
924 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_bpc_null()
936 * Test that the registration of a connector with a maximum bpc count of
944 struct drm_connector *connector = &priv->connector; in drm_test_connector_hdmi_init_bpc_8() local
949 ret = drmm_connector_hdmi_init(&priv->drm, connector, in drm_test_connector_hdmi_init_bpc_8()
959 prop = connector->max_bpc_property; in drm_test_connector_hdmi_init_bpc_8()
961 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_8()
963 ret = drm_object_property_get_default_value(&connector->base, prop, &val); in drm_test_connector_hdmi_init_bpc_8()
967 state = connector->state; in drm_test_connector_hdmi_init_bpc_8()
973 KUNIT_EXPECT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_8()
977 * Test that the registration of a connector with a maximum bpc count of
985 struct drm_connector *connector = &priv->connector; in drm_test_connector_hdmi_init_bpc_10() local
990 ret = drmm_connector_hdmi_init(&priv->drm, connector, in drm_test_connector_hdmi_init_bpc_10()
1000 prop = connector->max_bpc_property; in drm_test_connector_hdmi_init_bpc_10()
1002 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_10()
1004 ret = drm_object_property_get_default_value(&connector->base, prop, &val); in drm_test_connector_hdmi_init_bpc_10()
1008 state = connector->state; in drm_test_connector_hdmi_init_bpc_10()
1014 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_10()
1018 * Test that the registration of a connector with a maximum bpc count of
1026 struct drm_connector *connector = &priv->connector; in drm_test_connector_hdmi_init_bpc_12() local
1031 ret = drmm_connector_hdmi_init(&priv->drm, connector, in drm_test_connector_hdmi_init_bpc_12()
1041 prop = connector->max_bpc_property; in drm_test_connector_hdmi_init_bpc_12()
1043 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_12()
1045 ret = drm_object_property_get_default_value(&connector->base, prop, &val); in drm_test_connector_hdmi_init_bpc_12()
1049 state = connector->state; in drm_test_connector_hdmi_init_bpc_12()
1055 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_connector_hdmi_init_bpc_12()
1059 * Test that the registration of an HDMI connector with no supported
1067 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_formats_empty()
1079 * Test that the registration of an HDMI connector not listing RGB as a
1087 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_formats_no_rgb()
1132 * Test that the registration of an HDMI connector succeeds only when
1143 priv->connector.ycbcr_420_allowed = params->yuv420_allowed; in drm_test_connector_hdmi_init_formats_yuv420_allowed()
1145 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_formats_yuv420_allowed()
1157 * Test that the registration of an HDMI connector with an HDMI
1158 * connector type succeeds.
1166 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_type_valid()
1192 * Test that the registration of an HDMI connector with an !HDMI
1193 * connector type fails.
1201 ret = drmm_connector_hdmi_init(&priv->drm, &priv->connector, in drm_test_connector_hdmi_init_type_invalid()
1453 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_attach_broadcast_rgb_property() local
1457 ret = drmm_connector_init(&priv->drm, connector, in drm_test_drm_connector_attach_broadcast_rgb_property()
1463 ret = drm_connector_attach_broadcast_rgb_property(connector); in drm_test_drm_connector_attach_broadcast_rgb_property()
1466 prop = connector->broadcast_rgb_property; in drm_test_drm_connector_attach_broadcast_rgb_property()
1468 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_drm_connector_attach_broadcast_rgb_property()
1474 struct drm_connector *connector = &priv->connector; in drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector() local
1478 ret = drmm_connector_hdmi_init(&priv->drm, connector, in drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector()
1488 ret = drm_connector_attach_broadcast_rgb_property(connector); in drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector()
1491 prop = connector->broadcast_rgb_property; in drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector()
1493 KUNIT_EXPECT_NOT_NULL(test, drm_mode_obj_find_prop_id(&connector->base, prop->base.id)); in drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector()