Lines Matching refs:connector

71 	struct drm_connector *connector = to_drm_connector(dev);
73 return to_acpi_device_node(connector->fwnode);
189 struct drm_connector *connector = to_drm_connector(device);
190 struct drm_device *dev = connector->dev;
198 old_force = connector->force;
201 connector->force = 0;
203 connector->force = DRM_FORCE_ON;
205 connector->force = DRM_FORCE_ON_DIGITAL;
207 connector->force = DRM_FORCE_OFF;
211 if (old_force != connector->force || !connector->force) {
213 connector->base.id,
214 connector->name,
215 old_force, connector->force);
217 connector->funcs->fill_modes(connector,
231 struct drm_connector *connector = to_drm_connector(device);
234 status = READ_ONCE(connector->status);
244 struct drm_connector *connector = to_drm_connector(device);
247 dpms = READ_ONCE(connector->dpms);
256 struct drm_connector *connector = to_drm_connector(device);
259 enabled = READ_ONCE(connector->encoder);
269 struct drm_connector *connector = to_drm_connector(connector_dev);
274 mutex_lock(&connector->dev->mode_config.mutex);
275 if (!connector->edid_blob_ptr)
278 edid = connector->edid_blob_ptr->data;
279 size = connector->edid_blob_ptr->length;
292 mutex_unlock(&connector->dev->mode_config.mutex);
301 struct drm_connector *connector = to_drm_connector(device);
305 mutex_lock(&connector->dev->mode_config.mutex);
306 list_for_each_entry(mode, &connector->modes, head) {
310 mutex_unlock(&connector->dev->mode_config.mutex);
319 struct drm_connector *connector = to_drm_connector(device);
321 return sysfs_emit(buf, "%d\n", connector->base.id);
361 int drm_sysfs_connector_add(struct drm_connector *connector)
363 struct drm_device *dev = connector->dev;
367 if (connector->kdev)
380 dev_set_drvdata(kdev, connector);
382 r = dev_set_name(kdev, "card%d-%s", dev->primary->index, connector->name);
387 connector->name);
391 drm_err(dev, "failed to register connector device: %d\n", r);
395 connector->kdev = kdev;
400 drm_err(dev, "failed to add component to create link to typec connector\n");
410 int drm_sysfs_connector_add_late(struct drm_connector *connector)
412 if (connector->ddc)
413 return sysfs_create_link(&connector->kdev->kobj,
414 &connector->ddc->dev.kobj, "ddc");
419 void drm_sysfs_connector_remove_early(struct drm_connector *connector)
421 if (connector->ddc)
422 sysfs_remove_link(&connector->kdev->kobj, "ddc");
425 void drm_sysfs_connector_remove(struct drm_connector *connector)
427 if (!connector->kdev)
430 if (dev_fwnode(connector->kdev))
431 component_del(connector->kdev, &typec_connector_ops);
434 connector->name);
436 device_unregister(connector->kdev);
437 connector->kdev = NULL;
459 * for uevents on connector status change.
473 * drm_sysfs_connector_hotplug_event - generate a DRM uevent for any connector
475 * @connector: connector which has changed
477 * Send a uevent for the DRM connector specified by @connector. This will send
480 void drm_sysfs_connector_hotplug_event(struct drm_connector *connector)
482 struct drm_device *dev = connector->dev;
487 "CONNECTOR=%u", connector->base.id);
489 drm_dbg_kms(connector->dev,
490 "[CONNECTOR:%d:%s] generating connector hotplug event\n",
491 connector->base.id, connector->name);
498 * drm_sysfs_connector_property_event - generate a DRM uevent for connector
500 * @connector: connector on which property changed
501 * @property: connector property which has changed.
503 * Send a uevent for the specified DRM connector and property. Currently we
504 * set HOTPLUG=1 and connector id along with the attached property id
507 void drm_sysfs_connector_property_event(struct drm_connector *connector,
510 struct drm_device *dev = connector->dev;
514 WARN_ON(!drm_mode_obj_find_prop_id(&connector->base,
518 "CONNECTOR=%u", connector->base.id);
522 drm_dbg_kms(connector->dev,
523 "[CONNECTOR:%d:%s] generating connector property event for [PROP:%d:%s]\n",
524 connector->base.id, connector->name,