thunderbolt: Wait a bit longer for root switch config space
authorMika Westerberg <mika.westerberg@linux.intel.com>
Thu, 14 Sep 2017 10:44:07 +0000 (13:44 +0300)
committerMika Westerberg <mika.westerberg@linux.intel.com>
Fri, 9 Mar 2018 09:54:10 +0000 (12:54 +0300)
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>
drivers/thunderbolt/icm.c

index 182226023acbbaf76f57b4f440c3b6c7c763c5d7..1183321586c5aa75b514b49f70b5347da222934c 100644 (file)
@@ -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;
 }