clk: tegra: bpmp: Clamp clock rates on requests
authorSivaram Nair <sivaramn@nvidia.com>
Wed, 21 Oct 2020 10:10:54 +0000 (13:10 +0300)
committerThierry Reding <treding@nvidia.com>
Thu, 26 Nov 2020 15:28:07 +0000 (16:28 +0100)
commita886c310d9fcb0e66253d4af225cba13f9bdf5d2
tree6a164b3a6b6925b5a94b3044f9502a00be5a750d
parent6160aca443148416994c022a35c77daeba948ea6
clk: tegra: bpmp: Clamp clock rates on requests

BPMP firmware ABI expects the rate inputs in int64_t. However,
tegra_bpmp_clk_round_rate() and tegra_bpmp_clk_set_rate() functions
directly assign 'unsigned long' inputs to a int64_t value causing
unexpected rounding errors.

Fix this by clipping the input rate to S64_MAX.

Signed-off-by: Sivaram Nair <sivaramn@nvidia.com>
[mperttunen: slight cleanup]
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Reviewed-by: Sivaram Nair <sivaramn@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/clk/tegra/clk-bpmp.c