All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Nelson <eric.nelson@boundarydevices.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH V2] Add Boundary Devices Nitrogen6X boards
Date: Sun, 10 Mar 2013 09:25:22 -0700	[thread overview]
Message-ID: <513CB3F2.6080604@boundarydevices.com> (raw)
In-Reply-To: <20130310154511.C066D2010CD@gemini.denx.de>

Hi Wolfgang,

On 03/10/2013 08:45 AM, Wolfgang Denk wrote:
> Dear Eric Nelson,
>
> In message <513CA21E.1040608@boundarydevices.com> you wrote:
>>
>>> In this case it should be possible to configure U-Boot for the maximum
>>> possible RAM size (2 GB here?), then have get_ram_size() detect the
>>> actual available amount, and then adjust settings as needed.
>>
>> I'm not certain.
>>
>> The JEDEC spec for the DDR devices we're using have quite different
>> settings in a couple of areas. In particular, the tRFC value is
>> quite different between densities.
>
> Well, of course.  Different memory types / sizes will require
> different initialization.  But this you already have in place.  Now go
> the final step and auto-select the configuration instead of having the
> user (and manufacturer, and service, etc.) all suffer from the pain of
> always needing to know which exact configuration is needed on some
> board.
>

What we don't have is auto-detection and implementing this logic
requires that we execute code outside of DDR (i.e. through SPL
in internal RAM).

There's no question that a (more) universal binary would be helpful,
but in practice, checking the DDR parts isn't that different from
double-checking the CPU variant populated on a board.

Troy's attempt at handling the CPU portion of things was nacked,
which is what prompted me to this architecture of multiple CPU
configurations.

>> That throws a wrinkle into the whole patch set, since all of
>> this code presumes that we're running from DDR and other
>> calibration data was also gathered based on the actual parts
>> used.
>
> This is wrong then and needs to be fixed.  get_ram_size() should be
> used before relocation into RAM.
>

Either you or I are missing something.

As it stands, there is no "execute before relocation into RAM".
The CPU's ROM boot loader processes the settings in the DCD
(essentially a set of register writes) and then copies the
U-Boot code into DDR for execution.

The register writes need to configure the DDR before the copy.

The only way to change this is to use a first level loader that
executes code within the internal RAM so the setup can be
conditional.

Are you saying that submissions of board files that don't
support SPL will be nacked, or only boards that want to
support multiple memory configurations without SPL?

Please advise,


Eric

  reply	other threads:[~2013-03-10 16:25 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-10  0:04 [U-Boot] [PATCH V2] Add Boundary Devices Nitrogen6X boards Eric Nelson
2013-03-10  0:49 ` Troy Kisky
2013-03-10  8:02   ` Wolfgang Denk
2013-03-10 14:15   ` Eric Nelson
2013-03-10  7:59 ` Wolfgang Denk
2013-03-10 15:09   ` Eric Nelson
2013-03-10 15:45     ` Wolfgang Denk
2013-03-10 16:25       ` Eric Nelson [this message]
2013-03-10 22:03         ` Wolfgang Denk
2013-03-10 23:36           ` Eric Nelson
2013-03-11 11:15             ` Wolfgang Denk
2013-03-11 12:04               ` Stefano Babic
2013-03-11 13:18                 ` Fabio Estevam
2013-03-11 13:44                   ` Stefano Babic
2013-03-11 13:54                     ` Fabio Estevam
2013-03-11 14:02                     ` Eric Nelson
2013-03-11 14:30                       ` Stefano Babic
2013-03-11 14:39                         ` Tom Rini
2013-03-11 13:37               ` Eric Nelson
2013-03-11 16:48                 ` Wolfgang Denk

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=513CB3F2.6080604@boundarydevices.com \
    --to=eric.nelson@boundarydevices.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.