diff options
-rw-r--r-- | lib/igt_kms.c | 44 | ||||
-rw-r--r-- | lib/igt_kms.h | 7 | ||||
-rw-r--r-- | tests/chamelium.c | 3 |
3 files changed, 9 insertions, 45 deletions
diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 5f540213..ad0855d0 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -187,7 +187,8 @@ const char *igt_crtc_prop_names[IGT_NUM_CRTC_PROPS] = { const char *igt_connector_prop_names[IGT_NUM_CONNECTOR_PROPS] = { "scaling mode", "CRTC_ID", - "DPMS" + "DPMS", + "Broadcast RGB" }; /* @@ -1038,40 +1039,6 @@ void kmstest_set_connector_dpms(int fd, drmModeConnector *connector, int mode) } /** - * kmstest_set_connector_broadcast_rgb: - * @fd: DRM fd - * @connector: libdrm connector - * @mode: Broadcast RGB mode - * - * This function sets the Broadcast RGB prop of @connector to @mode, if there - * is one. - * - * Returns: true if we found and set the Broadcast RGB prop, false otherwise - */ -bool kmstest_set_connector_broadcast_rgb(int fd, drmModeConnector *connector, - enum kmstest_broadcast_rgb_mode mode) -{ - uint32_t prop_id; - int ret; - - ret = kmstest_get_property(fd, connector->connector_id, - DRM_MODE_OBJECT_CONNECTOR, "Broadcast RGB", - &prop_id, NULL, NULL); - if (!ret) { - igt_debug("Broadcast RGB property not found on %d\n", - connector->connector_id); - return false; - } - - igt_debug("Setting Broadcast RGB mode on connector %d to %d\n", - connector->connector_id, mode); - ret = drmModeConnectorSetProperty(fd, connector->connector_id, prop_id, - mode); - - return ret == 0; -} - -/** * kmstest_get_property: * @drm_fd: drm file descriptor * @object_id: object whose properties we're going to get @@ -1583,9 +1550,10 @@ static void igt_output_refresh(igt_output_t *output) igt_atomic_fill_connector_props(display, output, IGT_NUM_CONNECTOR_PROPS, igt_connector_prop_names); - kmstest_set_connector_broadcast_rgb(display->drm_fd, - output->config.connector, - BROADCAST_RGB_FULL); + if (output->props[IGT_CONNECTOR_BROADCAST_RGB]) + igt_output_set_prop_value(output, + IGT_CONNECTOR_BROADCAST_RGB, + BROADCAST_RGB_FULL); } LOG(display, "%s: Selecting pipe %s\n", output->name, diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 2e4c2343..b8a04af7 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -115,6 +115,7 @@ enum igt_atomic_connector_properties { IGT_CONNECTOR_SCALING_MODE = 0, IGT_CONNECTOR_CRTC_ID, IGT_CONNECTOR_DPMS, + IGT_CONNECTOR_BROADCAST_RGB, IGT_NUM_CONNECTOR_PROPS }; @@ -171,13 +172,13 @@ enum kmstest_force_connector_state { }; /** - * kmstest_broadcast_rgb_mode: + * intel_broadcast_rgb_mode: * @BROADCAST_RGB_AUTO: Choose the color range to use automatically * @BROADCAST_RGB_FULL: Force the connector to use full color range * @BROADCAST_RGB_16_235: Force the connector to use a limited 16:235 color * range */ -enum kmstest_broadcast_rgb_mode { +enum intel_broadcast_rgb_mode { BROADCAST_RGB_AUTO = 0, BROADCAST_RGB_FULL, BROADCAST_RGB_16_235 @@ -203,8 +204,6 @@ bool kmstest_probe_connector_config(int drm_fd, uint32_t connector_id, void kmstest_free_connector_config(struct kmstest_connector_config *config); void kmstest_set_connector_dpms(int fd, drmModeConnector *connector, int mode); -bool kmstest_set_connector_broadcast_rgb(int fd, drmModeConnector *connector, - enum kmstest_broadcast_rgb_mode mode); bool kmstest_get_property(int drm_fd, uint32_t object_id, uint32_t object_type, const char *name, uint32_t *prop_id, uint64_t *value, drmModePropertyPtr *prop); diff --git a/tests/chamelium.c b/tests/chamelium.c index ae164920..4ad29f9d 100644 --- a/tests/chamelium.c +++ b/tests/chamelium.c @@ -466,9 +466,6 @@ enable_output(data_t *data, igt_pipe_obj_replace_prop_blob(primary->pipe, IGT_CRTC_GAMMA_LUT, NULL, 0); igt_pipe_obj_replace_prop_blob(primary->pipe, IGT_CRTC_CTM, NULL, 0); - kmstest_set_connector_broadcast_rgb(display->drm_fd, connector, - BROADCAST_RGB_FULL); - igt_display_commit(display); if (chamelium_port_get_type(port) == DRM_MODE_CONNECTOR_VGA) |