summaryrefslogtreecommitdiffstats
path: root/drivers/thunderbolt/icm.c
diff options
context:
space:
mode:
authorMika Westerberg <mika.westerberg@linux.intel.com>2017-09-14 12:44:07 +0200
committerMika Westerberg <mika.westerberg@linux.intel.com>2018-03-09 10:54:10 +0100
commit44b51bbb16d033ac1984123349ec055bae09b623 (patch)
tree872730c8c311fb78dac23809db570a177a5f5f4b /drivers/thunderbolt/icm.c
parentthunderbolt: Do not overwrite error code when domain adding fails (diff)
downloadlinux-44b51bbb16d033ac1984123349ec055bae09b623.tar.xz
linux-44b51bbb16d033ac1984123349ec055bae09b623.zip
thunderbolt: Wait a bit longer for root switch config space
In some case reading root switch config space takes longer than what we are currently waiting in the driver resulting timeout and failure. Increase number of retries to allow some more time for the root switch config space to become accesssible. Also log an error if the timeout is exceeded so we know why the driver probe failed. Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Diffstat (limited to 'drivers/thunderbolt/icm.c')
-rw-r--r--drivers/thunderbolt/icm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/thunderbolt/icm.c b/drivers/thunderbolt/icm.c
index 182226023acb..1183321586c5 100644
--- a/drivers/thunderbolt/icm.c
+++ b/drivers/thunderbolt/icm.c
@@ -828,7 +828,7 @@ __icm_driver_ready(struct tb *tb, enum tb_security_level *security_level)
struct icm_pkg_driver_ready request = {
.hdr.code = ICM_DRIVER_READY,
};
- unsigned int retries = 10;
+ unsigned int retries = 50;
int ret;
memset(&reply, 0, sizeof(reply));
@@ -856,6 +856,7 @@ __icm_driver_ready(struct tb *tb, enum tb_security_level *security_level)
msleep(50);
} while (--retries);
+ tb_err(tb, "failed to read root switch config space, giving up\n");
return -ETIMEDOUT;
}