From: Eric Jarrige <eric.jarrige@armadeus.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 6/9] mx1: improve PLL freq computation
Date: Wed, 10 Aug 2011 22:33:30 +0200 [thread overview]
Message-ID: <20110810203330.21204.88742.stgit@shuttle2.etheralp.ch> (raw)
In-Reply-To: <20110810200828.21204.60050.stgit@shuttle2.etheralp.ch>
Improve PLL freq computation by using the full resolution of the PLL registers
Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
Cc: Stefano Babic <sbabic@denx.de>
---
arch/arm/cpu/arm920t/imx/speed.c | 29 +++++++++++------------------
1 files changed, 11 insertions(+), 18 deletions(-)
diff --git a/arch/arm/cpu/arm920t/imx/speed.c b/arch/arm/cpu/arm920t/imx/speed.c
index 1e29698..b1c2bd6 100644
--- a/arch/arm/cpu/arm920t/imx/speed.c
+++ b/arch/arm/cpu/arm920t/imx/speed.c
@@ -36,33 +36,26 @@
* the specified bus in HZ.
*/
/* ------------------------------------------------------------------------- */
-
-ulong get_systemPLLCLK(void)
+static ulong get_PLLCLK(u32 sys_clk_freq, u32 pllctl0)
{
/* FIXME: We assume System_SEL = 0 here */
- u32 spctl0 = SPCTL0;
- u32 mfi = (spctl0 >> 10) & 0xf;
- u32 mfn = spctl0 & 0x3f;
- u32 mfd = (spctl0 >> 16) & 0x3f;
- u32 pd = (spctl0 >> 26) & 0xf;
+ u32 mfi = (pllctl0 >> 10) & 0xf;
+ u32 mfn = pllctl0 & 0x3ff;
+ u32 mfd = (pllctl0 >> 16) & 0x3ff;
+ u32 pd = (pllctl0 >> 26) & 0xf;
mfi = mfi<=5 ? 5 : mfi;
+ return (2*(u64)sys_clk_freq * (mfi*(mfd+1) + mfn))/((mfd+1)*(pd+1));
+}
- return (2*(CONFIG_SYSPLL_CLK_FREQ>>10)*( (mfi<<10) + (mfn<<10)/(mfd+1)))/(pd+1);
+ulong get_systemPLLCLK(void)
+{
+ return get_PLLCLK(CONFIG_SYSPLL_CLK_FREQ, SPCTL0);
}
ulong get_mcuPLLCLK(void)
{
- /* FIXME: We assume System_SEL = 0 here */
- u32 mpctl0 = MPCTL0;
- u32 mfi = (mpctl0 >> 10) & 0xf;
- u32 mfn = mpctl0 & 0x3f;
- u32 mfd = (mpctl0 >> 16) & 0x3f;
- u32 pd = (mpctl0 >> 26) & 0xf;
-
- mfi = mfi<=5 ? 5 : mfi;
-
- return (2*(CONFIG_SYS_CLK_FREQ>>10)*( (mfi<<10) + (mfn<<10)/(mfd+1)))/(pd+1);
+ return get_PLLCLK(CONFIG_SYS_CLK_FREQ, MPCTL0);
}
ulong get_FCLK(void)
next prev parent reply other threads:[~2011-08-10 20:33 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-10 20:33 [U-Boot] [PATCH 0/9] Series short description Eric Jarrige
2011-08-10 20:33 ` [U-Boot] [PATCH 1/9] mx1: export imx_gpio_mode() function Eric Jarrige
2011-08-10 20:33 ` [U-Boot] [PATCH 2/9] mx1: add i2c registers Eric Jarrige
2011-08-11 8:52 ` Stefano Babic
2011-08-11 23:49 ` Eric Jarrige
2011-10-06 22:04 ` Wolfgang Denk
2011-08-10 20:33 ` [U-Boot] [PATCH 3/9] apf9328: Add Armadeus Project board APF9328 Eric Jarrige
2011-08-11 8:50 ` Stefano Babic
2011-08-11 23:41 ` Eric Jarrige
2011-08-12 6:49 ` Stefano Babic
2011-08-17 7:31 ` Igor Grinberg
2011-08-17 21:58 ` Eric Jarrige
2011-08-18 6:20 ` Igor Grinberg
2011-08-18 8:51 ` Stefano Babic
2011-08-10 20:33 ` [U-Boot] [PATCH 4/9] apf9328: add apf9328 board in Makefile Eric Jarrige
2011-08-10 20:33 ` [U-Boot] [PATCH 5/9] apf9328: add default board configuration file Eric Jarrige
2011-08-11 9:21 ` Stefano Babic
2011-08-15 20:25 ` Eric Jarrige
2011-08-23 9:46 ` Stefano Babic
2011-08-24 4:50 ` Eric Jarrige
2011-08-23 11:26 ` Wolfgang Denk
2011-08-24 4:56 ` Eric Jarrige
2011-08-24 5:49 ` Wolfgang Denk
2011-08-24 6:34 ` Wolfgang Denk
2011-08-24 23:01 ` Eric Jarrige
2011-08-24 22:26 ` Eric Jarrige
2011-08-24 22:56 ` Wolfgang Denk
2011-08-24 6:22 ` Stefano Babic
2011-08-24 23:08 ` Eric Jarrige
2011-10-06 22:03 ` Wolfgang Denk
2011-08-10 20:33 ` Eric Jarrige [this message]
2011-08-11 9:22 ` [U-Boot] [PATCH 6/9] mx1: improve PLL freq computation Stefano Babic
2011-08-12 0:03 ` Eric Jarrige
2011-08-12 0:28 ` Eric Jarrige
2011-08-12 6:51 ` Stefano Babic
2011-08-10 20:33 ` [U-Boot] [PATCH 7/9] mx1: change a printf in speed.c to use debug instead Eric Jarrige
2011-08-10 20:33 ` [U-Boot] [PATCH 8/9] DM9000: change some printf " Eric Jarrige
2011-08-11 7:26 ` Simon Schwarz
2011-08-11 8:01 ` Detlev Zundel
2011-08-11 10:51 ` Eric Jarrige
2011-08-24 20:20 ` Wolfgang Denk
2011-08-24 23:04 ` Eric Jarrige
2011-08-25 3:19 ` Marek Vasut
2011-08-25 5:49 ` Wolfgang Denk
2011-08-11 9:27 ` Stefano Babic
2011-08-10 20:33 ` [U-Boot] [PATCH 9/9] arm920t: Fix jump to the relocated board_init_r Eric Jarrige
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110810203330.21204.88742.stgit@shuttle2.etheralp.ch \
--to=eric.jarrige@armadeus.org \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox