Lines Matching +full:i2c +full:- +full:topology
60 * struct drm_dp_mst_port - MST port
64 * @mcs: message capability status - DP 1.2 spec. Protected by
66 * @ddps: DisplayPort Device Plug Status - DP 1.2. Protected by
81 * @aux: i2c aux transport to talk to device connected to this port, protected
83 * @passthrough_aux: parent aux to which DSC pass-through requests should be
84 * sent, only set if DSC pass-through is possible.
88 * @mgr: topology manager this port lives under.
91 * in the MST topology.
95 * @topology_kref: refcount for this port's lifetime in the topology,
109 * @topology_ref_history: A history of each topology
137 struct drm_dp_aux aux; /* i2c bus for this port? */
145 * @cached_edid: for DP logical ports - make tiling work by ensuring
152 * point in the MST topology.
157 /* sideband msg header - not bit struct */
183 * struct drm_dp_mst_branch - MST branch device.
188 * @mgr: topology manager for this branch device.
200 * topology, only the DP MST helpers should need to touch this
213 * @topology_ref_history: A history of each topology
220 * @destroy_next: linked-list entry used by
314 /* Bit[23:16]- Stream Id */
317 /* Bit[15]- Signed */
320 /* Bit[10:8]- Stream Output Sink Type */
325 /* Bit[12:11]- Stream Output CP Type */
329 /* Bit[4]- Stream Authentication */
332 /* Bit[3]- Stream Encryption */
335 /* Bit[2]- Stream Repeater Function Present */
338 /* Bit[1:0]- Stream State */
404 u8 client_id[7]; /* 56-bit nonce */
490 /* msg has started transmitting on a slot - still on msgq */
492 /* msg has finished transmitting on a slot - removed from msgq only in slot */
494 /* msg has received a response - removed from slot */
519 * If provided MST core calls this callback from a poll-waiting loop
530 * struct drm_dp_mst_atomic_payload - Atomic state struct for an MST payload
546 * protected by the MST helpers ensuring that async commits operating on the given topology
555 * * Acquire the MST modesetting lock, and then wait for any pending MST-related commits to
589 * struct drm_dp_mst_topology_state - DisplayPort MST topology atomic state
597 /** @mgr: The topology manager */
601 * @pending_crtc_mask: A bitmask of all CRTCs this topology state touches, drivers may
606 * @commit_deps: A list of all CRTC commits affecting this topology, this field isn't
618 /** @total_avail_slots: The total number of slots this topology can handle (63 or 64) */
620 /** @start_slot: The first usable time slot in this topology (1 or 0) */
624 * @pbn_div: The current PBN divisor for this topology. The driver is expected to fill this
633 * struct drm_dp_mst_topology_mgr - DisplayPort MST manager
635 * This struct represents the toplevel displayport MST topology manager.
646 * @dev: device pointer for adding i2c devices etc.
693 * while they update the topology.
711 * receiver state must be reset, after the topology manager got
802 * @up_req_list: List of pending up requests from the topology that
812 * topology. Needed to avoid blocking hotplug handling and sideband
835 * enum drm_dp_mst_mode - sink's MST mode capability
968 return port->port_num >= DP_MST_LOGICAL_PORT_0; in drm_dp_mst_port_is_logical()
983 * __drm_dp_mst_state_iter_get - private atomic state iterator function for
984 * macro-internal use
991 * @i: int iteration cursor, for macro-internal use
1008 struct __drm_private_objs_state *objs_state = &state->private_objs[i]; in __drm_dp_mst_state_iter_get()
1010 if (objs_state->ptr->funcs != &drm_dp_mst_topology_state_funcs) in __drm_dp_mst_state_iter_get()
1013 *mgr = to_dp_mst_topology_mgr(objs_state->ptr); in __drm_dp_mst_state_iter_get()
1015 *old_state = to_dp_mst_topology_state(objs_state->old_state); in __drm_dp_mst_state_iter_get()
1017 *new_state = to_dp_mst_topology_state(objs_state->new_state); in __drm_dp_mst_state_iter_get()
1023 * for_each_oldnew_mst_mgr_in_state - iterate over all DP MST topology
1031 * @__i: int iteration cursor, for macro-internal use
1033 * This iterates over all DRM DP MST topology managers in an atomic update,
1038 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \
1042 * for_each_old_mst_mgr_in_state - iterate over all DP MST topology managers
1048 * @__i: int iteration cursor, for macro-internal use
1050 * This iterates over all DRM DP MST topology managers in an atomic update,
1055 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \
1059 * for_each_new_mst_mgr_in_state - iterate over all DP MST topology managers
1065 * @__i: int iteration cursor, for macro-internal use
1067 * This iterates over all DRM DP MST topology managers in an atomic update,
1073 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \