summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Garber <jgarber1@ualberta.ca>2019-07-25 12:06:28 -0600
committerPatrick Georgi <pgeorgi@google.com>2019-07-29 06:01:42 +0000
commit693c55c545809f12663831f1f67c9584fb9533cd (patch)
treec4b7655e3f1cb582b2dd9f4cb976a810e4af6509
parent321daa86efebbe766afa4f6a023ecd6888be6ff8 (diff)
downloadcoreboot-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.c2
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;
}