[U-Boot] [PATCH v5] Export redesign

Simon Glass sjg at chromium.org
Mon Jan 26 16:29:10 CET 2015


Hi Wolfgang,

On 26 January 2015 at 07:45, Wolfgang Denk <wd at denx.de> wrote:
> Dear Simon,
>
> In message <1422279795-3052-1-git-send-email-sjg at chromium.org> you wrote:
>> From: Martin Dorwig <dorwig at tetronik.com>
>>
>> this is an atempt to make the export of functions typesafe.
>> I replaced the jumptable void ** by a struct (jt_funcs) with function pointers.
>> The EXPORT_FUNC macro now has 3 fixed parameters and one
>> variadic parameter
>> The first is the name of the exported function,
>> the rest of the parameters are used to format a functionpointer
>> in the jumptable,
>>
>> the EXPORT_FUNC macros are expanded three times,
>> 1. to declare the members of the struct
>> 2. to initialize the structmember pointers
>> 3. to call the functions in stubs.c
>>
>> Signed-off-by: Martin Dorwig <dorwig at tetronik.com>
>> Acked-by: Simon Glass <sjg at chromium.org>
>>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> (resending to the list since my tweaks are not quite trivial)
>
> Is this a 100% binary compatible change?  If not, should we not also
> increment XF_VERSION ?

If a board has move to driver model and doesn't use
CONFIG_DM_I2C_COMPAT (and this should ideally not be used) then the
I2C functions are not present. I tested the compatibility to a basic
degree.

Perhaps we should increment it anyway, given it is such a major code change?

Regards,
Simon


More information about the U-Boot mailing list