motorola-cpcap.txt 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. Motorola CPCAP PMIC device tree binding
  2. Required properties:
  3. - compatible : One or both of "motorola,cpcap" or "ste,6556002"
  4. - reg : SPI chip select
  5. - interrupts : The interrupt line the device is connected to
  6. - interrupt-controller : Marks the device node as an interrupt controller
  7. - #interrupt-cells : The number of cells to describe an IRQ, should be 2
  8. - #address-cells : Child device offset number of cells, should be 1
  9. - #size-cells : Child device size number of cells, should be 0
  10. - spi-max-frequency : Typically set to 3000000
  11. - spi-cs-high : SPI chip select direction
  12. Optional subnodes:
  13. The sub-functions of CPCAP get their own node with their own compatible values,
  14. which are described in the following files:
  15. - ../power/supply/cpcap-battery.txt
  16. - ../power/supply/cpcap-charger.txt
  17. - ../regulator/cpcap-regulator.txt
  18. - ../phy/phy-cpcap-usb.txt
  19. - ../input/cpcap-pwrbutton.txt
  20. - ../rtc/cpcap-rtc.txt
  21. - ../leds/leds-cpcap.txt
  22. - ../iio/adc/cpcap-adc.txt
  23. The only exception is the audio codec. Instead of a compatible value its
  24. node must be named "audio-codec".
  25. Required properties for the audio-codec subnode:
  26. - #sound-dai-cells = <1>;
  27. The audio-codec provides two DAIs. The first one is connected to the
  28. Stereo HiFi DAC and the second one is connected to the Voice DAC.
  29. Example:
  30. &mcspi1 {
  31. cpcap: pmic@0 {
  32. compatible = "motorola,cpcap", "ste,6556002";
  33. reg = <0>; /* cs0 */
  34. interrupt-parent = <&gpio1>;
  35. interrupts = <7 IRQ_TYPE_EDGE_RISING>;
  36. interrupt-controller;
  37. #interrupt-cells = <2>;
  38. #address-cells = <1>;
  39. #size-cells = <0>;
  40. spi-max-frequency = <3000000>;
  41. spi-cs-high;
  42. audio-codec {
  43. #sound-dai-cells = <1>;
  44. /* HiFi */
  45. port@0 {
  46. endpoint {
  47. remote-endpoint = <&cpu_dai1>;
  48. };
  49. };
  50. /* Voice */
  51. port@1 {
  52. endpoint {
  53. remote-endpoint = <&cpu_dai2>;
  54. };
  55. };
  56. };
  57. };
  58. };