mpic-msgr.txt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. * FSL MPIC Message Registers
  2. This binding specifies what properties must be available in the device tree
  3. representation of the message register blocks found in some FSL MPIC
  4. implementations.
  5. Required properties:
  6. - compatible: Specifies the compatibility list for the message register
  7. block. The type shall be <string-list> and the value shall be of the form
  8. "fsl,mpic-v<version>-msgr", where <version> is the version number of
  9. the MPIC containing the message registers.
  10. - reg: Specifies the base physical address(s) and size(s) of the
  11. message register block's addressable register space. The type shall be
  12. <prop-encoded-array>.
  13. - interrupts: Specifies a list of interrupt-specifiers which are available
  14. for receiving interrupts. Interrupt-specifier consists of two cells: first
  15. cell is interrupt-number and second cell is level-sense. The type shall be
  16. <prop-encoded-array>.
  17. Optional properties:
  18. - mpic-msgr-receive-mask: Specifies what registers in the containing block
  19. are allowed to receive interrupts. The value is a bit mask where a set
  20. bit at bit 'n' indicates that message register 'n' can receive interrupts.
  21. Note that "bit 'n'" is numbered from LSB for PPC hardware. The type shall
  22. be <u32>. If not present, then all of the message registers in the block
  23. are available.
  24. Aliases:
  25. An alias should be created for every message register block. They are not
  26. required, though. However, a particular implementation of this binding
  27. may require aliases to be present. Aliases are of the form
  28. 'mpic-msgr-block<n>', where <n> is an integer specifying the block's number.
  29. Numbers shall start at 0.
  30. Example:
  31. aliases {
  32. mpic-msgr-block0 = &mpic_msgr_block0;
  33. mpic-msgr-block1 = &mpic_msgr_block1;
  34. };
  35. mpic_msgr_block0: mpic-msgr-block@41400 {
  36. compatible = "fsl,mpic-v3.1-msgr";
  37. reg = <0x41400 0x200>;
  38. // Message registers 0 and 2 in this block can receive interrupts on
  39. // sources 0xb0 and 0xb2, respectively.
  40. interrupts = <0xb0 2 0xb2 2>;
  41. mpic-msgr-receive-mask = <0x5>;
  42. };
  43. mpic_msgr_block1: mpic-msgr-block@42400 {
  44. compatible = "fsl,mpic-v3.1-msgr";
  45. reg = <0x42400 0x200>;
  46. // Message registers 0 and 2 in this block can receive interrupts on
  47. // sources 0xb4 and 0xb6, respectively.
  48. interrupts = <0xb4 2 0xb6 2>;
  49. mpic-msgr-receive-mask = <0x5>;
  50. };