aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMika Westerberg <[email protected]>2020-12-10 14:57:10 +0200
committerMika Westerberg <[email protected]>2021-03-08 14:22:42 +0300
commitc94732bda079ee66b5c3904cbb628d0cb218ab39 (patch)
tree02efbaf00c842914fff9581545aeb56259699326
parent781e14eaa7d168dc07d2a2eea5c55831a5bb46f3 (diff)
thunderbolt: Increase runtime PM reference count on DP tunnel discovery
If the driver is unbound and then bound back it goes over the topology and figure out the existing tunnels. However, if it finds DP tunnel it should make sure the domain does not runtime suspend as otherwise it will tear down the DP tunnel unexpectedly. Fixes: 6ac6faee5d7d ("thunderbolt: Add runtime PM for Software CM") Cc: [email protected] Signed-off-by: Mika Westerberg <[email protected]>
-rw-r--r--drivers/thunderbolt/tb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/thunderbolt/tb.c b/drivers/thunderbolt/tb.c
index 1f000ac1728b..c348b1fc0efc 100644
--- a/drivers/thunderbolt/tb.c
+++ b/drivers/thunderbolt/tb.c
@@ -138,6 +138,10 @@ static void tb_discover_tunnels(struct tb_switch *sw)
parent->boot = true;
parent = tb_switch_parent(parent);
}
+ } else if (tb_tunnel_is_dp(tunnel)) {
+ /* Keep the domain from powering down */
+ pm_runtime_get_sync(&tunnel->src_port->sw->dev);
+ pm_runtime_get_sync(&tunnel->dst_port->sw->dev);
}
list_add_tail(&tunnel->list, &tcm->tunnel_list);