public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Stefan Roese <sr@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 2/4] gw_ventana: Move the DCD settings to spl code
Date: Thu, 04 Dec 2014 12:49:06 +0100	[thread overview]
Message-ID: <54804A32.8080704@denx.de> (raw)
In-Reply-To: <1415965022-4912-2-git-send-email-festevam@gmail.com>

Hi Fabio, Hi Tim,

On 14.11.2014 12:37, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam@freescale.com>
>
> mx6sabresd_spl.cfg configures CCM registers, GPR registers and CCM_CCOSR.
>
> Move the configuration to the spl code.
>
> CCM_CCOSR setting is no longer required to get audio functionality in the
> kernel, so remove such setting.

While reworking another mx6 based board (patches will follow soon), I 
noticed a problem with this patch. Please see below.

> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> Changes since v1:
> - Newly introduced on this series
>
>   board/gateworks/gw_ventana/clocks.cfg       | 42 -----------------------------
>   board/gateworks/gw_ventana/gw_ventana.cfg   |  6 -----
>   board/gateworks/gw_ventana/gw_ventana_spl.c | 28 +++++++++++++++++++
>   3 files changed, 28 insertions(+), 48 deletions(-)
>   delete mode 100644 board/gateworks/gw_ventana/clocks.cfg
>
> diff --git a/board/gateworks/gw_ventana/clocks.cfg b/board/gateworks/gw_ventana/clocks.cfg
> deleted file mode 100644
> index a8118a2..0000000
> --- a/board/gateworks/gw_ventana/clocks.cfg
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -/*
> - * Copyright (C) 2013 Boundary Devices
> - * Copyright (C) 2013 Gateworks Corporation
> - *
> - * SPDX-License-Identifier: GPL-2.0+
> - *
> - * Device Configuration Data (DCD)
> - *
> - * Each entry must have the format:
> - * Addr-type           Address        Value
> - *
> - * where:
> - *      Addr-type register length (1,2 or 4 bytes)
> - *      Address   absolute address of the register
> - *      value     value to be stored in the register
> - */
> -
> -/* set the default clock gate to save power */
> -DATA 4, CCM_CCGR0, 0x00C03F3F
> -DATA 4, CCM_CCGR1, 0x0030FC03
> -DATA 4, CCM_CCGR2, 0x0FFFC000
> -DATA 4, CCM_CCGR3, 0x3FF00000
> -DATA 4, CCM_CCGR4, 0xFFFFF300 /* enable NAND/GPMI/BCH clocks */

Notice here the 0xFFFFF300...

> -DATA 4, CCM_CCGR5, 0x0F0000C3
> -DATA 4, CCM_CCGR6, 0x000003FF
> -
> -/* enable AXI cache for VDOA/VPU/IPU */
> -DATA 4, MX6_IOMUXC_GPR4, 0xF00000CF
> -/* set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7 */
> -DATA 4, MX6_IOMUXC_GPR6, 0x007F007F
> -DATA 4, MX6_IOMUXC_GPR7, 0x007F007F
> -
> -/*
> - * Setup CCM_CCOSR register as follows:
> - *
> - * cko1_en  = 1    --> CKO1 enabled
> - * cko1_div = 111  --> divide by 8
> - * cko1_sel = 1011 --> ahb_clk_root
> - *
> - * This sets CKO1 at ahb_clk_root/8 = 132/8 = 16.5 MHz
> - */
> -DATA 4, CCM_CCOSR, 0x000000fb
> diff --git a/board/gateworks/gw_ventana/gw_ventana.cfg b/board/gateworks/gw_ventana/gw_ventana.cfg
> index 9ab95f5..dd8aa61 100644
> --- a/board/gateworks/gw_ventana/gw_ventana.cfg
> +++ b/board/gateworks/gw_ventana/gw_ventana.cfg
> @@ -21,9 +21,3 @@ BOOT_FROM      spi
>   #else
>   BOOT_FROM      nand
>   #endif
> -
> -#define __ASSEMBLY__
> -#include <config.h>
> -#include "asm/arch/iomux.h"
> -#include "asm/arch/crm_regs.h"
> -#include "clocks.cfg"
> diff --git a/board/gateworks/gw_ventana/gw_ventana_spl.c b/board/gateworks/gw_ventana/gw_ventana_spl.c
> index ca35b3c..d6a5847 100644
> --- a/board/gateworks/gw_ventana/gw_ventana_spl.c
> +++ b/board/gateworks/gw_ventana/gw_ventana_spl.c
> @@ -8,6 +8,7 @@
>   #include <common.h>
>   #include <i2c.h>
>   #include <asm/io.h>
> +#include <asm/arch/crm_regs.h>
>   #include <asm/arch/iomux.h>
>   #include <asm/arch/mx6-ddr.h>
>   #include <asm/arch/mx6-pins.h>
> @@ -392,6 +393,30 @@ static void spl_dram_init(int width, int size_mb, int board_model)
>   	mx6_dram_cfg(&sysinfo, calib, mem);
>   }
>
> +static void ccgr_init(void)
> +{
> +	struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
> +
> +	writel(0x00C03F3F, &ccm->CCGR0);
> +	writel(0x0030FC03, &ccm->CCGR1);
> +	writel(0x0FFFC000, &ccm->CCGR2);
> +	writel(0x3FF00000, &ccm->CCGR3);
> +	writel(0x00FFF300, &ccm->CCGR4);

... and now here the 0x00FFF300! I'm pretty sure that it should be the 
same value as above. Otherwise NAND booting will not work correctly. At 
least from my experience.

I'll send a patch to fix this shortly...

Thanks,
Stefan

  parent reply	other threads:[~2014-12-04 11:49 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-14 11:36 [U-Boot] [PATCH v2 1/4] mx6sabresd: Move the DCD settings to spl code Fabio Estevam
2014-11-14 11:37 ` [U-Boot] [PATCH v2 2/4] gw_ventana: " Fabio Estevam
2014-11-20  9:36   ` Stefano Babic
2014-12-04 11:49   ` Stefan Roese [this message]
2014-11-14 11:37 ` [U-Boot] [PATCH v2 3/4] novena: " Fabio Estevam
2014-11-14 20:07   ` Marek Vasut
2014-11-20  9:29     ` Stefano Babic
2014-11-20  9:37   ` Stefano Babic
2014-11-14 11:37 ` [U-Boot] [PATCH v2 4/4] mx6: Use a common SPL configuration file Fabio Estevam
2014-11-17 13:18   ` Stefano Babic
2014-11-20  9:37   ` Stefano Babic
2014-11-20  9:36 ` [U-Boot] [PATCH v2 1/4] mx6sabresd: Move the DCD settings to spl code Stefano Babic

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=54804A32.8080704@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox