Add more DRM info to wlr_output

Yes I know this is the libinput branch, I thought this would be useful
for a libinput feature (but it wasn't)
This commit is contained in:
Drew DeVault 2017-06-14 16:17:05 -04:00
parent 3f24f8a1be
commit e65f83d7f2
1 changed files with 25 additions and 0 deletions

View File

@ -457,6 +457,31 @@ void wlr_drm_scan_connectors(struct wlr_backend_state *state) {
snprintf(wlr_output->name, sizeof(wlr_output->name), "%s-%"PRIu32,
conn_name[conn->connector_type],
conn->connector_type_id);
wlr_output->phys_width = conn->mmWidth;
wlr_output->phys_height = conn->mmHeight;
switch (conn->subpixel) {
case DRM_MODE_SUBPIXEL_UNKNOWN:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_UNKNOWN;
break;
case DRM_MODE_SUBPIXEL_HORIZONTAL_RGB:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_HORIZONTAL_RGB;
break;
case DRM_MODE_SUBPIXEL_HORIZONTAL_BGR:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_HORIZONTAL_BGR;
break;
case DRM_MODE_SUBPIXEL_VERTICAL_RGB:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_VERTICAL_RGB;
break;
case DRM_MODE_SUBPIXEL_VERTICAL_BGR:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_VERTICAL_BGR;
break;
case DRM_MODE_SUBPIXEL_NONE:
default:
wlr_output->subpixel = WL_OUTPUT_SUBPIXEL_NONE;
break;
}
strcpy(wlr_output->make, "drm");
strcpy(wlr_output->model, "unknown");
drmModeEncoder *curr_enc = drmModeGetEncoder(state->fd, conn->encoder_id);
if (curr_enc) {