Add helper to parse BL31 parameters (both versions)
authorJulius Werner <jwerner@chromium.org>
Thu, 30 May 2019 00:01:46 +0000 (17:01 -0700)
committerJulius Werner <jwerner@chromium.org>
Wed, 24 Jul 2019 03:25:34 +0000 (20:25 -0700)
commitd9af1f7b6f4ec29d42d15936f254215ad061569f
tree2a49446f750bbb14a379a53288b9c2f72722fbba
parent57bf6057721306d1ad1af1122a831789ded92885
Add helper to parse BL31 parameters (both versions)

BL31 used to take a single bl31_params_t parameter structure with entry
point information in arg0. In commit 726002263 (Add new version of image
loading.) this API was changed to a more flexible linked list approach,
and the old parameter structure was copied into all platforms that still
used the old format. This duplicated code unnecessarily among all these
platforms.

This patch adds a helper function that platforms can optionally link to
outsource the task of interpreting arg0. Many platforms are just
interested in the BL32 and BL33 entry point information anyway. Since
some platforms still need to support the old version 1 parameters, the
helper will support both formats when ERROR_DEPRECATED == 0. This allows
those platforms to drop a bunch of boilerplate code and asynchronously
update their BL2 implementation to the newer format.

Change-Id: I9e6475adb1a7d4bccea666118bd1c54962e9fc38
Signed-off-by: Julius Werner <jwerner@chromium.org>
common/desc_image_load.c
include/common/desc_image_load.h