All of lore.kernel.org
 help / color / mirror / Atom feed
From: York Sun <yorksun@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] driver/mxc_i2c: Move static data structure to global_data
Date: Wed, 12 Feb 2014 09:56:21 -0800	[thread overview]
Message-ID: <52FBB5C5.5000204@freescale.com> (raw)
In-Reply-To: <20140212144347.GD15819@bill-the-cat>

On 02/12/2014 06:43 AM, Tom Rini wrote:
> On Wed, Feb 12, 2014 at 03:27:58PM +0100, Wolfgang Denk wrote:
>> Dear York,
>>
>> In message <52FAA233.6090403@freescale.com> you wrote:
>>>
>>>> Well, after relocation GD has also been relocated, so your SRAM would
>>>> be comletely unused.
>>>
>>> Sounds like you are OK with using GD for this patch. Let's wait to hear from
>>> Tom. He nacked this idea.
>>
>> I don't say I think this is a good change.  I just tried to explain to
>> you that the SRAM will be unused after relocation completed.  Tom
>> probably has the same problem as I: I cannot understand why you are
>> changing the code.  If it's been working as is before, then why would
>> it stop now?
> 
> I think I see it.  We had been concerned with the SPL case, and the
> current driver work-around is how we do it (as to not litter gd->arch
> with lots of things just for drivers we need so very very early in SPL).
> York now has a different setup where this i2c block is being reused,
> where SRAM is big enough (apparently) to load the whole of U-Boot into
> and start execution from, but we still want to relocate into DDR.  This
> is a problem over in TI-land we've avoided by simply saying "lets keep
> using SPL anyhow".
> 

A minor correction, I am not putting u-boot in SRAM. I am reusing this mxc_i2c
driver. It has been working, but my situation is different. I am not using SPL.
U-boot runs in flash when the driver is called. I have SRAM to host stack and
GD. This driver requires writable memory. Obviously I have only three options,
use stack, GD, or make a special treatment to use SRAM. As we discussed and I
tried, using linker script to link it to SRAM is messy and the relocation result
is bad. I can't find a good way to use stack either. That leaves me the best
option is to use GD.

York

      reply	other threads:[~2014-02-12 17:56 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-10 22:02 [U-Boot] [PATCH] driver/mxc_i2c: Move static data structure to global_data York Sun
2014-02-10 22:10 ` Tom Rini
2014-02-10 22:28   ` York Sun
2014-02-10 22:45     ` Tom Rini
2014-02-10 22:47       ` York Sun
2014-02-11 18:01       ` York Sun
2014-02-11 21:46         ` York Sun
2014-02-12 14:41           ` Tom Rini
2014-02-11  2:34 ` York Sun
2014-02-11 19:25   ` Troy Kisky
2014-02-11 19:46     ` York Sun
2014-02-11 19:59       ` Wolfgang Denk
2014-02-11 20:03         ` York Sun
2014-02-11 20:57           ` Wolfgang Denk
2014-02-11 21:02             ` York Sun
2014-02-11 22:12               ` Wolfgang Denk
2014-02-11 22:20                 ` York Sun
2014-02-12 14:27                   ` Wolfgang Denk
2014-02-12 14:43                     ` Tom Rini
2014-02-12 17:56                       ` York Sun [this message]

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=52FBB5C5.5000204@freescale.com \
    --to=yorksun@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.