composite.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. Binding for TI composite clock.
  2. Binding status: Unstable - ABI compatibility may be broken in the future
  3. This binding uses the common clock binding[1]. It assumes a
  4. register-mapped composite clock with multiple different sub-types;
  5. a multiplexer clock with multiple input clock signals or parents, one
  6. of which can be selected as output, this behaves exactly as [2]
  7. an adjustable clock rate divider, this behaves exactly as [3]
  8. a gating function which can be used to enable and disable the output
  9. clock, this behaves exactly as [4]
  10. The binding must provide a list of the component clocks that shall be
  11. merged to this clock. The component clocks shall be of one of the
  12. "ti,*composite*-clock" types.
  13. [1] Documentation/devicetree/bindings/clock/clock-bindings.txt
  14. [2] Documentation/devicetree/bindings/clock/ti/mux.txt
  15. [3] Documentation/devicetree/bindings/clock/ti/divider.txt
  16. [4] Documentation/devicetree/bindings/clock/ti/gate.txt
  17. Required properties:
  18. - compatible : shall be: "ti,composite-clock"
  19. - clocks : link phandles of component clocks
  20. - #clock-cells : from common clock binding; shall be set to 0.
  21. Examples:
  22. usb_l4_gate_ick: usb_l4_gate_ick {
  23. #clock-cells = <0>;
  24. compatible = "ti,composite-interface-clock";
  25. clocks = <&l4_ick>;
  26. ti,bit-shift = <5>;
  27. reg = <0x0a10>;
  28. };
  29. usb_l4_div_ick: usb_l4_div_ick {
  30. #clock-cells = <0>;
  31. compatible = "ti,composite-divider-clock";
  32. clocks = <&l4_ick>;
  33. ti,bit-shift = <4>;
  34. ti,max-div = <1>;
  35. reg = <0x0a40>;
  36. ti,index-starts-at-one;
  37. };
  38. usb_l4_ick: usb_l4_ick {
  39. #clock-cells = <0>;
  40. compatible = "ti,composite-clock";
  41. clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>;
  42. };