From 343fcb8c70d76967ba64493ca984e40baad9d0f6 Mon Sep 17 00:00:00 2001 From: Andreas Noever Date: Thu, 12 Jun 2014 23:11:47 +0200 Subject: thunderbolt: Fix nontrivial endpoint devices. Fix issues observed with the Startech docking station: Fix the type of the route parameter in tb_ctl_rx. It should be u64 and not u8 (which only worked for short routes). A thunderbolt cable contains two lanes. If both endpoints support it a connection will be established on both lanes. Previously we tried to scan below both "dual link ports". Use the information extracted from the drom to only scan behind ports with lane_nr == 0. Endpoints with more complex thunderbolt controllers have some of their ports disabled (for example the NHI port or one of the HDMI/DP ports). Accessing them results in an error so we now ignore ports which are marked as disabled in the drom. Signed-off-by: Andreas Noever Signed-off-by: Greg Kroah-Hartman --- drivers/thunderbolt/ctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/thunderbolt/ctl.c') diff --git a/drivers/thunderbolt/ctl.c b/drivers/thunderbolt/ctl.c index 9b0120bede51..d04fee4acb2e 100644 --- a/drivers/thunderbolt/ctl.c +++ b/drivers/thunderbolt/ctl.c @@ -439,7 +439,7 @@ rx: */ static struct tb_cfg_result tb_ctl_rx(struct tb_ctl *ctl, void *buffer, size_t length, int timeout_msec, - u8 route, enum tb_cfg_pkg_type type) + u64 route, enum tb_cfg_pkg_type type) { struct tb_cfg_result res; struct ctl_pkg *pkg; -- cgit v1.2.3