[U-Boot] [RFC PATCH 01/19] Introduce generic global_data

Simon Glass sjg at chromium.org
Mon Jan 9 19:17:15 CET 2012


Hi Andreas,

On Mon, Jan 9, 2012 at 3:21 AM, Andreas Bießmann
<andreas.devel at googlemail.com> wrote:
> Hi Simon and Graeme,
>
> On 08.01.2012 19:13, Simon Glass wrote:
>> Hi Graeme,
>>
>> On Sun, Jan 8, 2012 at 2:48 AM, Graeme Russ <graeme.russ at gmail.com> wrote:
>>> Hi Simon,
>>>
>>> On 08/01/12 09:33, Simon Glass wrote:
>>>> Hi Andreas,
>>>>
>>>> On Wed, Dec 28, 2011 at 11:47 PM, Andreas Bießmann
>>>> <andreas.devel at googlemail.com> wrote:
>>>>> Dear Simon,
>>>>>
>>>>> On 28.12.11 07:35, Simon Glass wrote:
>
> <snip discussion about 'how to restructure gd_t' ... should be done later>
>
>>>> For now I would prefer to do nothing on either point, since bringing
>>>> everything into one place shows up the conflicts and similarities.
>>>> Part of the purpose of the generic board effort is to minimise these,
>>>> and they are hard to spot if they are all in separate files.
>
> Currently I agree with you both. It would be best to just move all the
> specific stuff into one file but let the structure as is (from view of
> SoC/arch). Later on we could shrink it down by one of the mentioned
> possibilities.

OK good.

>
>>> Hmm, I'm starting to wonder if we should instead have:
>>>
>>> struct gd_generic {
>>>        /* Relocation stuff */
>>>
>>>        /* pre-console stuff */
>>>
>>>        /* Jump table stuff */
>>> }
>>>
>>> struct gd {
>>>        struct gd_generic common;
>>>
>>>        /* Arch specific stuff */
>>> }
>>>
>>> This eliminates the 'no arch specific global data' corner case
>
> Sounds good to me, but if we restructure gd_t in any way we should
> introduce some ability to version the struct for future changes (keep
> stand alone apps in mind!).

Yes - in fact just moving to generic board makes the API incompatible.
I suspect I should increment something somewhere - will take a look.

Regards,
Simon

>
> best regards
>
> Andreas Bießmann


More information about the U-Boot mailing list