diff options
author | Jacob Garber <jgarber1@ualberta.ca> | 2019-07-25 12:06:28 -0600 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2019-07-29 06:01:42 +0000 |
commit | 693c55c545809f12663831f1f67c9584fb9533cd (patch) | |
tree | c4b7655e3f1cb582b2dd9f4cb976a810e4af6509 | |
parent | 321daa86efebbe766afa4f6a023ecd6888be6ff8 (diff) | |
download | coreboot-693c55c545809f12663831f1f67c9584fb9533cd.tar.xz |
soc/nvidia/tegra124: Assert divisor is non-zero
The logic for the calculation of plld.m is rather complicated, so do a
sanity check that it is non-zero before doing the division.
Change-Id: I60f49b8eed47a3de86713304bde7a4d3f3d935dd
Signed-off-by: Jacob Garber <jgarber1@ualberta.ca>
Found-by: Coverity CID 1260981
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34572
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r-- | src/soc/nvidia/tegra124/clock.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/soc/nvidia/tegra124/clock.c b/src/soc/nvidia/tegra124/clock.c index 6877c04b98..bb0343d432 100644 --- a/src/soc/nvidia/tegra124/clock.c +++ b/src/soc/nvidia/tegra124/clock.c @@ -13,6 +13,7 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ +#include <assert.h> #include <arch/clock.h> #include <device/mmio.h> #include <console/console.h> @@ -377,6 +378,7 @@ clock_display(u32 frequency) printk(BIOS_WARNING, "%s: Failed to match output frequency %u, " "best difference is %u.\n", __func__, frequency, best_diff); + assert(plld.m != 0); rounded_rate = (ref / plld.m * plld.n) >> plld.p; } |