Lines Matching defs:connector
73 struct wsi_display_connector *connector;
212 struct wsi_display_connector *connector,
215 wsi_for_each_display_mode(display_mode, connector) {
224 struct wsi_display_connector *connector)
226 wsi_for_each_display_mode(display_mode, connector) {
233 struct wsi_display_connector *connector,
239 wsi_display_find_drm_mode(wsi_device, connector, drm_mode);
251 display_mode->connector = connector;
267 list_addtail(&display_mode->list, &connector->display_modes);
272 * Update our information about a specific connector
282 wsi_for_each_connector(connector, wsi) {
283 if (connector->id == connector_id)
284 return connector;
294 struct wsi_display_connector *connector =
298 connector->id = connector_id;
299 connector->wsi = wsi;
300 connector->active = false;
302 connector->name = "monitor";
303 list_inithead(&connector->display_modes);
304 return connector;
324 struct wsi_display_connector *connector =
327 if (!connector) {
328 connector = wsi_display_alloc_connector(wsi, connector_id);
329 if (!connector) {
333 list_addtail(&connector->list, &wsi->connectors);
336 connector->connected = drm_connector->connection != DRM_MODE_DISCONNECTED;
339 for (int p = 0; connector->dpms_property == 0 &&
348 connector->dpms_property = drm_connector->props[p];
353 /* Mark all connector modes as invalid */
354 wsi_display_invalidate_connector_modes(wsi_device, connector);
362 connector,
372 return connector;
386 struct wsi_display_connector *connector,
392 properties->display = wsi_display_connector_to_handle(connector);
393 properties->displayName = connector->name;
401 wsi_for_each_display_mode(display_mode, connector) {
501 struct wsi_display_connector *connector =
504 if (!connector) {
532 wsi_for_each_connector(connector, wsi) {
533 if (connector->connected) {
536 connector,
555 struct wsi_display_connector *connector,
561 if (connector && connector->active) {
562 prop->currentDisplay = wsi_display_connector_to_handle(connector);
587 wsi_for_each_connector(connector, wsi) {
592 wsi_display_fill_in_display_plane_properties(wsi_device, connector,
622 wsi_for_each_connector(connector, wsi) {
624 wsi_display_fill_in_display_plane_properties(wsi_device, connector,
654 wsi_for_each_connector(connector, wsi) {
655 if (c == planeIndex && connector->connected) {
657 *display = wsi_display_connector_to_handle(connector);
693 struct wsi_display_connector *connector =
699 wsi_for_each_display_mode(display_mode, connector) {
723 struct wsi_display_connector *connector =
729 wsi_for_each_display_mode(display_mode, connector) {
760 struct wsi_display_connector *connector =
771 wsi_for_each_display_mode(display_mode, connector) {
1056 if (wsi_device_matches_drm_fd(wsi_device, mode->connector->wsi->fd)) {
1408 drmModeConnectorPtr connector,
1413 if (mode_res->connectors[c] == connector->connector_id)
1420 bool match = (other_connector->encoder_id == connector->encoder_id);
1429 if (mode_res->encoders[e] == connector->encoder_id)
1446 * Pick a suitable CRTC to drive this connector. Prefer a CRTC which is
1447 * currently driving this connector and not any others. Settle for a CRTC
1451 wsi_display_select_crtc(const struct wsi_display_connector *connector,
1455 struct wsi_display *wsi = connector->wsi;
1457 /* See what CRTC is currently driving this connector */
1482 wsi_display_setup_connector(wsi_display_connector *connector,
1485 struct wsi_display *wsi = connector->wsi;
1487 if (connector->current_mode == display_mode && connector->crtc_id)
1502 drmModeGetConnectorCurrent(wsi->fd, connector->id);
1513 if (!connector->crtc_id) {
1514 connector->crtc_id = wsi_display_select_crtc(connector,
1516 if (!connector->crtc_id) {
1522 if (connector->current_mode != display_mode) {
1539 connector->current_mode = display_mode;
1540 connector->current_drm_mode = *drm_mode;
1731 struct wsi_display_connector *connector =
1738 * point crtc_id will be 0. If this is the case we setup the connector
1741 if (!connector->crtc_id) {
1742 VkResult ret = wsi_display_setup_connector(connector,
1743 connector->current_mode);
1749 int ret = drmCrtcQueueSequence(wsi->fd, connector->crtc_id,
1801 wsi_display_connector *connector = display_mode->connector;
1806 if (display_mode != connector->current_mode)
1807 connector->active = false;
1837 if (connector->active) {
1838 ret = drmModePageFlip(wsi->fd, connector->crtc_id, image->fb_id,
1850 VkResult result = wsi_display_setup_connector(connector, display_mode);
1858 ret = drmModeSetCrtc(wsi->fd, connector->crtc_id,
1860 &connector->id, 1,
1861 &connector->current_drm_mode);
1867 ret = drmModeSetCursor(wsi->fd, connector->crtc_id, 0, 0, 0 );
1877 connector->active = true;
1883 connector->active = false;
1892 connector->active = false;
2205 wsi_for_each_connector(connector, wsi) {
2206 wsi_for_each_display_mode(mode, connector) {
2209 vk_free(wsi->alloc, connector);
2264 wsi_for_each_connector(connector, wsi) {
2265 if (connector->output == output)
2266 return connector;
2352 * Given a kernel connector id, find the associated RandR output using the
2458 struct wsi_display_connector *connector,
2461 wsi_for_each_display_mode(display_mode, connector) {
2470 struct wsi_display_connector *connector,
2477 wsi_display_find_x_mode(wsi_device, connector, x_mode);
2489 display_mode->connector = connector;
2505 list_addtail(&display_mode->list, &connector->display_modes);
2516 struct wsi_display_connector *connector;
2523 /* See if we already have a connector for this output */
2524 connector = wsi_display_find_output(wsi_device, output);
2526 if (!connector) {
2530 * Go get the kernel connector ID for this X output
2541 /* See if we already have a connector for this id */
2542 connector = wsi_display_find_connector(wsi_device, connector_id);
2544 if (connector == NULL) {
2545 connector = wsi_display_alloc_connector(wsi, connector_id);
2546 if (!connector) {
2549 list_addtail(&connector->list, &wsi->connectors);
2551 connector->output = output;
2566 connector->connected =
2569 wsi_display_invalidate_connector_modes(wsi_device, connector);
2579 wsi_device, connector, mi, m < oir->num_preferred);
2594 return connector;
2661 struct wsi_display_connector *connector =
2669 if (!connector->output) {
2670 connector->output = wsi_display_connector_id_to_output(connection,
2671 connector->id);
2674 if (!connector->output)
2678 root = wsi_display_output_to_root(connection, connector->output);
2684 connector->output);
2693 &crtc, &connector->output);
2724 struct wsi_display_connector *connector =
2728 if (connector)
2729 *pDisplay = wsi_display_connector_to_handle(connector);
2747 struct wsi_display_connector *connector =
2766 connector->id,
2767 connector->dpms_property,
2951 struct wsi_display_connector *connector =
2952 wsi_display_mode_from_handle(swapchain->surface->displayMode)->connector;
2957 if (!connector->active) {
2962 int ret = drmCrtcGetSequence(wsi->fd, connector->crtc_id,
2988 struct wsi_display_connector *connector =
2992 drmModeGetConnectorCurrent(drmFd, connector->id);
3015 struct wsi_display_connector *connector =
3018 if (!connector) {
3023 *pDisplay = wsi_display_connector_to_handle(connector);