wrap_iocsr_config.c 841 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright (C) 2015 Marek Vasut <marex@denx.de>
  4. */
  5. #include <common.h>
  6. #include <errno.h>
  7. #include <asm/arch/clock_manager.h>
  8. /* Board-specific header. */
  9. #include <qts/iocsr_config.h>
  10. int iocsr_get_config_table(const unsigned int chain_id,
  11. const unsigned long **table,
  12. unsigned int *table_len)
  13. {
  14. switch (chain_id) {
  15. case 0:
  16. *table = iocsr_scan_chain0_table;
  17. *table_len = CONFIG_HPS_IOCSR_SCANCHAIN0_LENGTH;
  18. break;
  19. case 1:
  20. *table = iocsr_scan_chain1_table;
  21. *table_len = CONFIG_HPS_IOCSR_SCANCHAIN1_LENGTH;
  22. break;
  23. case 2:
  24. *table = iocsr_scan_chain2_table;
  25. *table_len = CONFIG_HPS_IOCSR_SCANCHAIN2_LENGTH;
  26. break;
  27. case 3:
  28. *table = iocsr_scan_chain3_table;
  29. *table_len = CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH;
  30. break;
  31. default:
  32. return -EINVAL;
  33. }
  34. return 0;
  35. }