clk.c 878 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * (C) Copyright 2014 - 2015 Xilinx, Inc.
  4. * Michal Simek <michal.simek@xilinx.com>
  5. */
  6. #include <common.h>
  7. #include <asm/arch/clk.h>
  8. #include <asm/arch/hardware.h>
  9. #include <asm/arch/sys_proto.h>
  10. DECLARE_GLOBAL_DATA_PTR;
  11. unsigned long zynqmp_get_system_timer_freq(void)
  12. {
  13. u32 ver = zynqmp_get_silicon_version();
  14. switch (ver) {
  15. case ZYNQMP_CSU_VERSION_QEMU:
  16. return 50000000;
  17. }
  18. return 100000000;
  19. }
  20. #ifdef CONFIG_CLOCKS
  21. /**
  22. * set_cpu_clk_info() - Initialize clock framework
  23. * Always returns zero.
  24. *
  25. * This function is called from common code after relocation and sets up the
  26. * clock framework. The framework must not be used before this function had been
  27. * called.
  28. */
  29. int set_cpu_clk_info(void)
  30. {
  31. gd->cpu_clk = get_tbclk();
  32. gd->bd->bi_arm_freq = gd->cpu_clk / 1000000;
  33. gd->bd->bi_dsp_freq = 0;
  34. return 0;
  35. }
  36. #endif