msm_serial.txt 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. * Qualcomm MSM UART
  2. Required properties:
  3. - compatible :
  4. - "qcom,msm-uart", and one of "qcom,msm-hsuart" or
  5. "qcom,msm-lsuart".
  6. - reg : offset and length of the register set for the device
  7. for the hsuart operating in compatible mode, there should be a
  8. second pair describing the gsbi registers.
  9. - interrupts : should contain the uart interrupt.
  10. There are two different UART blocks used in MSM devices,
  11. "qcom,msm-hsuart" and "qcom,msm-lsuart". The msm-serial driver is
  12. able to handle both of these, and matches against the "qcom,msm-uart"
  13. as the compatibility.
  14. The registers for the "qcom,msm-hsuart" device need to specify both
  15. register blocks, even for the common driver.
  16. Example:
  17. uart@19c400000 {
  18. compatible = "qcom,msm-hsuart", "qcom,msm-uart";
  19. reg = <0x19c40000 0x1000>,
  20. <0x19c00000 0x1000>;
  21. interrupts = <195>;
  22. };
  23. * Qualcomm MSM HSUART
  24. Required properties:
  25. - compatible : one of:
  26. - "qcom,msm-lsuart-v14"
  27. - reg : offset and length of the register set for the device.
  28. - interrupts : should contain the uart interrupt.
  29. Optional properties:
  30. - qcom,config-gpio : Set this value if UART GPIOs need to be configured by driver.
  31. set 4 if 4-wire UART used (for Tx, Rx, CTS, RFR GPIOs).
  32. Set 1 if 2-wire UART used (for Tx, Rx GPIOs).
  33. - qcom,<gpio-name>-gpio : handle to the GPIO node, see "gpios property" in
  34. Documentation/devicetree/bindings/gpio/gpio.txt.
  35. "gpio-name" can be "tx", "rx", "cts" and "rfr" based on number of UART GPIOs
  36. need to configured.
  37. qcom,use-pm : If present, this property will cause the device to prevent system
  38. suspend as long as the port remains open.
  39. - Refer to "Documentation/devicetree/bindings/arm/msm/msm_bus.txt" for below properties:
  40. - qcom,msm_bus,name
  41. - qcom,msm_bus,num_cases
  42. - qcom,msm_bus,active_only
  43. - qcom,msm_bus,num_paths
  44. - qcom,msm_bus,vectors
  45. Aliases:
  46. An alias may optionally be used to bind the serial device to a tty device
  47. (ttyHSLx) with a given line number. Aliases are of the form serial<n> where <n>
  48. is an integer representing the line number to use. On systems with multiple
  49. serial devices present it is recommended that an alias be defined for each such
  50. device.
  51. Example:
  52. aliases {
  53. serial0 = &uart0; // This device will be called ttyHSL0
  54. };
  55. uart0: serial@19c400000 {
  56. compatible = "qcom,msm-lsuart-v14"
  57. reg = <0x19c40000 0x1000">;
  58. interrupts = <195>;
  59. qcom,config-gpio = <4>;
  60. qcom,tx-gpio = <&msmgpio 41 0x00>;
  61. qcom,rx-gpio = <&msmgpio 42 0x00>;
  62. qcom,cts-gpio = <&msmgpio 43 0x00>;
  63. qcom,rfr-gpio = <&msmgpio 44 0x00>;
  64. qcom,use-pm;
  65. qcom,msm-bus,name = "serial_uart0";
  66. qcom,msm-bus,num-cases = <2>;
  67. qcom,msm-bus,num-paths = <1>;
  68. qcom,msm-bus,vectors-KBps =
  69. <84 512 0 0>,
  70. <84 512 500 800>;
  71. };