diff options
author | Tom Rini <trini@konsulko.com> | 2021-11-11 09:04:20 -0500 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-11-11 09:04:20 -0500 |
commit | 1e72ad6b387c599f477f83cda67ab525c089a9b0 (patch) | |
tree | e9902c9fb94534a8c98d880db36a74a8ec17e173 /drivers/ddr/fsl/util.c | |
parent | 166a77b34b30f64f7b12a3016b0bba49d568c52e (diff) | |
parent | 99e1fa89f1a6ce13787af34cbd933c846bc7e93a (diff) |
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq
- device-tree sync-up with Linux for ls1028a
- fixes/update in fsl-ddr driver, fsl-validate, lx2162a, fsl-mc,
spintable code, configs, qspi node, pci
- enable EFI_SET_TIME support in sl28
- powerpc: Drop -mstring
Diffstat (limited to 'drivers/ddr/fsl/util.c')
-rw-r--r-- | drivers/ddr/fsl/util.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/ddr/fsl/util.c b/drivers/ddr/fsl/util.c index ac4f8d2732d..43cb01804b7 100644 --- a/drivers/ddr/fsl/util.c +++ b/drivers/ddr/fsl/util.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 /* * Copyright 2008-2014 Freescale Semiconductor, Inc. + * Copyright 2021 NXP */ #include <common.h> @@ -75,10 +76,13 @@ unsigned int get_memory_clk_period_ps(const unsigned int ctrl_num) /* Round to nearest 10ps, being careful about 64-bit multiply/divide */ unsigned long long rem, mclk_ps = ULL_2E12; - - /* Now perform the big divide, the result fits in 32-bits */ - rem = do_div(mclk_ps, data_rate); - result = (rem >= (data_rate >> 1)) ? mclk_ps + 1 : mclk_ps; + if (data_rate) { + /* Now perform the big divide, the result fits in 32-bits */ + rem = do_div(mclk_ps, data_rate); + result = (rem >= (data_rate >> 1)) ? mclk_ps + 1 : mclk_ps; + } else { + result = 0; + } return result; } |