
Hi Wolfgang,
On 26 January 2015 at 07:45, Wolfgang Denk wd@denx.de wrote:
Dear Simon,
In message 1422279795-3052-1-git-send-email-sjg@chromium.org you wrote:
From: Martin Dorwig dorwig@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,
- to declare the members of the struct
- to initialize the structmember pointers
- to call the functions in stubs.c
Signed-off-by: Martin Dorwig dorwig@tetronik.com Acked-by: Simon Glass sjg@chromium.org
Signed-off-by: Simon Glass sjg@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