pxa25x.dtsi 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * Copyright (C) 2016 Robert Jarzmik <[email protected]>
  4. */
  5. #include "pxa2xx.dtsi"
  6. #include "dt-bindings/clock/pxa-clock.h"
  7. / {
  8. model = "Marvell PXA25x family SoC";
  9. compatible = "marvell,pxa250";
  10. clocks {
  11. /*
  12. * The muxing of external clocks/internal dividers for osc* clock
  13. * sources has been hidden under the carpet by now.
  14. */
  15. #address-cells = <1>;
  16. #size-cells = <1>;
  17. ranges;
  18. clks: pxa2xx_clks@41300004 {
  19. compatible = "marvell,pxa250-core-clocks";
  20. #clock-cells = <1>;
  21. status = "okay";
  22. };
  23. /* timer oscillator */
  24. clktimer: oscillator {
  25. compatible = "fixed-clock";
  26. #clock-cells = <0>;
  27. clock-frequency = <3686400>;
  28. clock-output-names = "ostimer";
  29. };
  30. };
  31. pxabus {
  32. pdma: dma-controller@40000000 {
  33. compatible = "marvell,pdma-1.0";
  34. reg = <0x40000000 0x10000>;
  35. interrupts = <25>;
  36. #dma-cells = <2>;
  37. /* For backwards compatibility: */
  38. #dma-channels = <16>;
  39. dma-channels = <16>;
  40. #dma-requests = <40>;
  41. dma-requests = <40>;
  42. status = "okay";
  43. };
  44. pxairq: interrupt-controller@40d00000 {
  45. marvell,intc-priority;
  46. marvell,intc-nr-irqs = <32>;
  47. };
  48. pinctrl: pinctrl@40e00000 {
  49. reg = <0x40e00054 0x20 0x40e0000c 0xc 0x40e0010c 4
  50. 0x40f00020 0x10>;
  51. compatible = "marvell,pxa25x-pinctrl";
  52. };
  53. gpio: gpio@40e00000 {
  54. compatible = "intel,pxa25x-gpio";
  55. gpio-ranges = <&pinctrl 0 0 84>;
  56. clocks = <&clks CLK_NONE>;
  57. };
  58. pwm0: pwm@40b00000 {
  59. compatible = "marvell,pxa250-pwm";
  60. reg = <0x40b00000 0x10>;
  61. #pwm-cells = <1>;
  62. clocks = <&clks CLK_PWM0>;
  63. };
  64. pwm1: pwm@40b00010 {
  65. compatible = "marvell,pxa250-pwm";
  66. reg = <0x40b00010 0x10>;
  67. #pwm-cells = <1>;
  68. clocks = <&clks CLK_PWM1>;
  69. };
  70. rtc@40900000 {
  71. clocks = <&clks CLK_OSC32k768>;
  72. };
  73. };
  74. timer@40a00000 {
  75. compatible = "marvell,pxa-timer";
  76. reg = <0x40a00000 0x20>;
  77. interrupts = <26>;
  78. clocks = <&clktimer>;
  79. status = "okay";
  80. };
  81. pxa250_opp_table: opp_table0 {
  82. compatible = "operating-points-v2";
  83. opp-99532800 {
  84. opp-hz = /bits/ 64 <99532800>;
  85. opp-microvolt = <1000000 950000 1650000>;
  86. clock-latency-ns = <20>;
  87. };
  88. opp-199065600 {
  89. opp-hz = /bits/ 64 <199065600>;
  90. opp-microvolt = <1000000 950000 1650000>;
  91. clock-latency-ns = <20>;
  92. };
  93. opp-298598400 {
  94. opp-hz = /bits/ 64 <298598400>;
  95. opp-microvolt = <1100000 1045000 1650000>;
  96. clock-latency-ns = <20>;
  97. };
  98. opp-398131200 {
  99. opp-hz = /bits/ 64 <398131200>;
  100. opp-microvolt = <1300000 1235000 1650000>;
  101. clock-latency-ns = <20>;
  102. };
  103. };
  104. };