From: R Sricharan <r.sricharan@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] omap: emif: configure emif only when required
Date: Wed, 14 Nov 2012 19:02:33 +0530 [thread overview]
Message-ID: <50A39D71.40402@ti.com> (raw)
In-Reply-To: <1352882943-14778-1-git-send-email-lokeshvutla@ti.com>
On Wednesday 14 November 2012 02:19 PM, Lokesh Vutla wrote:
> DMM_LISA_MAP registers program whether memory is mapped
> on particular EMIF or not. Irrespective of these registers
> EMIF is getting configured. Correcting the same.
>
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> ---
> arch/arm/cpu/armv7/omap-common/emif-common.c | 39 ++++++++++++++++++++++----
> 1 file changed, 34 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/cpu/armv7/omap-common/emif-common.c b/arch/arm/cpu/armv7/omap-common/emif-common.c
> index 30dcf1b..179525f 100644
> --- a/arch/arm/cpu/armv7/omap-common/emif-common.c
> +++ b/arch/arm/cpu/armv7/omap-common/emif-common.c
> @@ -33,6 +33,8 @@
> #include <asm/utils.h>
> #include <linux/compiler.h>
>
> +static int emif1_enabled = -1, emif2_enabled = -1;
> +
> void set_lpmode_selfrefresh(u32 base)
> {
> struct emif_reg_struct *emif = (struct emif_reg_struct *)base;
> @@ -1218,6 +1220,27 @@ void dmm_init(u32 base)
> }
> }
>
> +static void enable_emifs(void)
> +{
> + u32 i, section, valid;
> +
> + emif1_enabled = 0;
> + emif2_enabled = 0;
> + for (i = 0; i < 4; i++) {
> + section = __raw_readl(DMM_BASE + i*4);
> + valid = (section & EMIF_SDRC_MAP_MASK) >>
> + (EMIF_SDRC_MAP_SHIFT);
> + if (valid == 1) {
> + emif1_enabled = 1;
> + } else if (valid == 2) {
> + emif2_enabled = 1;
> + } else if (valid == 3) {
> + emif1_enabled = 1;
> + emif2_enabled = 1;
> + return;
> + }
> + }
> +}
> /*
> * SDRAM initialization:
> * SDRAM initialization has two parts:
> @@ -1255,15 +1278,21 @@ void sdram_init(void)
> writel(CM_DLL_CTRL_NO_OVERRIDE, &prcm->cm_dll_ctrl);
> }
>
> - do_sdram_init(EMIF1_BASE);
> - do_sdram_init(EMIF2_BASE);
> -
> if (!in_sdram)
> dmm_init(DMM_BASE);
>
> + enable_emifs();
The function name is odd. It has got nothing to do with enabling
EMIF's. It just identifies which is enabled ?. How about
set_enabled_emifs ?
Also this can done just when you are configuring the LISA registers.
That way a extra function is avoided.
Regards,
Sricharan
next prev parent reply other threads:[~2012-11-14 13:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-14 8:49 [U-Boot] [PATCH] omap: emif: configure emif only when required Lokesh Vutla
2012-11-14 13:32 ` R Sricharan [this message]
2012-11-14 16:44 ` Lokesh Vutla
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=50A39D71.40402@ti.com \
--to=r.sricharan@ti.com \
--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.