arm_fconf_getter.h 593 B

1234567891011121314151617181920212223242526272829
  1. /*
  2. * Copyright (c) 2019-2020, ARM Limited. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #ifndef ARM_FCONF_GETTER
  7. #define ARM_FCONF_GETTER
  8. #include <assert.h>
  9. #include <lib/fconf/fconf.h>
  10. /* ARM io policies */
  11. #define arm__io_policies_getter(id) __extension__ ({ \
  12. assert((id) < MAX_NUMBER_IDS); \
  13. &policies[id]; \
  14. })
  15. struct plat_io_policy {
  16. uintptr_t *dev_handle;
  17. uintptr_t image_spec;
  18. int (*check)(const uintptr_t spec);
  19. };
  20. extern struct plat_io_policy policies[];
  21. int fconf_populate_arm_io_policies(uintptr_t config);
  22. #endif /* ARM_FCONF_GETTER */