From: Stefan Roese <sr@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/8] APM82xxx: Add Common register definitions
Date: Fri, 27 Aug 2010 11:03:09 +0200 [thread overview]
Message-ID: <201008271103.09129.sr@denx.de> (raw)
In-Reply-To: <1282856749-24425-1-git-send-email-tmarri@apm.com>
Hi Marri,
On Thursday 26 August 2010 23:05:49 tmarri at apm.com wrote:
> From: Tirumala Marri <tmarri@apm.com>
>
> This patch adds APM82XXX specific definitions, which include
> clock and boot strap.
Please find some comments below.
> Signed-off-by: Tirumala R Marri <tmarri@apm.com>
> ---
> include/ppc440.h | 57
> ++++++++++++++++++++++++++++++++++++++++++++++++++++- include/ppc4xx.h |
> 7 +++--
> 2 files changed, 59 insertions(+), 5 deletions(-)
>
> diff --git a/include/ppc440.h b/include/ppc440.h
> index c807dda..3bd8e98 100644
> --- a/include/ppc440.h
> +++ b/include/ppc440.h
> @@ -58,6 +58,25 @@
>
> | Clocking Controller
>
>
> +-------------------------------------------------------------------------
> ---*/ /* values for clkcfga register - indirect addressing of these regs */
> +#if defined(CONFIG_APM82XXX)
> +#define CPR0_CLKUPD 0x0020
> +#define CPR0_PLLC 0x0040
> +#define CPR0_PLLC_SEL(pllc) (((pllc) & 0x01000000) >> 24)
> +#define CPR0_PLLD 0x0060
> +#define CPR0_PLLD_FDV(plld) (((plld) & 0xff000000) >> 24)
> +#define CPR0_PLLD_FWDVA(plld) (((plld) & 0x000f0000) >> 16)
> +#define CPR0_CPUD 0x0080
> +#define CPR0_CPUD_CPUDV(cpud) (((cpud) & 0x07000000) >> 24)
> +#define CPR0_PLB2D 0x00a0
> +#define CPR0_PLB2D_PLB2DV(plb2d) (((plb2d) & 0x06000000) >> 25)
> +#define CPR0_OPBD 0x00c0
> +#define CPR0_OPBD_OPBDV(opbd) (((opbd) & 0x03000000) >> 24)
> +#define CPR0_PERD 0x00e0
> +#define CPR0_PERD_PERDV(perd) (((perd) & 0x03000000) >> 24)
> +#define CPR0_DDR2D 0x0100
> +#define CPR0_DDR2D_DDR2DV(ddr2d) (((ddr2d) & 0x06000000) >> 25)
> +#define CLK_ICFG 0x0140
> +#else
> #define CPR0_PLLC 0x0040
> #define CPR0_PLLD 0x0060
> #define CPR0_PRIMAD0 0x0080
> @@ -67,6 +86,7 @@
> #define CPR0_MALD 0x0100
> #define CPR0_SPCID 0x0120
> #define CPR0_ICFG 0x0140
> +#endif /*if defined(CONFIG_APM82XXX) */
>
> /* 440EPX boot strap options */
> #define BOOT_STRAP_OPTION_A 0x00000000
> @@ -1275,7 +1295,36 @@
> #define SDR0_AHB_CFG 0x370
> #define SDR0_USB2HOST_CFG 0x371
> #endif /* CONFIG_460EX || CONFIG_460GT */
> +#if defined(CONFIG_APM82XXX)
> +
> +#define SDR0_DDR0 0x00E1
> +#define SDR0_DDR0_DDRM_ENCODE(n) ((((unsigned long)(n))&0x03)<<29)
> +#define SDR0_DDR0_DDRM_DECODE(n) ((((unsigned long)(n))>>29)&0x03)
> +#define SDR0_DDR0_TUNE_ENCODE(n) ((((unsigned long)(n))&0x2FF)<<0)
> +#define SDR0_DDR0_TUNE_DECODE(n) ((((unsigned long)(n))>>0)&0x2FF)
Add spaces around the operators. I suggest to replace "unsigned int"
with "u32" to reduce the line-size resulting in this:
#define SDR0_DDR0_DDRM_ENCODE(n) ((((u32)(n)) & 0x03) << 29)
#define SDR0_DDR0_DDRM_DECODE(n) ((((u32)(n)) >> 29) & 0x03)
#define SDR0_DDR0_TUNE_ENCODE(n) ((((u32)(n)) & 0x2FF) << 0)
#define SDR0_DDR0_TUNE_DECODE(n) ((((u32)(n)) >> 0) & 0x2FF)
BTW: I couldn't find any reference to this SDR0_DDR0 register (0xe1) in the
APM8xxx users manual. You might want to add this description there.
> +#define SDR_SDSTP1_RL_DECODE(x) ((x & 0x000C0000) >> 18)
Missing braces around "x".
> +#define SDR_SDSTP1_RL_EBC 0x0
> +#define SDR_SDSTP1_RL_NDFC 0x2
> +
> +/* ECID */
> +#define SDR0_ECID0 0x0080
> +#define SDR0_ECID1 0x0081
> +#define SDR0_ECID2 0x0082
> +#define SDR0_ECID3 0x0083
> +
> +/* AHB config. */
> +#define AHB_TOP 0xA4
> +#define AHB_BOT 0xA5
> +#define SDR0_AHB_CFG 0x370
> +
> +/* DDR SDRAM Controller clock (CPR register)*/
> +#define SDR0_DDRCE 0x00E0 /* SDR register */
> +#define CPR0_DDR2D 0x0100 /* CPR register */
> +#define CPR0_DDR2D_DDR2DV_ENCODE(n) ((((unsigned long)(n))&0x03)<<25)
> +#define CPR0_DDR2D_DDR2DV_DECODE(n) ((((unsigned long)(n))>>25)&0x03)
Again, please add spaces and change to u32.
Please change and resubmit. Thanks.
Cheers,
Stefan
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de
next prev parent reply other threads:[~2010-08-27 9:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-26 21:05 [U-Boot] [PATCH 2/8] APM82xxx: Add Common register definitions tmarri at apm.com
2010-08-27 9:03 ` Stefan Roese [this message]
2010-08-29 8:56 ` Wolfgang Denk
2010-08-30 18:45 ` Tirumala Marri
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=201008271103.09129.sr@denx.de \
--to=sr@denx.de \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.