All of lore.kernel.org
 help / color / mirror / Atom feed
From: Prabhakar Kushwaha <prabhakar@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/4] arm: ls102xa: Remove bit reversing for SCFG registers
Date: Mon, 29 Sep 2014 09:07:16 +0530	[thread overview]
Message-ID: <5428D3EC.2060202@freescale.com> (raw)
In-Reply-To: <1411959194-48189-2-git-send-email-b18965@freescale.com>

On 9/29/2014 8:23 AM, Alison Wang wrote:
> SCFG_SCFGREVCR is SCFG bit reverse register. This register
> must be written with 0xFFFFFFFF before writing to any other
> SCFG register. Then other SCFG register could be written in
> big-endian mode.
>
> Address: 157_0000h base + 200h offset = 157_0200h
> Bit   0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15|16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
> W/R                                   SCFGREV
> Reset 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
> 0-31
> SCFGREV SCFG Bit Reverse Control Filed
> 32'h 0000_0000 - No bit reverse is applied
> 32'h FFFF_FFFF - Bit reverse is applied; so 31:0 will be stored/read as 0:31
>
> This patch removes the bit reversing for SCFG registers in
> u-boot. It will be implemented through PBI commands in RCW
> .pbi
> write 0x570200, 0xffffffff
> .end
> So other SCFG register could be written in big-endian mode
> in u-boot or kernel directly.

If I understand correctly, below patch removes both setting 0xffffffff 
and 0x00000000.
does re-setting of SCFG_SCFGREVCR not a requirement?

Just a suggestion:  if SCFG_SCFGREVCR_REV and SCFG_SCFGREVCR_NOREV not 
required, remove the defines also.

> Signed-off-by: Alison Wang <alison.wang@freescale.com>
> ---
>   board/freescale/ls1021aqds/ls1021aqds.c | 2 --
>   board/freescale/ls1021atwr/ls1021atwr.c | 5 -----
>   2 files changed, 7 deletions(-)
>
> diff --git a/board/freescale/ls1021aqds/ls1021aqds.c b/board/freescale/ls1021aqds/ls1021aqds.c
> index e32dbeb..56028f8 100644
> --- a/board/freescale/ls1021aqds/ls1021aqds.c
> +++ b/board/freescale/ls1021aqds/ls1021aqds.c
> @@ -136,9 +136,7 @@ int board_early_init_f(void)
>   	struct ccsr_cci400 *cci = (struct ccsr_cci400 *)CONFIG_SYS_CCI400_ADDR;
>   
>   #ifdef CONFIG_TSEC_ENET
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_REV);
>   	out_be32(&scfg->etsecdmamcr, SCFG_ETSECDMAMCR_LE_BD_FR);
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_NOREV);
>   #endif
>   
>   #ifdef CONFIG_FSL_IFC
> diff --git a/board/freescale/ls1021atwr/ls1021atwr.c b/board/freescale/ls1021atwr/ls1021atwr.c
> index 811c911..ff7130e 100644
> --- a/board/freescale/ls1021atwr/ls1021atwr.c
> +++ b/board/freescale/ls1021atwr/ls1021atwr.c
> @@ -250,11 +250,8 @@ int board_early_init_f(void)
>   	struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR;
>   
>   #ifdef CONFIG_TSEC_ENET
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_REV);
>   	out_be32(&scfg->etsecdmamcr, SCFG_ETSECDMAMCR_LE_BD_FR);
>   	out_be32(&scfg->etsecmcr, SCFG_ETSECCMCR_GE2_CLK125);
> -	udelay(10);
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_NOREV);
>   #endif
>   
>   #ifdef CONFIG_FSL_IFC
> @@ -262,9 +259,7 @@ int board_early_init_f(void)
>   #endif
>   
>   #ifdef CONFIG_FSL_DCU_FB
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_REV);
>   	out_be32(&scfg->pixclkcr, SCFG_PIXCLKCR_PXCKEN);
> -	out_be32(&scfg->scfgrevcr, SCFG_SCFGREVCR_NOREV);
>   #endif
>   
>   	return 0;

  reply	other threads:[~2014-09-29  3:37 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-29  2:53 [U-Boot] [PATCH 1/4] Add snoop disable for slave port 0, port 1 and port 2 Alison Wang
2014-09-29  2:53 ` [U-Boot] [PATCH 2/4] arm: ls102xa: Remove bit reversing for SCFG registers Alison Wang
2014-09-29  3:37   ` Prabhakar Kushwaha [this message]
2014-09-29  4:21     ` Huan Wang
2014-09-29  2:53 ` [U-Boot] [PATCH 3/4] ls102xa: ifc: nor: fix the write issue when bytes unaligned Alison Wang
2014-09-29  3:21   ` Prabhakar Kushwaha
2014-09-29  2:53 ` [U-Boot] [PATCH 4/4] arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board Alison Wang
2014-10-04  8:58 ` [U-Boot] [PATCH 1/4] Add snoop disable for slave port 0, port 1 and port 2 Albert ARIBAUD
2014-10-08  7:55   ` Huan Wang

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=5428D3EC.2060202@freescale.com \
    --to=prabhakar@freescale.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.