• Home
  • Raw
  • Download

Lines Matching full:connector

48 	DRM_FORCE_ON_DIGITAL, /* for DVI-I use digital connector */
54 * This enum is used to track the connector status. There are no separate
59 * @connector_status_connected: The connector is definitely connected to
64 * @connector_status_disconnected: The connector isn't connected to a
67 * nothing there. It is driver-dependent whether a connector with this
72 * @connector_status_unknown: The connector's status could not be
74 * flicker (like load-detection when the connector is in use), or when a
76 * free CRTC). It should be possible to light up the connector with one
79 * there's not connector with @connector_status_connected.
164 * enum drm_link_status - connector's link_status property value
166 * This enum is used as the connector's link status property value.
188 * orientation" connector prop will not be
256 * @panel_orientation: Read only connector property for built-in panels,
347 * struct drm_tv_connector_state - TV connector related states
380 * struct drm_connector_state - mutable connector state
383 /** @connector: backpointer to the connector */
384 struct drm_connector *connector; member
387 * @crtc: CRTC to connect connector to, NULL if disabled.
404 * @link_status: Connector link_status to keep track of whether link is
419 /** @tv: TV connector state */
423 * @picture_aspect_ratio: Connector property to control the
432 * @content_type: Connector property to control the
440 * @scaling_mode: Connector property to control the
446 * @content_protection: Connector property to request content
454 * Holds the framebuffer and out-fence for a writeback connector. As
476 * Legacy entry point to set the per-connector DPMS state. Legacy DPMS
477 * is exposed as a standard property on the connector, but diverted to
479 * implement the 4 level DPMS support on the connector any more, but
489 int (*dpms)(struct drm_connector *connector, int mode);
494 * Reset connector hardware and software state to off. This function isn't
501 void (*reset)(struct drm_connector *connector);
506 * Check to see if anything is attached to the connector. The parameter
508 * connector due to a user request. force can be used by the driver to
511 * This callback is optional, if not implemented the connector will be
518 * core entry point to probe connector state is @fill_modes.
527 * drm_connector_status indicating the connector's status.
529 enum drm_connector_status (*detect)(struct drm_connector *connector,
536 * connector is forced to a certain state by userspace, either through
544 * core entry point to probe connector state is @fill_modes.
546 void (*force)(struct drm_connector *connector);
561 * received for this output connector->edid must be NULL.
571 int (*fill_modes)(struct drm_connector *connector, uint32_t max_width, uint32_t max_height);
577 * connector.
587 int (*set_property)(struct drm_connector *connector, struct drm_property *property,
594 * interfaces attached to the connector, light backlight control, i2c,
597 * core drm connector interfaces. Everything added from this callback
606 int (*late_register)(struct drm_connector *connector);
612 * userspace interfaces attached to the connector from
619 void (*early_unregister)(struct drm_connector *connector);
624 * Clean up connector resources. This is called at driver unload time
626 * when a connector is being hot-unplugged for drivers that support
627 * connector hotplugging (e.g. DisplayPort MST).
629 void (*destroy)(struct drm_connector *connector);
634 * Duplicate the current atomic state for this connector and return it.
662 struct drm_connector_state *(*atomic_duplicate_state)(struct drm_connector *connector);
672 void (*atomic_destroy_state)(struct drm_connector *connector,
712 * asks for properties attached to this connector). No other validation
717 int (*atomic_set_property)(struct drm_connector *connector,
738 * properties attached to this connector).
740 int (*atomic_get_property)(struct drm_connector *connector,
774 * struct drm_connector - central DRM connector control structure
776 * Each connector may be connected to one or more CRTCs, or may be clonable by
777 * another connector if they can share a CRTC. Each connector also has a specific
806 * @mutex: Lock for general connector state, but currently only protects
807 * @registered. Most of the connector state is still protected by
813 * @index: Compacted connector index, which matches the position inside
816 * connector.
825 /** @connector_type_id: index into connector type enum */
829 * Can this connector handle interlaced modes? Only used by
835 * Can this connector handle doublescan? Only used by
841 * Can this connector handle stereo modes? Only used by
847 * @ycbcr_420_allowed : This bool indicates if this connector is
855 * @registered: Is this connector exposed (registered) with userspace?
862 * Modes available on this connector (from fill_modes() + user).
893 /** @funcs: connector control functions */
903 /** @properties: property tracking for this connector */
933 * Connector polling mode, a combination of
936 * The connector generates hotplug events and doesn't need to be
941 * Periodically poll the connector for connection.
944 * Periodically poll the connector for disconnection, without
945 * causing flickering even when the connector is in use. DACs should
964 /** @cmdline_mode: mode line parsed from the kernel cmdline for this connector */
973 * @encoder_ids: Valid encoders for this connector. Please only use
979 * @encoder: Currently bound encoder driving this connector, if any.
1017 /** @debugfs_entry: debugfs directory for this connector */
1023 * Current atomic state for this connector.
1026 * nonblocking atomic commits access the current connector state without
1053 /** @has_tile: is this connector connected to a tiled monitor */
1074 * connector from any context, in conjunction with
1083 struct drm_connector *connector,
1086 int drm_connector_register(struct drm_connector *connector);
1087 void drm_connector_unregister(struct drm_connector *connector);
1088 int drm_connector_attach_encoder(struct drm_connector *connector,
1091 void drm_connector_cleanup(struct drm_connector *connector);
1093 static inline unsigned int drm_connector_index(const struct drm_connector *connector) in drm_connector_index() argument
1095 return connector->index; in drm_connector_index()
1098 static inline u32 drm_connector_mask(const struct drm_connector *connector) in drm_connector_mask() argument
1100 return 1 << connector->index; in drm_connector_mask()
1104 * drm_connector_lookup - lookup connector object
1107 * @id: connector object id
1109 * This function looks up the connector object specified by id
1122 * drm_connector_get - acquire a connector reference
1123 * @connector: DRM connector
1125 * This function increments the connector's refcount.
1127 static inline void drm_connector_get(struct drm_connector *connector) in drm_connector_get() argument
1129 drm_mode_object_get(&connector->base); in drm_connector_get()
1133 * drm_connector_put - release a connector reference
1134 * @connector: DRM connector
1136 * This function decrements the connector's reference count and frees the
1139 static inline void drm_connector_put(struct drm_connector *connector) in drm_connector_put() argument
1141 drm_mode_object_put(&connector->base); in drm_connector_put()
1145 * drm_connector_reference - acquire a connector reference
1146 * @connector: DRM connector
1151 static inline void drm_connector_reference(struct drm_connector *connector) in drm_connector_reference() argument
1153 drm_connector_get(connector); in drm_connector_reference()
1157 * drm_connector_unreference - release a connector reference
1158 * @connector: DRM connector
1163 static inline void drm_connector_unreference(struct drm_connector *connector) in drm_connector_unreference() argument
1165 drm_connector_put(connector); in drm_connector_unreference()
1183 int drm_connector_attach_scaling_mode_property(struct drm_connector *connector,
1186 struct drm_connector *connector);
1194 int drm_connector_set_path_property(struct drm_connector *connector,
1196 int drm_connector_set_tile_property(struct drm_connector *connector);
1197 int drm_connector_update_edid_property(struct drm_connector *connector,
1199 void drm_connector_set_link_status_property(struct drm_connector *connector,
1202 struct drm_connector *connector, int width, int height);
1249 bool drm_connector_has_possible_encoder(struct drm_connector *connector,
1254 * @connector: &struct drm_connector pointer used as cursor
1257 * Note that @connector is only valid within the list body, if you want to use
1258 * @connector after calling drm_connector_list_iter_end() then you need to grab
1261 #define drm_for_each_connector_iter(connector, iter) \ argument
1262 while ((connector = drm_connector_list_iter_next(iter)))
1265 * drm_connector_for_each_possible_encoder - iterate connector's possible encoders
1266 * @connector: &struct drm_connector pointer
1270 #define drm_connector_for_each_possible_encoder(connector, encoder, __i) \ argument
1271 for ((__i) = 0; (__i) < ARRAY_SIZE((connector)->encoder_ids) && \
1272 (connector)->encoder_ids[(__i)] != 0; (__i)++) \
1274 drm_encoder_find((connector)->dev, NULL, \
1275 (connector)->encoder_ids[(__i)])) \