icst525.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * arch/arm/include/asm/hardware/icst525.h
  3. *
  4. * Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. *
  10. * Support functions for calculating clocks/divisors for the ICST525
  11. * clock generators. See http://www.icst.com/ for more information
  12. * on these devices.
  13. */
  14. #ifndef ASMARM_HARDWARE_ICST525_H
  15. #define ASMARM_HARDWARE_ICST525_H
  16. struct icst525_params {
  17. unsigned long ref;
  18. unsigned long vco_max; /* inclusive */
  19. unsigned short vd_min; /* inclusive */
  20. unsigned short vd_max; /* inclusive */
  21. unsigned char rd_min; /* inclusive */
  22. unsigned char rd_max; /* inclusive */
  23. };
  24. struct icst525_vco {
  25. unsigned short v;
  26. unsigned char r;
  27. unsigned char s;
  28. };
  29. unsigned long icst525_khz(const struct icst525_params *p, struct icst525_vco vco);
  30. struct icst525_vco icst525_khz_to_vco(const struct icst525_params *p, unsigned long freq);
  31. struct icst525_vco icst525_ps_to_vco(const struct icst525_params *p, unsigned long period);
  32. #endif