44,8 → 44,6 |
/** |
* struct drm_dp_mst_port - MST port |
* @kref: reference count for this port. |
* @guid_valid: for DP 1.2 devices if we have validated the GUID. |
* @guid: guid for DP 1.2 device on this port. |
* @port_num: port number |
* @input: if this port is an input port. |
* @mcs: message capability status - DP 1.2 spec. |
70,10 → 68,6 |
struct drm_dp_mst_port { |
struct kref kref; |
|
/* if dpcd 1.2 device is on this port - its GUID info */ |
bool guid_valid; |
u8 guid[16]; |
|
u8 port_num; |
bool input; |
bool mcs; |
109,10 → 103,12 |
* @tx_slots: transmission slots for this device. |
* @last_seqno: last sequence number used to talk to this. |
* @link_address_sent: if a link address message has been sent to this device yet. |
* @guid: guid for DP 1.2 branch device. port under this branch can be |
* identified by port #. |
* |
* This structure represents an MST branch device, there is one |
* primary branch device at the root, along with any others connected |
* to downstream ports |
* primary branch device at the root, along with any other branches connected |
* to downstream port of parent branches. |
*/ |
struct drm_dp_mst_branch { |
struct kref kref; |
131,6 → 127,9 |
struct drm_dp_sideband_msg_tx *tx_slots[2]; |
int last_seqno; |
bool link_address_sent; |
|
/* global unique identifier to identify branch devices */ |
u8 guid[16]; |
}; |
|
|
405,11 → 404,9 |
* @conn_base_id: DRM connector ID this mgr is connected to. |
* @down_rep_recv: msg receiver state for down replies. |
* @up_req_recv: msg receiver state for up requests. |
* @lock: protects mst state, primary, guid, dpcd. |
* @lock: protects mst state, primary, dpcd. |
* @mst_state: if this manager is enabled for an MST capable port. |
* @mst_primary: pointer to the primary branch device. |
* @guid_valid: GUID valid for the primary branch device. |
* @guid: GUID for primary port. |
* @dpcd: cache of DPCD for primary port. |
* @pbn_div: PBN to slots divisor. |
* |
431,13 → 428,11 |
struct drm_dp_sideband_msg_rx up_req_recv; |
|
/* pointer to info about the initial MST device */ |
struct mutex lock; /* protects mst_state + primary + guid + dpcd */ |
struct mutex lock; /* protects mst_state + primary + dpcd */ |
|
bool mst_state; |
struct drm_dp_mst_branch *mst_primary; |
/* primary MST device GUID */ |
bool guid_valid; |
u8 guid[16]; |
|
u8 dpcd[DP_RECEIVER_CAP_SIZE]; |
u8 sink_count; |
int pbn_div; |
450,9 → 445,7 |
the mstb tx_slots and txmsg->state once they are queued */ |
struct mutex qlock; |
struct list_head tx_msg_downq; |
struct list_head tx_msg_upq; |
bool tx_down_in_progress; |
bool tx_up_in_progress; |
|
/* payload info + lock for it */ |
struct mutex payload_lock; |