All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] fsl_esdhc: Add no-snoop config for default init
Date: Sat, 11 Aug 2012 19:59:02 +0200 (CEST)	[thread overview]
Message-ID: <746717980.2303098.1344707942239.JavaMail.root@advansee.com> (raw)
In-Reply-To: <50269586.1060802@denx.de>

Hi Stefano,

On 08/11/2012 19:25:26, Stefano Babic wrote:
> On 11/08/2012 16:39, Beno?t Th?baudeau wrote:
> > Hi Stefano,
> > 
> 
> Hi,
> 
> > fsl_esdhc_mmc_init() exists, so it should give access to all
> > features.
> 
> This was left for compatibility with PowerPC SOCs.

OK.

> > Moreover,
> > it's shorter to #define a config option than to create custom
> > fsl_esdhc_mmc init
> > functions when only a single eSDHC instance is needed.
> 
> However, the number of CONFIG_ continues to increase, often not well
> documented.

OK.

> > Besides that, the cache snooping feature is not available on i.MX,
> > which means
> > that without CONFIG_SYS_FSL_ESDHC_NO_SNOOP or an equivalent, boards
> > using
> > fsl_esdhc_mmc_init() will make esdhc_init() access a reserved bit
> > of a reserved
> > register, which is not really recommended.
> 
> It should be masked by the i.MX code. You add
> CONFIG_SYS_FSL_ESDHC_NO_SNOOP and this is set inside the board
> configuration file. But this is not a board configuration option,
> rather
> a SOC option. Then it should the initialization code of i.MX that
> should
> hide this bit to the board itself.
> 
> Instead of this, I think it is better to change cpu_mmc_init() in
> arch/arm/cpu/armv7/imx-common/cpu.c, setting the structure and fixing
> the soop bit to 1, because i.MX has not this feature. Then all i.MX
> boards using ESDHC have the no_snoop bit set.

That could be a solution. However, that would have to be done for i.MX25 and
i.MX35 too (I have patches to add/fix eSDHC support for these that I will post
shortly), which means more duplicated code that should rather be centralized
somewhere.

> > On i.MX, the patch could also be improved by not making this option
> > available,
> > but behaving as if it were set.
> 
> Right. It should not be configurable. We know that the i.MXs have no
> snoop cabability.

The solution I would like would be to have some automatic ARCH_IMX (or ARCH_MXC)
config like on Linux. Then the fsl_esdhc driver could use this config to remove
all cache snooping stuff from its code and from struct fsl_esdhc_cfg.

The i.MX board files would have to be updated to no longer refer to the no_snoop
field. struct fsl_esdhc_cfg would then have only one field for i.MX, but this is
not really an issue.

ARCH_IMX could be defined in all imx-regs.h files. Or the fsl_esdhc driver could
simply use a #if testing all the supported CONFIG_MX*.

What do you think?

Best regards,
Beno?t

  reply	other threads:[~2012-08-11 17:59 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-10 21:13 [U-Boot] [PATCH] fsl_esdhc: Add no-snoop config for default init Benoît Thébaudeau
2012-08-11 10:43 ` Stefano Babic
2012-08-11 14:39   ` Benoît Thébaudeau
2012-08-11 17:25     ` Stefano Babic
2012-08-11 17:59       ` Benoît Thébaudeau [this message]
2012-08-11 21:57         ` stefano babic
2012-08-13 14:18           ` [U-Boot] [PATCH 1/2] imx: Define architecture identifier Benoît Thébaudeau
2012-08-13 14:18             ` [U-Boot] [PATCH 2/2] fsl_esdhc: Remove cache snooping for i.MX Benoît Thébaudeau
2012-08-13 14:24               ` Stefano Babic
2012-08-13 14:39                 ` Benoît Thébaudeau
2012-08-13 15:16                   ` Stefano Babic
2012-08-13 15:53                     ` [U-Boot] [PATCH v2 " Benoît Thébaudeau
2012-08-13 17:28                       ` [U-Boot] [PATCH v3 " Benoît Thébaudeau
2012-08-13 16:32             ` [U-Boot] [PATCH 1/2] imx: Define architecture identifier Otavio Salvador
2012-08-13 17:27               ` [U-Boot] [PATCH v3 1/2] mxc: " Benoît Thébaudeau
2012-09-01  7:35                 ` Stefano Babic
2012-08-12  6:25         ` [U-Boot] [PATCH] fsl_esdhc: Add no-snoop config for default init Stefano Babic
2012-08-12 13:52           ` Benoît Thébaudeau

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=746717980.2303098.1344707942239.JavaMail.root@advansee.com \
    --to=benoit.thebaudeau@advansee.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.