sun6i-dsi.txt 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. Allwinner A31 DSI Encoder
  2. =========================
  3. The DSI pipeline consists of two separate blocks: the DSI controller
  4. itself, and its associated D-PHY.
  5. DSI Encoder
  6. -----------
  7. The DSI Encoder generates the DSI signal from the TCON's.
  8. Required properties:
  9. - compatible: value must be one of:
  10. * allwinner,sun6i-a31-mipi-dsi
  11. - reg: base address and size of memory-mapped region
  12. - interrupts: interrupt associated to this IP
  13. - clocks: phandles to the clocks feeding the DSI encoder
  14. * bus: the DSI interface clock
  15. * mod: the DSI module clock
  16. - clock-names: the clock names mentioned above
  17. - phys: phandle to the D-PHY
  18. - phy-names: must be "dphy"
  19. - resets: phandle to the reset controller driving the encoder
  20. - ports: A ports node with endpoint definitions as defined in
  21. Documentation/devicetree/bindings/media/video-interfaces.txt. The
  22. first port should be the input endpoint, usually coming from the
  23. associated TCON.
  24. Any MIPI-DSI device attached to this should be described according to
  25. the bindings defined in ../mipi-dsi-bus.txt
  26. D-PHY
  27. -----
  28. Required properties:
  29. - compatible: value must be one of:
  30. * allwinner,sun6i-a31-mipi-dphy
  31. - reg: base address and size of memory-mapped region
  32. - clocks: phandles to the clocks feeding the DSI encoder
  33. * bus: the DSI interface clock
  34. * mod: the DSI module clock
  35. - clock-names: the clock names mentioned above
  36. - resets: phandle to the reset controller driving the encoder
  37. Example:
  38. dsi0: dsi@1ca0000 {
  39. compatible = "allwinner,sun6i-a31-mipi-dsi";
  40. reg = <0x01ca0000 0x1000>;
  41. interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
  42. clocks = <&ccu CLK_BUS_MIPI_DSI>,
  43. <&ccu CLK_DSI_SCLK>;
  44. clock-names = "bus", "mod";
  45. resets = <&ccu RST_BUS_MIPI_DSI>;
  46. phys = <&dphy0>;
  47. phy-names = "dphy";
  48. #address-cells = <1>;
  49. #size-cells = <0>;
  50. panel@0 {
  51. compatible = "bananapi,lhr050h41", "ilitek,ili9881c";
  52. reg = <0>;
  53. power-gpios = <&pio 1 7 GPIO_ACTIVE_HIGH>; /* PB07 */
  54. reset-gpios = <&r_pio 0 5 GPIO_ACTIVE_LOW>; /* PL05 */
  55. backlight = <&pwm_bl>;
  56. };
  57. ports {
  58. #address-cells = <1>;
  59. #size-cells = <0>;
  60. port@0 {
  61. #address-cells = <1>;
  62. #size-cells = <0>;
  63. reg = <0>;
  64. dsi0_in_tcon0: endpoint {
  65. remote-endpoint = <&tcon0_out_dsi0>;
  66. };
  67. };
  68. };
  69. };
  70. dphy0: d-phy@1ca1000 {
  71. compatible = "allwinner,sun6i-a31-mipi-dphy";
  72. reg = <0x01ca1000 0x1000>;
  73. clocks = <&ccu CLK_BUS_MIPI_DSI>,
  74. <&ccu CLK_DSI_DPHY>;
  75. clock-names = "bus", "mod";
  76. resets = <&ccu RST_BUS_MIPI_DSI>;
  77. #phy-cells = <0>;
  78. };