Lines Matching +full:native +full:- +full:mode

34  * DOC: dp dual mode helpers
36 * Helper functions to deal with DP dual mode (aka. DP++) adaptors.
43 * I2C-over-AUX. Source devices may choose to implement either of these
50 * drm_dp_dual_mode_read - Read from the DP dual mode adaptor register(s)
56 * Reads @size bytes from the DP dual mode adaptor registers
85 return -EPROTO; in drm_dp_dual_mode_read()
92 * drm_dp_dual_mode_write - Write to the DP dual mode adaptor register(s)
98 * Writes @size bytes to the DP dual mode adaptor registers
118 return -ENOMEM; in drm_dp_dual_mode_write()
132 return -EPROTO; in drm_dp_dual_mode_write()
141 "DP-HDMI ADAPTOR\x04"; in is_hdmi_adaptor()
167 * drm_dp_dual_mode_detect - Identify the DP dual mode adaptor
170 * Attempt to identify the type of the DP dual mode adaptor used.
173 * certain whether we're dealing with a native HDMI port or
174 * a type 1 DVI dual mode adaptor. The driver will have to use
179 * The type of the DP dual mode adaptor used
198 * port or a native HDMI port. Both of these methods are entirely in drm_dp_dual_mode_detect()
203 DRM_DEBUG_KMS("DP dual mode HDMI ID: %*pE (err %zd)\n", in drm_dp_dual_mode_detect()
222 DRM_DEBUG_KMS("DP dual mode adaptor ID: %02x (err %zd)\n", in drm_dp_dual_mode_detect()
239 DRM_ERROR("Unexpected DP dual mode adaptor ID %02x\n", in drm_dp_dual_mode_detect()
252 * drm_dp_dual_mode_max_tmds_clock - Max TMDS clock for DP dual mode adaptor
253 * @type: DP dual mode adaptor type
257 * type of the dual mode adaptor and the DP_DUAL_MODE_MAX_TMDS_CLOCK
264 * Maximum supported TMDS clock rate for the DP dual mode adaptor in kHz.
272 /* native HDMI so no limit */ in drm_dp_dual_mode_max_tmds_clock()
295 …* drm_dp_dual_mode_get_tmds_output - Get the state of the TMDS output buffers in the DP dual mode
296 * @type: DP dual mode adaptor type
336 * drm_dp_dual_mode_set_tmds_output - Enable/disable TMDS output buffers in the DP dual mode adaptor
337 * @type: DP dual mode adaptor type
345 * making this function a no-op on type 1 adaptors.
361 * LSPCON adapters in low-power state may ignore the first write, so in drm_dp_dual_mode_set_tmds_output()
392 return -EIO; in drm_dp_dual_mode_set_tmds_output()
397 * drm_dp_get_dual_mode_type_name - Get the name of the DP dual mode adaptor type as a string
398 * @type: DP dual mode adaptor type
401 * String representation of the DP dual mode adaptor type
426 * drm_lspcon_get_mode: Get LSPCON's current mode of operation by
428 * @adapter: I2C-over-aux adapter
429 * @mode: current lspcon mode of operation output variable
432 * 0 on success, sets the current_mode value to appropriate mode
433 * -error on failure
436 enum drm_lspcon_mode *mode) in drm_lspcon_get_mode() argument
442 if (!mode) { in drm_lspcon_get_mode()
444 return -EINVAL; in drm_lspcon_get_mode()
461 return -EFAULT; in drm_lspcon_get_mode()
465 *mode = DRM_LSPCON_MODE_PCON; in drm_lspcon_get_mode()
467 *mode = DRM_LSPCON_MODE_LS; in drm_lspcon_get_mode()
473 * drm_lspcon_set_mode: Change LSPCON's mode of operation by
475 * @adapter: I2C-over-aux adapter
476 * @mode: required mode of operation
479 * 0 on success, -error on failure/timeout
482 enum drm_lspcon_mode mode) in drm_lspcon_set_mode() argument
489 if (mode == DRM_LSPCON_MODE_PCON) in drm_lspcon_set_mode()
492 /* Change mode */ in drm_lspcon_set_mode()
496 DRM_ERROR("LSPCON mode change failed\n"); in drm_lspcon_set_mode()
501 * Confirm mode change by reading the status bit. in drm_lspcon_set_mode()
502 * Sometimes, it takes a while to change the mode, in drm_lspcon_set_mode()
508 DRM_ERROR("can't confirm LSPCON mode change\n"); in drm_lspcon_set_mode()
511 if (current_mode != mode) { in drm_lspcon_set_mode()
513 time_out -= 10; in drm_lspcon_set_mode()
515 DRM_DEBUG_KMS("LSPCON mode changed to %s\n", in drm_lspcon_set_mode()
516 mode == DRM_LSPCON_MODE_LS ? in drm_lspcon_set_mode()
523 DRM_ERROR("LSPCON mode change timed out\n"); in drm_lspcon_set_mode()
524 return -ETIMEDOUT; in drm_lspcon_set_mode()