idt,versaclock5.txt 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. Binding for IDT VersaClock 5,6 programmable i2c clock generators.
  2. The IDT VersaClock 5 and VersaClock 6 are programmable i2c clock
  3. generators providing from 3 to 12 output clocks.
  4. ==I2C device node==
  5. Required properties:
  6. - compatible: shall be one of
  7. "idt,5p49v5923"
  8. "idt,5p49v5925"
  9. "idt,5p49v5933"
  10. "idt,5p49v5935"
  11. "idt,5p49v6901"
  12. - reg: i2c device address, shall be 0x68 or 0x6a.
  13. - #clock-cells: from common clock binding; shall be set to 1.
  14. - clocks: from common clock binding; list of parent clock handles,
  15. - 5p49v5923 and
  16. 5p49v5925 and
  17. 5p49v6901: (required) either or both of XTAL or CLKIN
  18. reference clock.
  19. - 5p49v5933 and
  20. - 5p49v5935: (optional) property not present (internal
  21. Xtal used) or CLKIN reference
  22. clock.
  23. - clock-names: from common clock binding; clock input names, can be
  24. - 5p49v5923 and
  25. 5p49v5925 and
  26. 5p49v6901: (required) either or both of "xin", "clkin".
  27. - 5p49v5933 and
  28. - 5p49v5935: (optional) property not present or "clkin".
  29. ==Mapping between clock specifier and physical pins==
  30. When referencing the provided clock in the DT using phandle and
  31. clock specifier, the following mapping applies:
  32. 5P49V5923:
  33. 0 -- OUT0_SEL_I2CB
  34. 1 -- OUT1
  35. 2 -- OUT2
  36. 5P49V5933:
  37. 0 -- OUT0_SEL_I2CB
  38. 1 -- OUT1
  39. 2 -- OUT4
  40. 5P49V5925 and
  41. 5P49V5935:
  42. 0 -- OUT0_SEL_I2CB
  43. 1 -- OUT1
  44. 2 -- OUT2
  45. 3 -- OUT3
  46. 4 -- OUT4
  47. 5P49V6901:
  48. 0 -- OUT0_SEL_I2CB
  49. 1 -- OUT1
  50. 2 -- OUT2
  51. 3 -- OUT3
  52. 4 -- OUT4
  53. ==Example==
  54. /* 25MHz reference crystal */
  55. ref25: ref25m {
  56. compatible = "fixed-clock";
  57. #clock-cells = <0>;
  58. clock-frequency = <25000000>;
  59. };
  60. i2c-master-node {
  61. /* IDT 5P49V5923 i2c clock generator */
  62. vc5: clock-generator@6a {
  63. compatible = "idt,5p49v5923";
  64. reg = <0x6a>;
  65. #clock-cells = <1>;
  66. /* Connect XIN input to 25MHz reference */
  67. clocks = <&ref25m>;
  68. clock-names = "xin";
  69. };
  70. };
  71. /* Consumer referencing the 5P49V5923 pin OUT1 */
  72. consumer {
  73. ...
  74. clocks = <&vc5 1>;
  75. ...
  76. }