|
9 | 9 | * |
10 | 10 | */ |
11 | 11 |
|
| 12 | +#include <dt-bindings/iio/adc/at91-sama5d2_adc.h> |
12 | 13 | #include <dt-bindings/interrupt-controller/irq.h> |
13 | 14 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
14 | 15 | #include <dt-bindings/reset/sama7g5-reset.h> |
15 | 16 | #include <dt-bindings/clock/at91.h> |
16 | 17 | #include <dt-bindings/dma/at91.h> |
17 | 18 | #include <dt-bindings/gpio/gpio.h> |
| 19 | +#include <dt-bindings/nvmem/microchip,otpc.h> |
| 20 | +#include <dt-bindings/thermal/thermal.h> |
18 | 21 |
|
19 | 22 | / { |
20 | 23 | model = "Microchip SAMA7G5 family SoC"; |
|
34 | 37 | clocks = <&pmc PMC_TYPE_CORE PMC_CPUPLL>; |
35 | 38 | clock-names = "cpu"; |
36 | 39 | operating-points-v2 = <&cpu_opp_table>; |
| 40 | + #cooling-cells = <2>; /* min followed by max */ |
37 | 41 | }; |
38 | 42 | }; |
39 | 43 |
|
|
72 | 76 | }; |
73 | 77 | }; |
74 | 78 |
|
| 79 | + thermal-zones { |
| 80 | + cpu_thermal: cpu-thermal { |
| 81 | + polling-delay-passive = <1000>; |
| 82 | + polling-delay = <5000>; |
| 83 | + sustainable-power = <2500>; |
| 84 | + thermal-sensors = <&thermal_sensor>; |
| 85 | + |
| 86 | + trips { |
| 87 | + cpu_normal: cpu-alert0 { |
| 88 | + temperature = <50000>; |
| 89 | + hysteresis = <0>; |
| 90 | + type = "passive"; |
| 91 | + }; |
| 92 | + |
| 93 | + cpu_hot: cpu-alert1 { |
| 94 | + temperature = <65000>; |
| 95 | + hysteresis = <0>; |
| 96 | + type = "passive"; |
| 97 | + }; |
| 98 | + |
| 99 | + cpu_critical: cpu-critical { |
| 100 | + temperature = <85000>; |
| 101 | + hysteresis = <0>; |
| 102 | + type = "critical"; |
| 103 | + }; |
| 104 | + }; |
| 105 | + |
| 106 | + cooling-maps { |
| 107 | + map0 { |
| 108 | + trip = <&cpu_normal>; |
| 109 | + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; |
| 110 | + }; |
| 111 | + |
| 112 | + map1 { |
| 113 | + trip = <&cpu_hot>; |
| 114 | + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; |
| 115 | + }; |
| 116 | + }; |
| 117 | + }; |
| 118 | + }; |
| 119 | + |
75 | 120 | clocks { |
76 | 121 | slow_xtal: slow_xtal { |
77 | 122 | compatible = "fixed-clock"; |
|
148 | 193 | status = "disabled"; |
149 | 194 | }; |
150 | 195 |
|
| 196 | + thermal_sensor: thermal-sensor { |
| 197 | + compatible = "generic-adc-thermal"; |
| 198 | + #thermal-sensor-cells = <0>; |
| 199 | + io-channels = <&adc AT91_SAMA7G5_ADC_TEMP_CHANNEL>; |
| 200 | + io-channel-names = "sensor-channel"; |
| 201 | + }; |
| 202 | + |
151 | 203 | ns_sram: sram@100000 { |
152 | 204 | compatible = "mmio-sram"; |
153 | 205 | #address-cells = <1>; |
|
510 | 562 | atmel,min-sample-rate-hz = <200000>; |
511 | 563 | atmel,max-sample-rate-hz = <20000000>; |
512 | 564 | atmel,startup-time-ms = <4>; |
| 565 | + #io-channel-cells = <1>; |
| 566 | + nvmem-cells = <&temperature_calib>; |
| 567 | + nvmem-cell-names = "temperature_calib"; |
513 | 568 | status = "disabled"; |
514 | 569 | }; |
515 | 570 |
|
|
1131 | 1186 | reg = <0xe3804000 0x1000>; |
1132 | 1187 | }; |
1133 | 1188 |
|
| 1189 | + otpc: otpc@e8c00000 { |
| 1190 | + compatible = "microchip,sama7g5-otpc", "syscon"; |
| 1191 | + reg = <0xe8c00000 0x100>; |
| 1192 | + #address-cells = <1>; |
| 1193 | + #size-cells = <1>; |
| 1194 | + |
| 1195 | + temperature_calib: calib@1 { |
| 1196 | + reg = <OTP_PKT(1) OTP_PKT_SAMA7G5_TEMP_CALIB_LEN>; |
| 1197 | + }; |
| 1198 | + }; |
| 1199 | + |
1134 | 1200 | gic: interrupt-controller@e8c11000 { |
1135 | 1201 | compatible = "arm,cortex-a7-gic"; |
1136 | 1202 | #interrupt-cells = <3>; |
|
0 commit comments