diff options
Diffstat (limited to 'recipes-kernel/linux/linux-toradex-mainline-4.14/0019-clk-tegra-Fix-pll_u-rate-configuration.patch')
-rw-r--r-- | recipes-kernel/linux/linux-toradex-mainline-4.14/0019-clk-tegra-Fix-pll_u-rate-configuration.patch | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-toradex-mainline-4.14/0019-clk-tegra-Fix-pll_u-rate-configuration.patch b/recipes-kernel/linux/linux-toradex-mainline-4.14/0019-clk-tegra-Fix-pll_u-rate-configuration.patch new file mode 100644 index 0000000..9c846b2 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-mainline-4.14/0019-clk-tegra-Fix-pll_u-rate-configuration.patch @@ -0,0 +1,60 @@ +From 03f99b544b9e6e1e79bb73c9e35d3ea7047e706c Mon Sep 17 00:00:00 2001 +Message-Id: <03f99b544b9e6e1e79bb73c9e35d3ea7047e706c.1529072479.git.marcel.ziswiler@toradex.com> +In-Reply-To: <fb4764e8eb658d35e8fc62ae79c77e1f6e2b0ef3.1529072479.git.marcel.ziswiler@toradex.com> +References: <fb4764e8eb658d35e8fc62ae79c77e1f6e2b0ef3.1529072479.git.marcel.ziswiler@toradex.com> +From: Marcel Ziswiler <marcel@ziswiler.com> +Date: Fri, 23 Feb 2018 00:04:51 +0100 +Subject: [PATCH 19/27] clk: tegra: Fix pll_u rate configuration + +Turns out latest upstream U-Boot does not configure/enable pll_u which +leaves it at some default rate of 500 kHz: + +root@apalis-t30:~# cat /sys/kernel/debug/clk/clk_summary | grep pll_u + pll_u 3 3 0 500000 0 + +Of course this won't quite work leading to the following messages: + +[ 6.559593] usb 2-1: new full-speed USB device number 2 using tegra- +ehci +[ 11.759173] usb 2-1: device descriptor read/64, error -110 +[ 27.119453] usb 2-1: device descriptor read/64, error -110 +[ 27.389217] usb 2-1: new full-speed USB device number 3 using tegra- +ehci +[ 32.559454] usb 2-1: device descriptor read/64, error -110 +[ 47.929777] usb 2-1: device descriptor read/64, error -110 +[ 48.049658] usb usb2-port1: attempt power cycle +[ 48.759475] usb 2-1: new full-speed USB device number 4 using tegra- +ehci +[ 59.349457] usb 2-1: device not accepting address 4, error -110 +[ 59.509449] usb 2-1: new full-speed USB device number 5 using tegra- +ehci +[ 70.069457] usb 2-1: device not accepting address 5, error -110 +[ 70.079721] usb usb2-port1: unable to enumerate USB device + +Fix this by actually allowing the rate also being set from within +the Linux kernel. + +Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> +Tested-by: Jon Hunter <jonathanh@nvidia.com> +Signed-off-by: Thierry Reding <treding@nvidia.com> +(cherry picked from commit c35b518f9ba06c9de79fb3ff62eed7462d804995) +--- + drivers/clk/tegra/clk-pll.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/clk/tegra/clk-pll.c b/drivers/clk/tegra/clk-pll.c +index 7c369e21c91c..830d1c87fa7c 100644 +--- a/drivers/clk/tegra/clk-pll.c ++++ b/drivers/clk/tegra/clk-pll.c +@@ -1151,6 +1151,8 @@ static const struct clk_ops tegra_clk_pllu_ops = { + .enable = clk_pllu_enable, + .disable = clk_pll_disable, + .recalc_rate = clk_pll_recalc_rate, ++ .round_rate = clk_pll_round_rate, ++ .set_rate = clk_pll_set_rate, + }; + + static int _pll_fixed_mdiv(struct tegra_clk_pll_params *pll_params, +-- +2.14.4 + |