thunderbolt: Add XDomain UUID exchange support

Currently ICM has been handling XDomain UUID exchange so there was no
need to have it in the driver yet. However, since now we are going to
add the same capabilities to the software connection manager it needs to
be handled properly.

For this reason modify the driver XDomain protocol handling so that if
the remote domain UUID is not filled in the core will query it first and
only then start the normal property exchange flow.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
This commit is contained in:
Mika Westerberg
2018-09-28 16:30:16 +03:00
parent 559c1e1e01
commit 3b4b3235ca
3 changed files with 145 additions and 10 deletions

View File

@@ -492,6 +492,17 @@ struct tb_xdp_header {
u32 type;
};
struct tb_xdp_uuid {
struct tb_xdp_header hdr;
};
struct tb_xdp_uuid_response {
struct tb_xdp_header hdr;
uuid_t src_uuid;
u32 src_route_hi;
u32 src_route_lo;
};
struct tb_xdp_properties {
struct tb_xdp_header hdr;
uuid_t src_uuid;