Lines Matching refs:dev
149 struct drm_device *dev = connector->dev; in drm_connector_free() local
151 drm_mode_object_unregister(dev, &connector->base); in drm_connector_free()
158 struct drm_device *dev = in drm_connector_free_work_fn() local
160 struct drm_mode_config *config = &dev->mode_config; in drm_connector_free_work_fn()
169 drm_mode_object_unregister(dev, &connector->base); in drm_connector_free_work_fn()
187 int drm_connector_init(struct drm_device *dev, in drm_connector_init() argument
192 struct drm_mode_config *config = &dev->mode_config; in drm_connector_init()
197 ret = __drm_mode_object_add(dev, &connector->base, in drm_connector_init()
204 connector->dev = dev; in drm_connector_init()
260 if (drm_core_check_feature(dev, DRIVER_ATOMIC)) { in drm_connector_init()
273 drm_mode_object_unregister(dev, &connector->base); in drm_connector_init()
324 drm_mode_destroy(connector->dev, mode); in drm_mode_remove()
335 struct drm_device *dev = connector->dev; in drm_connector_cleanup() local
345 drm_mode_put_tile_group(dev, connector->tile_group); in drm_connector_cleanup()
358 ida_simple_remove(&dev->mode_config.connector_ida, in drm_connector_cleanup()
362 drm_mode_object_unregister(dev, &connector->base); in drm_connector_cleanup()
365 spin_lock_irq(&dev->mode_config.connector_list_lock); in drm_connector_cleanup()
367 dev->mode_config.num_connector--; in drm_connector_cleanup()
368 spin_unlock_irq(&dev->mode_config.connector_list_lock); in drm_connector_cleanup()
394 if (!connector->dev->registered) in drm_connector_register()
416 drm_mode_object_register(connector->dev, &connector->base); in drm_connector_register()
456 void drm_connector_unregister_all(struct drm_device *dev) in drm_connector_unregister_all() argument
461 drm_connector_list_iter_begin(dev, &conn_iter); in drm_connector_unregister_all()
467 int drm_connector_register_all(struct drm_device *dev) in drm_connector_register_all() argument
473 drm_connector_list_iter_begin(dev, &conn_iter); in drm_connector_register_all()
482 drm_connector_unregister_all(dev); in drm_connector_register_all()
542 void drm_connector_list_iter_begin(struct drm_device *dev, in drm_connector_list_iter_begin() argument
545 iter->dev = dev; in drm_connector_list_iter_begin()
559 struct drm_mode_config *config = &conn->dev->mode_config; in __drm_connector_put_safe()
581 struct drm_mode_config *config = &iter->dev->mode_config; in drm_connector_list_iter_next()
619 struct drm_mode_config *config = &iter->dev->mode_config; in drm_connector_list_iter_end()
622 iter->dev = NULL; in drm_connector_list_iter_end()
825 int drm_connector_create_standard_properties(struct drm_device *dev) in DRM_ENUM_NAME_FN()
829 prop = drm_property_create(dev, DRM_MODE_PROP_BLOB | in DRM_ENUM_NAME_FN()
834 dev->mode_config.edid_property = prop; in DRM_ENUM_NAME_FN()
836 prop = drm_property_create_enum(dev, 0, in DRM_ENUM_NAME_FN()
841 dev->mode_config.dpms_property = prop; in DRM_ENUM_NAME_FN()
843 prop = drm_property_create(dev, in DRM_ENUM_NAME_FN()
849 dev->mode_config.path_property = prop; in DRM_ENUM_NAME_FN()
851 prop = drm_property_create(dev, in DRM_ENUM_NAME_FN()
857 dev->mode_config.tile_property = prop; in DRM_ENUM_NAME_FN()
859 prop = drm_property_create_enum(dev, 0, "link-status", in DRM_ENUM_NAME_FN()
864 dev->mode_config.link_status_property = prop; in DRM_ENUM_NAME_FN()
866 prop = drm_property_create_bool(dev, DRM_MODE_PROP_IMMUTABLE, "non-desktop"); in DRM_ENUM_NAME_FN()
869 dev->mode_config.non_desktop_property = prop; in DRM_ENUM_NAME_FN()
880 int drm_mode_create_dvi_i_properties(struct drm_device *dev) in drm_mode_create_dvi_i_properties() argument
885 if (dev->mode_config.dvi_i_select_subconnector_property) in drm_mode_create_dvi_i_properties()
889 drm_property_create_enum(dev, 0, in drm_mode_create_dvi_i_properties()
893 dev->mode_config.dvi_i_select_subconnector_property = dvi_i_selector; in drm_mode_create_dvi_i_properties()
895 dvi_i_subconnector = drm_property_create_enum(dev, DRM_MODE_PROP_IMMUTABLE, in drm_mode_create_dvi_i_properties()
899 dev->mode_config.dvi_i_subconnector_property = dvi_i_subconnector; in drm_mode_create_dvi_i_properties()
916 int drm_mode_create_tv_properties(struct drm_device *dev, in drm_mode_create_tv_properties() argument
924 if (dev->mode_config.tv_select_subconnector_property) in drm_mode_create_tv_properties()
930 tv_selector = drm_property_create_enum(dev, 0, in drm_mode_create_tv_properties()
937 dev->mode_config.tv_select_subconnector_property = tv_selector; in drm_mode_create_tv_properties()
940 drm_property_create_enum(dev, DRM_MODE_PROP_IMMUTABLE, in drm_mode_create_tv_properties()
946 dev->mode_config.tv_subconnector_property = tv_subconnector; in drm_mode_create_tv_properties()
951 dev->mode_config.tv_left_margin_property = in drm_mode_create_tv_properties()
952 drm_property_create_range(dev, 0, "left margin", 0, 100); in drm_mode_create_tv_properties()
953 if (!dev->mode_config.tv_left_margin_property) in drm_mode_create_tv_properties()
956 dev->mode_config.tv_right_margin_property = in drm_mode_create_tv_properties()
957 drm_property_create_range(dev, 0, "right margin", 0, 100); in drm_mode_create_tv_properties()
958 if (!dev->mode_config.tv_right_margin_property) in drm_mode_create_tv_properties()
961 dev->mode_config.tv_top_margin_property = in drm_mode_create_tv_properties()
962 drm_property_create_range(dev, 0, "top margin", 0, 100); in drm_mode_create_tv_properties()
963 if (!dev->mode_config.tv_top_margin_property) in drm_mode_create_tv_properties()
966 dev->mode_config.tv_bottom_margin_property = in drm_mode_create_tv_properties()
967 drm_property_create_range(dev, 0, "bottom margin", 0, 100); in drm_mode_create_tv_properties()
968 if (!dev->mode_config.tv_bottom_margin_property) in drm_mode_create_tv_properties()
971 dev->mode_config.tv_mode_property = in drm_mode_create_tv_properties()
972 drm_property_create(dev, DRM_MODE_PROP_ENUM, in drm_mode_create_tv_properties()
974 if (!dev->mode_config.tv_mode_property) in drm_mode_create_tv_properties()
978 drm_property_add_enum(dev->mode_config.tv_mode_property, i, in drm_mode_create_tv_properties()
981 dev->mode_config.tv_brightness_property = in drm_mode_create_tv_properties()
982 drm_property_create_range(dev, 0, "brightness", 0, 100); in drm_mode_create_tv_properties()
983 if (!dev->mode_config.tv_brightness_property) in drm_mode_create_tv_properties()
986 dev->mode_config.tv_contrast_property = in drm_mode_create_tv_properties()
987 drm_property_create_range(dev, 0, "contrast", 0, 100); in drm_mode_create_tv_properties()
988 if (!dev->mode_config.tv_contrast_property) in drm_mode_create_tv_properties()
991 dev->mode_config.tv_flicker_reduction_property = in drm_mode_create_tv_properties()
992 drm_property_create_range(dev, 0, "flicker reduction", 0, 100); in drm_mode_create_tv_properties()
993 if (!dev->mode_config.tv_flicker_reduction_property) in drm_mode_create_tv_properties()
996 dev->mode_config.tv_overscan_property = in drm_mode_create_tv_properties()
997 drm_property_create_range(dev, 0, "overscan", 0, 100); in drm_mode_create_tv_properties()
998 if (!dev->mode_config.tv_overscan_property) in drm_mode_create_tv_properties()
1001 dev->mode_config.tv_saturation_property = in drm_mode_create_tv_properties()
1002 drm_property_create_range(dev, 0, "saturation", 0, 100); in drm_mode_create_tv_properties()
1003 if (!dev->mode_config.tv_saturation_property) in drm_mode_create_tv_properties()
1006 dev->mode_config.tv_hue_property = in drm_mode_create_tv_properties()
1007 drm_property_create_range(dev, 0, "hue", 0, 100); in drm_mode_create_tv_properties()
1008 if (!dev->mode_config.tv_hue_property) in drm_mode_create_tv_properties()
1028 int drm_mode_create_scaling_mode_property(struct drm_device *dev) in drm_mode_create_scaling_mode_property() argument
1032 if (dev->mode_config.scaling_mode_property) in drm_mode_create_scaling_mode_property()
1036 drm_property_create_enum(dev, 0, "scaling mode", in drm_mode_create_scaling_mode_property()
1040 dev->mode_config.scaling_mode_property = scaling_mode; in drm_mode_create_scaling_mode_property()
1063 struct drm_device *dev = connector->dev; in drm_connector_attach_scaling_mode_property() local
1074 drm_property_create(dev, DRM_MODE_PROP_ENUM, "scaling mode", in drm_connector_attach_scaling_mode_property()
1091 drm_property_destroy(dev, scaling_mode_property); in drm_connector_attach_scaling_mode_property()
1116 int drm_mode_create_aspect_ratio_property(struct drm_device *dev) in drm_mode_create_aspect_ratio_property() argument
1118 if (dev->mode_config.aspect_ratio_property) in drm_mode_create_aspect_ratio_property()
1121 dev->mode_config.aspect_ratio_property = in drm_mode_create_aspect_ratio_property()
1122 drm_property_create_enum(dev, 0, "aspect ratio", in drm_mode_create_aspect_ratio_property()
1126 if (dev->mode_config.aspect_ratio_property == NULL) in drm_mode_create_aspect_ratio_property()
1139 int drm_mode_create_suggested_offset_properties(struct drm_device *dev) in drm_mode_create_suggested_offset_properties() argument
1141 if (dev->mode_config.suggested_x_property && dev->mode_config.suggested_y_property) in drm_mode_create_suggested_offset_properties()
1144 dev->mode_config.suggested_x_property = in drm_mode_create_suggested_offset_properties()
1145 drm_property_create_range(dev, DRM_MODE_PROP_IMMUTABLE, "suggested X", 0, 0xffffffff); in drm_mode_create_suggested_offset_properties()
1147 dev->mode_config.suggested_y_property = in drm_mode_create_suggested_offset_properties()
1148 drm_property_create_range(dev, DRM_MODE_PROP_IMMUTABLE, "suggested Y", 0, 0xffffffff); in drm_mode_create_suggested_offset_properties()
1150 if (dev->mode_config.suggested_x_property == NULL || in drm_mode_create_suggested_offset_properties()
1151 dev->mode_config.suggested_y_property == NULL) in drm_mode_create_suggested_offset_properties()
1173 struct drm_device *dev = connector->dev; in drm_mode_connector_set_path_property() local
1176 ret = drm_property_replace_global_blob(dev, in drm_mode_connector_set_path_property()
1181 dev->mode_config.path_property); in drm_mode_connector_set_path_property()
1199 struct drm_device *dev = connector->dev; in drm_mode_connector_set_tile_property() local
1204 ret = drm_property_replace_global_blob(dev, in drm_mode_connector_set_tile_property()
1209 dev->mode_config.tile_property); in drm_mode_connector_set_tile_property()
1219 ret = drm_property_replace_global_blob(dev, in drm_mode_connector_set_tile_property()
1224 dev->mode_config.tile_property); in drm_mode_connector_set_tile_property()
1243 struct drm_device *dev = connector->dev; in drm_mode_connector_update_edid_property() local
1268 dev->mode_config.non_desktop_property, in drm_mode_connector_update_edid_property()
1271 ret = drm_property_replace_global_blob(dev, in drm_mode_connector_update_edid_property()
1276 dev->mode_config.edid_property); in drm_mode_connector_update_edid_property()
1303 struct drm_device *dev = connector->dev; in drm_mode_connector_set_link_status_property() local
1305 drm_modeset_lock(&dev->mode_config.connection_mutex, NULL); in drm_mode_connector_set_link_status_property()
1307 drm_modeset_unlock(&dev->mode_config.connection_mutex); in drm_mode_connector_set_link_status_property()
1319 if (property == connector->dev->mode_config.dpms_property) { in drm_mode_connector_set_obj_prop()
1329 int drm_mode_connector_property_set_ioctl(struct drm_device *dev, in drm_mode_connector_property_set_ioctl() argument
1341 return drm_mode_obj_set_property_ioctl(dev, &obj_set_prop, file_priv); in drm_mode_connector_property_set_ioctl()
1366 int drm_mode_getconnector(struct drm_device *dev, void *data, in drm_mode_getconnector() argument
1382 if (!drm_core_check_feature(dev, DRIVER_MODESET)) in drm_mode_getconnector()
1387 connector = drm_connector_lookup(dev, file_priv, out_resp->connector_id); in drm_mode_getconnector()
1415 mutex_lock(&dev->mode_config.mutex); in drm_mode_getconnector()
1418 dev->mode_config.max_width, in drm_mode_getconnector()
1419 dev->mode_config.max_height); in drm_mode_getconnector()
1447 mutex_unlock(&dev->mode_config.mutex); in drm_mode_getconnector()
1455 mutex_unlock(&dev->mode_config.mutex); in drm_mode_getconnector()
1457 drm_modeset_lock(&dev->mode_config.connection_mutex, NULL); in drm_mode_getconnector()
1470 drm_modeset_unlock(&dev->mode_config.connection_mutex); in drm_mode_getconnector()
1494 struct drm_device *dev = tg->dev; in drm_tile_group_free() local
1495 mutex_lock(&dev->mode_config.idr_mutex); in drm_tile_group_free()
1496 idr_remove(&dev->mode_config.tile_idr, tg->id); in drm_tile_group_free()
1497 mutex_unlock(&dev->mode_config.idr_mutex); in drm_tile_group_free()
1508 void drm_mode_put_tile_group(struct drm_device *dev, in drm_mode_put_tile_group() argument
1525 struct drm_tile_group *drm_mode_get_tile_group(struct drm_device *dev, in drm_mode_get_tile_group() argument
1530 mutex_lock(&dev->mode_config.idr_mutex); in drm_mode_get_tile_group()
1531 idr_for_each_entry(&dev->mode_config.tile_idr, tg, id) { in drm_mode_get_tile_group()
1535 mutex_unlock(&dev->mode_config.idr_mutex); in drm_mode_get_tile_group()
1539 mutex_unlock(&dev->mode_config.idr_mutex); in drm_mode_get_tile_group()
1555 struct drm_tile_group *drm_mode_create_tile_group(struct drm_device *dev, in drm_mode_create_tile_group() argument
1567 tg->dev = dev; in drm_mode_create_tile_group()
1569 mutex_lock(&dev->mode_config.idr_mutex); in drm_mode_create_tile_group()
1570 ret = idr_alloc(&dev->mode_config.tile_idr, tg, 1, 0, GFP_KERNEL); in drm_mode_create_tile_group()
1578 mutex_unlock(&dev->mode_config.idr_mutex); in drm_mode_create_tile_group()
1597 struct drm_device *dev = connector->dev; in drm_connector_update_edid_property() local
1622 dev->mode_config.non_desktop_property, in drm_connector_update_edid_property()
1625 ret = drm_property_replace_global_blob(dev, in drm_connector_update_edid_property()
1630 dev->mode_config.edid_property); in drm_connector_update_edid_property()