From: Rajmohan Mani Date: Mon, 17 Aug 2020 15:55:21 +0000 (-0700) Subject: thunderbolt: Optimize NHI LC mailbox command processing X-Git-Tag: v5.10.7~1419^2~26^2~34 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6651c91de042f8ad601b522cb8d33de84246ddc7;p=platform%2Fkernel%2Flinux-rpi.git thunderbolt: Optimize NHI LC mailbox command processing Currently the Ice Lake and Tiger Lake NHI (host controller) LC (link controller) mailbox command processing checks for the completion of command every 100 msecs. These controllers are found to complete this in the order of 1 ms or so. Since this delay is in suspend path, surplus delay is effectively affecting runtime PM suspend flows. Optimize this so that we do the wait for 1 ms after reading the mailbox register. This should make Ice Lake and Tiger Lake runtime suspend take less time to complete. Reported-by: Dana Alkattan Signed-off-by: Rajmohan Mani Signed-off-by: Mika Westerberg --- diff --git a/drivers/thunderbolt/nhi_ops.c b/drivers/thunderbolt/nhi_ops.c index c0d5ccb..28583f9 100644 --- a/drivers/thunderbolt/nhi_ops.c +++ b/drivers/thunderbolt/nhi_ops.c @@ -97,7 +97,7 @@ static int icl_nhi_lc_mailbox_cmd_complete(struct tb_nhi *nhi, int timeout) pci_read_config_dword(nhi->pdev, VS_CAP_18, &data); if (data & VS_CAP_18_DONE) goto clear; - msleep(100); + usleep_range(1000, 1100); } while (time_before(jiffies, end)); return -ETIMEDOUT;