Lines Matching refs:u

208 		buf[idx] = (req->u.port_num.port_number & 0xf) << 4;  in drm_dp_encode_sideband_req()
212 buf[idx] = (req->u.allocate_payload.port_number & 0xf) << 4 | in drm_dp_encode_sideband_req()
213 (req->u.allocate_payload.number_sdp_streams & 0xf); in drm_dp_encode_sideband_req()
215 buf[idx] = (req->u.allocate_payload.vcpi & 0x7f); in drm_dp_encode_sideband_req()
217 buf[idx] = (req->u.allocate_payload.pbn >> 8); in drm_dp_encode_sideband_req()
219 buf[idx] = (req->u.allocate_payload.pbn & 0xff); in drm_dp_encode_sideband_req()
221 for (i = 0; i < req->u.allocate_payload.number_sdp_streams / 2; i++) { in drm_dp_encode_sideband_req()
222 buf[idx] = ((req->u.allocate_payload.sdp_stream_sink[i * 2] & 0xf) << 4) | in drm_dp_encode_sideband_req()
223 (req->u.allocate_payload.sdp_stream_sink[i * 2 + 1] & 0xf); in drm_dp_encode_sideband_req()
226 if (req->u.allocate_payload.number_sdp_streams & 1) { in drm_dp_encode_sideband_req()
227 i = req->u.allocate_payload.number_sdp_streams - 1; in drm_dp_encode_sideband_req()
228 buf[idx] = (req->u.allocate_payload.sdp_stream_sink[i] & 0xf) << 4; in drm_dp_encode_sideband_req()
233 buf[idx] = (req->u.query_payload.port_number & 0xf) << 4; in drm_dp_encode_sideband_req()
235 buf[idx] = (req->u.query_payload.vcpi & 0x7f); in drm_dp_encode_sideband_req()
239 buf[idx] = (req->u.dpcd_read.port_number & 0xf) << 4; in drm_dp_encode_sideband_req()
240 buf[idx] |= ((req->u.dpcd_read.dpcd_address & 0xf0000) >> 16) & 0xf; in drm_dp_encode_sideband_req()
242 buf[idx] = (req->u.dpcd_read.dpcd_address & 0xff00) >> 8; in drm_dp_encode_sideband_req()
244 buf[idx] = (req->u.dpcd_read.dpcd_address & 0xff); in drm_dp_encode_sideband_req()
246 buf[idx] = (req->u.dpcd_read.num_bytes); in drm_dp_encode_sideband_req()
251 buf[idx] = (req->u.dpcd_write.port_number & 0xf) << 4; in drm_dp_encode_sideband_req()
252 buf[idx] |= ((req->u.dpcd_write.dpcd_address & 0xf0000) >> 16) & 0xf; in drm_dp_encode_sideband_req()
254 buf[idx] = (req->u.dpcd_write.dpcd_address & 0xff00) >> 8; in drm_dp_encode_sideband_req()
256 buf[idx] = (req->u.dpcd_write.dpcd_address & 0xff); in drm_dp_encode_sideband_req()
258 buf[idx] = (req->u.dpcd_write.num_bytes); in drm_dp_encode_sideband_req()
260 memcpy(&buf[idx], req->u.dpcd_write.bytes, req->u.dpcd_write.num_bytes); in drm_dp_encode_sideband_req()
261 idx += req->u.dpcd_write.num_bytes; in drm_dp_encode_sideband_req()
264 buf[idx] = (req->u.i2c_read.port_number & 0xf) << 4; in drm_dp_encode_sideband_req()
265 buf[idx] |= (req->u.i2c_read.num_transactions & 0x3); in drm_dp_encode_sideband_req()
267 for (i = 0; i < (req->u.i2c_read.num_transactions & 0x3); i++) { in drm_dp_encode_sideband_req()
268 buf[idx] = req->u.i2c_read.transactions[i].i2c_dev_id & 0x7f; in drm_dp_encode_sideband_req()
270 buf[idx] = req->u.i2c_read.transactions[i].num_bytes; in drm_dp_encode_sideband_req()
272 …memcpy(&buf[idx], req->u.i2c_read.transactions[i].bytes, req->u.i2c_read.transactions[i].num_bytes… in drm_dp_encode_sideband_req()
273 idx += req->u.i2c_read.transactions[i].num_bytes; in drm_dp_encode_sideband_req()
275 buf[idx] = (req->u.i2c_read.transactions[i].no_stop_bit & 0x1) << 5; in drm_dp_encode_sideband_req()
276 buf[idx] |= (req->u.i2c_read.transactions[i].i2c_transaction_delay & 0xf); in drm_dp_encode_sideband_req()
279 buf[idx] = (req->u.i2c_read.read_i2c_device_id) & 0x7f; in drm_dp_encode_sideband_req()
281 buf[idx] = (req->u.i2c_read.num_bytes_read); in drm_dp_encode_sideband_req()
286 buf[idx] = (req->u.i2c_write.port_number & 0xf) << 4; in drm_dp_encode_sideband_req()
288 buf[idx] = (req->u.i2c_write.write_i2c_device_id) & 0x7f; in drm_dp_encode_sideband_req()
290 buf[idx] = (req->u.i2c_write.num_bytes); in drm_dp_encode_sideband_req()
292 memcpy(&buf[idx], req->u.i2c_write.bytes, req->u.i2c_write.num_bytes); in drm_dp_encode_sideband_req()
293 idx += req->u.i2c_write.num_bytes; in drm_dp_encode_sideband_req()
371 memcpy(repmsg->u.link_addr.guid, &raw->msg[idx], 16); in drm_dp_sideband_parse_link_address()
373 repmsg->u.link_addr.nports = raw->msg[idx] & 0xf; in drm_dp_sideband_parse_link_address()
377 for (i = 0; i < repmsg->u.link_addr.nports; i++) { in drm_dp_sideband_parse_link_address()
379 repmsg->u.link_addr.ports[i].input_port = 1; in drm_dp_sideband_parse_link_address()
381 repmsg->u.link_addr.ports[i].peer_device_type = (raw->msg[idx] >> 4) & 0x7; in drm_dp_sideband_parse_link_address()
382 repmsg->u.link_addr.ports[i].port_number = (raw->msg[idx] & 0xf); in drm_dp_sideband_parse_link_address()
387 repmsg->u.link_addr.ports[i].mcs = (raw->msg[idx] >> 7) & 0x1; in drm_dp_sideband_parse_link_address()
388 repmsg->u.link_addr.ports[i].ddps = (raw->msg[idx] >> 6) & 0x1; in drm_dp_sideband_parse_link_address()
389 if (repmsg->u.link_addr.ports[i].input_port == 0) in drm_dp_sideband_parse_link_address()
390 repmsg->u.link_addr.ports[i].legacy_device_plug_status = (raw->msg[idx] >> 5) & 0x1; in drm_dp_sideband_parse_link_address()
394 if (repmsg->u.link_addr.ports[i].input_port == 0) { in drm_dp_sideband_parse_link_address()
395 repmsg->u.link_addr.ports[i].dpcd_revision = (raw->msg[idx]); in drm_dp_sideband_parse_link_address()
399 memcpy(repmsg->u.link_addr.ports[i].peer_guid, &raw->msg[idx], 16); in drm_dp_sideband_parse_link_address()
403 repmsg->u.link_addr.ports[i].num_sdp_streams = (raw->msg[idx] >> 4) & 0xf; in drm_dp_sideband_parse_link_address()
404 repmsg->u.link_addr.ports[i].num_sdp_stream_sinks = (raw->msg[idx] & 0xf); in drm_dp_sideband_parse_link_address()
422 repmsg->u.remote_dpcd_read_ack.port_number = raw->msg[idx] & 0xf; in drm_dp_sideband_parse_remote_dpcd_read()
426 repmsg->u.remote_dpcd_read_ack.num_bytes = raw->msg[idx]; in drm_dp_sideband_parse_remote_dpcd_read()
430 …memcpy(repmsg->u.remote_dpcd_read_ack.bytes, &raw->msg[idx], repmsg->u.remote_dpcd_read_ack.num_by… in drm_dp_sideband_parse_remote_dpcd_read()
441 repmsg->u.remote_dpcd_write_ack.port_number = raw->msg[idx] & 0xf; in drm_dp_sideband_parse_remote_dpcd_write()
456 repmsg->u.remote_i2c_read_ack.port_number = (raw->msg[idx] & 0xf); in drm_dp_sideband_parse_remote_i2c_read_ack()
460 repmsg->u.remote_i2c_read_ack.num_bytes = raw->msg[idx]; in drm_dp_sideband_parse_remote_i2c_read_ack()
463 …memcpy(repmsg->u.remote_i2c_read_ack.bytes, &raw->msg[idx], repmsg->u.remote_i2c_read_ack.num_byte… in drm_dp_sideband_parse_remote_i2c_read_ack()
474 repmsg->u.path_resources.port_number = (raw->msg[idx] >> 4) & 0xf; in drm_dp_sideband_parse_enum_path_resources_ack()
478 repmsg->u.path_resources.full_payload_bw_number = (raw->msg[idx] << 8) | (raw->msg[idx+1]); in drm_dp_sideband_parse_enum_path_resources_ack()
482 repmsg->u.path_resources.avail_payload_bw_number = (raw->msg[idx] << 8) | (raw->msg[idx+1]); in drm_dp_sideband_parse_enum_path_resources_ack()
496 repmsg->u.allocate_payload.port_number = (raw->msg[idx] >> 4) & 0xf; in drm_dp_sideband_parse_allocate_payload_ack()
500 repmsg->u.allocate_payload.vcpi = raw->msg[idx]; in drm_dp_sideband_parse_allocate_payload_ack()
504 repmsg->u.allocate_payload.allocated_pbn = (raw->msg[idx] << 8) | (raw->msg[idx+1]); in drm_dp_sideband_parse_allocate_payload_ack()
518 repmsg->u.query_payload.port_number = (raw->msg[idx] >> 4) & 0xf; in drm_dp_sideband_parse_query_payload_ack()
522 repmsg->u.query_payload.allocated_pbn = (raw->msg[idx] << 8) | (raw->msg[idx + 1]); in drm_dp_sideband_parse_query_payload_ack()
540 memcpy(msg->u.nak.guid, &raw->msg[1], 16); in drm_dp_sideband_parse_reply()
541 msg->u.nak.reason = raw->msg[17]; in drm_dp_sideband_parse_reply()
542 msg->u.nak.nak_data = raw->msg[18]; in drm_dp_sideband_parse_reply()
572 msg->u.conn_stat.port_number = (raw->msg[idx] & 0xf0) >> 4; in drm_dp_sideband_parse_connection_status_notify()
577 memcpy(msg->u.conn_stat.guid, &raw->msg[idx], 16); in drm_dp_sideband_parse_connection_status_notify()
582 msg->u.conn_stat.legacy_device_plug_status = (raw->msg[idx] >> 6) & 0x1; in drm_dp_sideband_parse_connection_status_notify()
583 msg->u.conn_stat.displayport_device_plug_status = (raw->msg[idx] >> 5) & 0x1; in drm_dp_sideband_parse_connection_status_notify()
584 msg->u.conn_stat.message_capability_status = (raw->msg[idx] >> 4) & 0x1; in drm_dp_sideband_parse_connection_status_notify()
585 msg->u.conn_stat.input_port = (raw->msg[idx] >> 3) & 0x1; in drm_dp_sideband_parse_connection_status_notify()
586 msg->u.conn_stat.peer_device_type = (raw->msg[idx] & 0x7); in drm_dp_sideband_parse_connection_status_notify()
599 msg->u.resource_stat.port_number = (raw->msg[idx] & 0xf0) >> 4; in drm_dp_sideband_parse_resource_status_notify()
604 memcpy(msg->u.resource_stat.guid, &raw->msg[idx], 16); in drm_dp_sideband_parse_resource_status_notify()
609 msg->u.resource_stat.available_pbn = (raw->msg[idx] << 8) | (raw->msg[idx + 1]); in drm_dp_sideband_parse_resource_status_notify()
639 req.u.dpcd_write.port_number = port_num; in build_dpcd_write()
640 req.u.dpcd_write.dpcd_address = offset; in build_dpcd_write()
641 req.u.dpcd_write.num_bytes = num_bytes; in build_dpcd_write()
642 req.u.dpcd_write.bytes = bytes; in build_dpcd_write()
662 req.u.port_num.port_number = port_num; in build_enum_path_resources()
674 req.u.allocate_payload.port_number = port_num; in build_allocate_payload()
675 req.u.allocate_payload.vcpi = vcpi; in build_allocate_payload()
676 req.u.allocate_payload.pbn = pbn; in build_allocate_payload()
1347 req.u.dpcd_read.port_number = port_num;
1348 req.u.dpcd_read.dpcd_address = offset;
1349 req.u.dpcd_read.num_bytes = num_bytes;
1565 DRM_DEBUG_KMS("link address reply: %d\n", txmsg->reply.u.link_addr.nports); in drm_dp_send_link_address()
1566 for (i = 0; i < txmsg->reply.u.link_addr.nports; i++) { in drm_dp_send_link_address()
1568 txmsg->reply.u.link_addr.ports[i].input_port, in drm_dp_send_link_address()
1569 txmsg->reply.u.link_addr.ports[i].peer_device_type, in drm_dp_send_link_address()
1570 txmsg->reply.u.link_addr.ports[i].port_number, in drm_dp_send_link_address()
1571 txmsg->reply.u.link_addr.ports[i].dpcd_revision, in drm_dp_send_link_address()
1572 txmsg->reply.u.link_addr.ports[i].mcs, in drm_dp_send_link_address()
1573 txmsg->reply.u.link_addr.ports[i].ddps, in drm_dp_send_link_address()
1574 txmsg->reply.u.link_addr.ports[i].legacy_device_plug_status, in drm_dp_send_link_address()
1575 txmsg->reply.u.link_addr.ports[i].num_sdp_streams, in drm_dp_send_link_address()
1576 txmsg->reply.u.link_addr.ports[i].num_sdp_stream_sinks); in drm_dp_send_link_address()
1579 drm_dp_check_mstb_guid(mstb, txmsg->reply.u.link_addr.guid); in drm_dp_send_link_address()
1581 for (i = 0; i < txmsg->reply.u.link_addr.nports; i++) { in drm_dp_send_link_address()
1582 drm_dp_add_port(mstb, mgr->dev, &txmsg->reply.u.link_addr.ports[i]); in drm_dp_send_link_address()
1616 if (port->port_num != txmsg->reply.u.path_resources.port_number) in drm_dp_send_enum_path_resources()
1618 …G_KMS("enum path resources %d: %d %d\n", txmsg->reply.u.path_resources.port_number, txmsg->reply.u in drm_dp_send_enum_path_resources()
1619 txmsg->reply.u.path_resources.avail_payload_bw_number); in drm_dp_send_enum_path_resources()
1620 port->available_pbn = txmsg->reply.u.path_resources.avail_payload_bw_number; in drm_dp_send_enum_path_resources()
2246 …%02x, nak data 0x%02x\n", txmsg->reply.req_type, txmsg->reply.u.nak.reason, txmsg->reply.u.nak.nak… in drm_dp_mst_handle_down_rep()
2290 mstb = drm_dp_get_mst_branch_device_by_guid(mgr, msg.u.conn_stat.guid); in drm_dp_mst_handle_up_req()
2298 drm_dp_update_port(mstb, &msg.u.conn_stat); in drm_dp_mst_handle_up_req()
2300u.conn_stat.port_number, msg.u.conn_stat.legacy_device_plug_status, msg.u.conn_stat.displayport_de… in drm_dp_mst_handle_up_req()
2306 mstb = drm_dp_get_mst_branch_device_by_guid(mgr, msg.u.resource_stat.guid); in drm_dp_mst_handle_up_req()
2314 …DRM_DEBUG_KMS("Got RSN: pn: %d avail_pbn %d\n", msg.u.resource_stat.port_number, msg.u.resource_st… in drm_dp_mst_handle_up_req()
2984 msg.u.i2c_read.num_transactions = num - 1; in drm_dp_mst_i2c_xfer()
2985 msg.u.i2c_read.port_number = port->port_num; in drm_dp_mst_i2c_xfer()
2987 msg.u.i2c_read.transactions[i].i2c_dev_id = msgs[i].addr; in drm_dp_mst_i2c_xfer()
2988 msg.u.i2c_read.transactions[i].num_bytes = msgs[i].len; in drm_dp_mst_i2c_xfer()
2989 msg.u.i2c_read.transactions[i].bytes = msgs[i].buf; in drm_dp_mst_i2c_xfer()
2991 msg.u.i2c_read.read_i2c_device_id = msgs[num - 1].addr; in drm_dp_mst_i2c_xfer()
2992 msg.u.i2c_read.num_bytes_read = msgs[num - 1].len; in drm_dp_mst_i2c_xfer()
3012 if (txmsg->reply.u.remote_i2c_read_ack.num_bytes != msgs[num - 1].len) { in drm_dp_mst_i2c_xfer()
3016 memcpy(msgs[num - 1].buf, txmsg->reply.u.remote_i2c_read_ack.bytes, msgs[num - 1].len); in drm_dp_mst_i2c_xfer()