bl_aux_params.h 957 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. * Copyright (c) 2019, Arm Limited and Contributors. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #ifndef LIB_BL_AUX_PARAMS_H
  7. #define LIB_BL_AUX_PARAMS_H
  8. #include <stdbool.h>
  9. #include <stdint.h>
  10. #include <export/lib/bl_aux_params/bl_aux_params_exp.h>
  11. /*
  12. * Handler function that handles an individual aux parameter. Return true if
  13. * the parameter was handled, and false if bl_aux_params_parse() should make its
  14. * own attempt at handling it (for generic parameters).
  15. */
  16. typedef bool (*bl_aux_param_handler_t)(struct bl_aux_param_header *param);
  17. /*
  18. * Interprets head as the start of an aux parameter list, and passes the
  19. * parameters individually to handler(). Handles generic parameters directly if
  20. * handler() hasn't already done so. If only generic parameters are expected,
  21. * handler() can be NULL.
  22. */
  23. void bl_aux_params_parse(u_register_t head,
  24. bl_aux_param_handler_t handler);
  25. #endif /* LIB_BL_AUX_PARAMS_H */