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.
89 * @mgr: topology manager this port lives under.
92 * in the MST topology.
96 * @topology_kref: refcount for this port's lifetime in the topology,
110 * @topology_ref_history: A history of each topology
138 struct drm_dp_aux aux; /* i2c bus for this port? */
146 * @cached_edid: for DP logical ports - make tiling work by ensuring
153 * point in the MST topology.
158 /* sideband msg header - not bit struct */
184 * struct drm_dp_mst_branch - MST branch device.
189 * @mgr: topology manager for this branch device.
201 * topology, only the DP MST helpers should need to touch this
214 * @topology_ref_history: A history of each topology
221 * @destroy_next: linked-list entry used by
308 /* Bit[23:16]- Stream Id */
311 /* Bit[15]- Signed */
314 /* Bit[10:8]- Stream Output Sink Type */
319 /* Bit[12:11]- Stream Output CP Type */
323 /* Bit[4]- Stream Authentication */
326 /* Bit[3]- Stream Encryption */
329 /* Bit[2]- Stream Repeater Function Present */
332 /* Bit[1:0]- Stream State */
398 u8 client_id[7]; /* 56-bit nonce */
484 /* msg has started transmitting on a slot - still on msgq */
486 /* msg has finished transmitting on a slot - removed from msgq only in slot */
488 /* msg has received a response - removed from slot */
513 * If provided MST core calls this callback from a poll-waiting loop
524 * struct drm_dp_mst_atomic_payload - Atomic state struct for an MST payload
540 * protected by the MST helpers ensuring that async commits operating on the given topology
549 * * Acquire the MST modesetting lock, and then wait for any pending MST-related commits to
583 * struct drm_dp_mst_topology_state - DisplayPort MST topology atomic state
591 /** @mgr: The topology manager */
595 * @pending_crtc_mask: A bitmask of all CRTCs this topology state touches, drivers may
600 * @commit_deps: A list of all CRTC commits affecting this topology, this field isn't
612 /** @total_avail_slots: The total number of slots this topology can handle (63 or 64) */
614 /** @start_slot: The first usable time slot in this topology (1 or 0) */
618 * @pbn_div: The current PBN divisor for this topology. The driver is expected to fill this
627 * struct drm_dp_mst_topology_mgr - DisplayPort MST manager
629 * This struct represents the toplevel displayport MST topology manager.
640 * @dev: device pointer for adding i2c devices etc.
687 * while they update the topology.
789 * @up_req_list: List of pending up requests from the topology that
799 * topology. Needed to avoid blocking hotplug handling and sideband
942 * __drm_dp_mst_state_iter_get - private atomic state iterator function for
943 * macro-internal use
950 * @i: int iteration cursor, for macro-internal use
967 struct __drm_private_objs_state *objs_state = &state->private_objs[i]; in __drm_dp_mst_state_iter_get()
969 if (objs_state->ptr->funcs != &drm_dp_mst_topology_state_funcs) in __drm_dp_mst_state_iter_get()
972 *mgr = to_dp_mst_topology_mgr(objs_state->ptr); in __drm_dp_mst_state_iter_get()
974 *old_state = to_dp_mst_topology_state(objs_state->old_state); in __drm_dp_mst_state_iter_get()
976 *new_state = to_dp_mst_topology_state(objs_state->new_state); in __drm_dp_mst_state_iter_get()
982 * for_each_oldnew_mst_mgr_in_state - iterate over all DP MST topology
990 * @__i: int iteration cursor, for macro-internal use
992 * This iterates over all DRM DP MST topology managers in an atomic update,
997 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \
1001 * for_each_old_mst_mgr_in_state - iterate over all DP MST topology managers
1007 * @__i: int iteration cursor, for macro-internal use
1009 * This iterates over all DRM DP MST topology managers in an atomic update,
1014 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \
1018 * for_each_new_mst_mgr_in_state - iterate over all DP MST topology managers
1024 * @__i: int iteration cursor, for macro-internal use
1026 * This iterates over all DRM DP MST topology managers in an atomic update,
1032 for ((__i) = 0; (__i) < (__state)->num_private_objs; (__i)++) \