Lines Matching +full:fifo +full:- +full:watermark +full:- +full:aligned

1 // SPDX-License-Identifier: GPL-2.0 OR MIT
7 /dts-v1/;
8 #include <dt-bindings/clock/starfive,jh7110-crg.h>
9 #include <dt-bindings/power/starfive,jh7110-pmu.h>
10 #include <dt-bindings/reset/starfive,jh7110-crg.h>
11 #include <dt-bindings/thermal/thermal.h>
15 #address-cells = <2>;
16 #size-cells = <2>;
19 #address-cells = <1>;
20 #size-cells = <0>;
26 i-cache-block-size = <64>;
27 i-cache-sets = <64>;
28 i-cache-size = <16384>;
29 next-level-cache = <&ccache>;
31 riscv,isa-base = "rv64i";
32 riscv,isa-extensions = "i", "m", "a", "c", "zba", "zbb", "zicntr", "zicsr",
36 cpu0_intc: interrupt-controller {
37 compatible = "riscv,cpu-intc";
38 interrupt-controller;
39 #interrupt-cells = <1>;
44 compatible = "sifive,u74-mc", "riscv";
46 d-cache-block-size = <64>;
47 d-cache-sets = <64>;
48 d-cache-size = <32768>;
49 d-tlb-sets = <1>;
50 d-tlb-size = <40>;
52 i-cache-block-size = <64>;
53 i-cache-sets = <64>;
54 i-cache-size = <32768>;
55 i-tlb-sets = <1>;
56 i-tlb-size = <40>;
57 mmu-type = "riscv,sv39";
58 next-level-cache = <&ccache>;
60 riscv,isa-base = "rv64i";
61 riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zba", "zbb", "zicntr",
63 tlb-split;
64 operating-points-v2 = <&cpu_opp>;
66 clock-names = "cpu";
67 #cooling-cells = <2>;
69 cpu1_intc: interrupt-controller {
70 compatible = "riscv,cpu-intc";
71 interrupt-controller;
72 #interrupt-cells = <1>;
77 compatible = "sifive,u74-mc", "riscv";
79 d-cache-block-size = <64>;
80 d-cache-sets = <64>;
81 d-cache-size = <32768>;
82 d-tlb-sets = <1>;
83 d-tlb-size = <40>;
85 i-cache-block-size = <64>;
86 i-cache-sets = <64>;
87 i-cache-size = <32768>;
88 i-tlb-sets = <1>;
89 i-tlb-size = <40>;
90 mmu-type = "riscv,sv39";
91 next-level-cache = <&ccache>;
93 riscv,isa-base = "rv64i";
94 riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zba", "zbb", "zicntr",
96 tlb-split;
97 operating-points-v2 = <&cpu_opp>;
99 clock-names = "cpu";
100 #cooling-cells = <2>;
102 cpu2_intc: interrupt-controller {
103 compatible = "riscv,cpu-intc";
104 interrupt-controller;
105 #interrupt-cells = <1>;
110 compatible = "sifive,u74-mc", "riscv";
112 d-cache-block-size = <64>;
113 d-cache-sets = <64>;
114 d-cache-size = <32768>;
115 d-tlb-sets = <1>;
116 d-tlb-size = <40>;
118 i-cache-block-size = <64>;
119 i-cache-sets = <64>;
120 i-cache-size = <32768>;
121 i-tlb-sets = <1>;
122 i-tlb-size = <40>;
123 mmu-type = "riscv,sv39";
124 next-level-cache = <&ccache>;
126 riscv,isa-base = "rv64i";
127 riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zba", "zbb", "zicntr",
129 tlb-split;
130 operating-points-v2 = <&cpu_opp>;
132 clock-names = "cpu";
133 #cooling-cells = <2>;
135 cpu3_intc: interrupt-controller {
136 compatible = "riscv,cpu-intc";
137 interrupt-controller;
138 #interrupt-cells = <1>;
143 compatible = "sifive,u74-mc", "riscv";
145 d-cache-block-size = <64>;
146 d-cache-sets = <64>;
147 d-cache-size = <32768>;
148 d-tlb-sets = <1>;
149 d-tlb-size = <40>;
151 i-cache-block-size = <64>;
152 i-cache-sets = <64>;
153 i-cache-size = <32768>;
154 i-tlb-sets = <1>;
155 i-tlb-size = <40>;
156 mmu-type = "riscv,sv39";
157 next-level-cache = <&ccache>;
159 riscv,isa-base = "rv64i";
160 riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zba", "zbb", "zicntr",
162 tlb-split;
163 operating-points-v2 = <&cpu_opp>;
165 clock-names = "cpu";
166 #cooling-cells = <2>;
168 cpu4_intc: interrupt-controller {
169 compatible = "riscv,cpu-intc";
170 interrupt-controller;
171 #interrupt-cells = <1>;
175 cpu-map {
200 cpu_opp: opp-table-0 {
201 compatible = "operating-points-v2";
202 opp-shared;
203 opp-375000000 {
204 opp-hz = /bits/ 64 <375000000>;
205 opp-microvolt = <800000>;
207 opp-500000000 {
208 opp-hz = /bits/ 64 <500000000>;
209 opp-microvolt = <800000>;
211 opp-750000000 {
212 opp-hz = /bits/ 64 <750000000>;
213 opp-microvolt = <800000>;
215 opp-1500000000 {
216 opp-hz = /bits/ 64 <1500000000>;
217 opp-microvolt = <1040000>;
221 thermal-zones {
222 cpu-thermal {
223 polling-delay-passive = <250>;
224 polling-delay = <15000>;
226 thermal-sensors = <&sfctemp>;
228 cooling-maps {
231 cooling-device =
240 cpu_alert0: cpu-alert0 {
247 cpu-crit {
257 dvp_clk: dvp-clock {
258 compatible = "fixed-clock";
259 clock-output-names = "dvp_clk";
260 #clock-cells = <0>;
262 gmac0_rgmii_rxin: gmac0-rgmii-rxin-clock {
263 compatible = "fixed-clock";
264 clock-output-names = "gmac0_rgmii_rxin";
265 #clock-cells = <0>;
268 gmac0_rmii_refin: gmac0-rmii-refin-clock {
269 compatible = "fixed-clock";
270 clock-output-names = "gmac0_rmii_refin";
271 #clock-cells = <0>;
274 gmac1_rgmii_rxin: gmac1-rgmii-rxin-clock {
275 compatible = "fixed-clock";
276 clock-output-names = "gmac1_rgmii_rxin";
277 #clock-cells = <0>;
280 gmac1_rmii_refin: gmac1-rmii-refin-clock {
281 compatible = "fixed-clock";
282 clock-output-names = "gmac1_rmii_refin";
283 #clock-cells = <0>;
286 hdmitx0_pixelclk: hdmitx0-pixel-clock {
287 compatible = "fixed-clock";
288 clock-output-names = "hdmitx0_pixelclk";
289 #clock-cells = <0>;
292 i2srx_bclk_ext: i2srx-bclk-ext-clock {
293 compatible = "fixed-clock";
294 clock-output-names = "i2srx_bclk_ext";
295 #clock-cells = <0>;
298 i2srx_lrck_ext: i2srx-lrck-ext-clock {
299 compatible = "fixed-clock";
300 clock-output-names = "i2srx_lrck_ext";
301 #clock-cells = <0>;
304 i2stx_bclk_ext: i2stx-bclk-ext-clock {
305 compatible = "fixed-clock";
306 clock-output-names = "i2stx_bclk_ext";
307 #clock-cells = <0>;
310 i2stx_lrck_ext: i2stx-lrck-ext-clock {
311 compatible = "fixed-clock";
312 clock-output-names = "i2stx_lrck_ext";
313 #clock-cells = <0>;
316 mclk_ext: mclk-ext-clock {
317 compatible = "fixed-clock";
318 clock-output-names = "mclk_ext";
319 #clock-cells = <0>;
323 compatible = "fixed-clock";
324 clock-output-names = "osc";
325 #clock-cells = <0>;
328 rtc_osc: rtc-oscillator {
329 compatible = "fixed-clock";
330 clock-output-names = "rtc_osc";
331 #clock-cells = <0>;
334 stmmac_axi_setup: stmmac-axi-config {
341 tdm_ext: tdm-ext-clock {
342 compatible = "fixed-clock";
343 clock-output-names = "tdm_ext";
344 #clock-cells = <0>;
348 compatible = "simple-bus";
349 interrupt-parent = <&plic>;
350 #address-cells = <2>;
351 #size-cells = <2>;
355 compatible = "starfive,jh7110-clint", "sifive,clint0";
357 interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
364 ccache: cache-controller@2010000 {
365 compatible = "starfive,jh7110-ccache", "sifive,ccache0", "cache";
368 cache-block-size = <64>;
369 cache-level = <2>;
370 cache-sets = <2048>;
371 cache-size = <2097152>;
372 cache-unified;
375 plic: interrupt-controller@c000000 {
376 compatible = "starfive,jh7110-plic", "sifive,plic-1.0.0";
378 interrupts-extended = <&cpu0_intc 11>,
383 interrupt-controller;
384 #interrupt-cells = <1>;
385 #address-cells = <0>;
390 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
394 clock-names = "baudclk", "apb_pclk";
398 reg-io-width = <4>;
399 reg-shift = <2>;
404 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
408 clock-names = "baudclk", "apb_pclk";
412 reg-io-width = <4>;
413 reg-shift = <2>;
418 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
422 clock-names = "baudclk", "apb_pclk";
426 reg-io-width = <4>;
427 reg-shift = <2>;
432 compatible = "snps,designware-i2c";
435 clock-names = "ref";
438 #address-cells = <1>;
439 #size-cells = <0>;
444 compatible = "snps,designware-i2c";
447 clock-names = "ref";
450 #address-cells = <1>;
451 #size-cells = <0>;
456 compatible = "snps,designware-i2c";
459 clock-names = "ref";
462 #address-cells = <1>;
463 #size-cells = <0>;
472 clock-names = "sspclk", "apb_pclk";
475 arm,primecell-periphid = <0x00041022>;
476 num-cs = <1>;
477 #address-cells = <1>;
478 #size-cells = <0>;
487 clock-names = "sspclk", "apb_pclk";
490 arm,primecell-periphid = <0x00041022>;
491 num-cs = <1>;
492 #address-cells = <1>;
493 #size-cells = <0>;
502 clock-names = "sspclk", "apb_pclk";
505 arm,primecell-periphid = <0x00041022>;
506 num-cs = <1>;
507 #address-cells = <1>;
508 #size-cells = <0>;
513 compatible = "starfive,jh7110-tdm";
521 clock-names = "tdm_ahb", "tdm_apb",
528 dma-names = "rx","tx";
529 #sound-dai-cells = <0>;
534 compatible = "starfive,jh7110-i2srx";
545 clock-names = "i2sclk", "apb", "mclk",
551 dma-names = "tx", "rx";
553 #sound-dai-cells = <0>;
558 compatible = "starfive,jh7110-pwmdac";
562 clock-names = "apb", "core";
565 dma-names = "tx";
566 #sound-dai-cells = <0>;
571 compatible = "starfive,jh7110-usb";
573 #address-cells = <1>;
574 #size-cells = <1>;
575 starfive,stg-syscon = <&stg_syscon 0x4>;
581 clock-names = "lpm", "stb", "apb", "axi", "utmi_apb";
586 reset-names = "pwrup", "apb", "axi", "utmi_apb";
594 reg-names = "otg", "xhci", "dev";
596 interrupt-names = "host", "peripheral", "otg";
598 phy-names = "cdns3,usb2-phy";
603 compatible = "starfive,jh7110-usb-phy";
607 clock-names = "125m", "app_125m";
608 #phy-cells = <0>;
612 compatible = "starfive,jh7110-pcie-phy";
614 starfive,sys-syscon = <&sys_syscon 0x18>;
615 starfive,stg-syscon = <&stg_syscon 0x148 0x1f4>;
616 #phy-cells = <0>;
620 compatible = "starfive,jh7110-pcie-phy";
622 #phy-cells = <0>;
625 stgcrg: clock-controller@10230000 {
626 compatible = "starfive,jh7110-stgcrg";
636 clock-names = "osc", "hifi4_core",
640 #clock-cells = <1>;
641 #reset-cells = <1>;
645 compatible = "starfive,jh7110-stg-syscon", "syscon";
650 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
654 clock-names = "baudclk", "apb_pclk";
658 reg-io-width = <4>;
659 reg-shift = <2>;
664 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
668 clock-names = "baudclk", "apb_pclk";
672 reg-io-width = <4>;
673 reg-shift = <2>;
678 compatible = "starfive,jh7110-uart", "snps,dw-apb-uart";
682 clock-names = "baudclk", "apb_pclk";
686 reg-io-width = <4>;
687 reg-shift = <2>;
692 compatible = "snps,designware-i2c";
695 clock-names = "ref";
698 #address-cells = <1>;
699 #size-cells = <0>;
704 compatible = "snps,designware-i2c";
707 clock-names = "ref";
710 #address-cells = <1>;
711 #size-cells = <0>;
716 compatible = "snps,designware-i2c";
719 clock-names = "ref";
722 #address-cells = <1>;
723 #size-cells = <0>;
728 compatible = "snps,designware-i2c";
731 clock-names = "ref";
734 #address-cells = <1>;
735 #size-cells = <0>;
744 clock-names = "sspclk", "apb_pclk";
747 arm,primecell-periphid = <0x00041022>;
748 num-cs = <1>;
749 #address-cells = <1>;
750 #size-cells = <0>;
759 clock-names = "sspclk", "apb_pclk";
762 arm,primecell-periphid = <0x00041022>;
763 num-cs = <1>;
764 #address-cells = <1>;
765 #size-cells = <0>;
774 clock-names = "sspclk", "apb_pclk";
777 arm,primecell-periphid = <0x00041022>;
778 num-cs = <1>;
779 #address-cells = <1>;
780 #size-cells = <0>;
789 clock-names = "sspclk", "apb_pclk";
792 arm,primecell-periphid = <0x00041022>;
793 num-cs = <1>;
794 #address-cells = <1>;
795 #size-cells = <0>;
800 compatible = "starfive,jh7110-i2stx0";
807 clock-names = "i2sclk", "apb", "mclk",
812 dma-names = "tx";
813 #sound-dai-cells = <0>;
818 compatible = "starfive,jh7110-i2stx1";
829 clock-names = "i2sclk", "apb", "mclk",
835 dma-names = "tx";
836 #sound-dai-cells = <0>;
841 compatible = "starfive,jh7110-pwm", "opencores,pwm-v1";
845 #pwm-cells = <3>;
849 sfctemp: temperature-sensor@120e0000 {
850 compatible = "starfive,jh7110-temp";
854 clock-names = "sense", "bus";
857 reset-names = "sense", "bus";
858 #thermal-sensor-cells = <0>;
862 compatible = "starfive,jh7110-qspi", "cdns,qspi-nor";
869 clock-names = "ref", "ahb", "apb";
873 reset-names = "qspi", "qspi-ocp", "rstc_ref";
874 cdns,fifo-depth = <256>;
875 cdns,fifo-width = <4>;
876 cdns,trigger-address = <0x0>;
880 syscrg: clock-controller@13020000 {
881 compatible = "starfive,jh7110-syscrg";
891 clock-names = "osc", "gmac1_rmii_refin",
897 #clock-cells = <1>;
898 #reset-cells = <1>;
902 compatible = "starfive,jh7110-sys-syscon", "syscon", "simple-mfd";
905 pllclk: clock-controller {
906 compatible = "starfive,jh7110-pll";
908 #clock-cells = <1>;
913 compatible = "starfive,jh7110-sys-pinctrl";
918 interrupt-controller;
919 #interrupt-cells = <2>;
920 gpio-controller;
921 #gpio-cells = <2>;
925 compatible = "starfive,jh7110-wdt";
929 clock-names = "apb", "core";
935 compatible = "starfive,jh7110-crypto";
939 clock-names = "hclk", "ahb";
943 dma-names = "tx", "rx";
946 sdma: dma-controller@16008000 {
948 arm,primecell-periphid = <0x00041080>;
952 clock-names = "apb_pclk";
954 lli-bus-interface-ahb1;
955 mem-bus-interface-ahb1;
956 memcpy-burst-size = <256>;
957 memcpy-bus-width = <32>;
958 #dma-cells = <2>;
962 compatible = "starfive,jh7110-trng";
966 clock-names = "hclk", "ahb";
972 compatible = "starfive,jh7110-mmc";
976 clock-names = "biu","ciu";
978 reset-names = "reset";
980 fifo-depth = <32>;
981 fifo-watermark-aligned;
982 data-addr = <0>;
988 compatible = "starfive,jh7110-mmc";
992 clock-names = "biu","ciu";
994 reset-names = "reset";
996 fifo-depth = <32>;
997 fifo-watermark-aligned;
998 data-addr = <0>;
1004 compatible = "starfive,jh7110-dwmac", "snps,dwmac-5.20";
1011 clock-names = "stmmaceth", "pclk", "ptp_ref",
1015 reset-names = "stmmaceth", "ahb";
1017 interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
1018 rx-fifo-depth = <2048>;
1019 tx-fifo-depth = <2048>;
1020 snps,multicast-filter-bins = <64>;
1021 snps,perfect-filter-entries = <256>;
1022 snps,fixed-burst;
1023 snps,no-pbl-x8;
1025 snps,axi-config = <&stmmac_axi_setup>;
1034 compatible = "starfive,jh7110-dwmac", "snps,dwmac-5.20";
1041 clock-names = "stmmaceth", "pclk", "ptp_ref",
1045 reset-names = "stmmaceth", "ahb";
1047 interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
1048 rx-fifo-depth = <2048>;
1049 tx-fifo-depth = <2048>;
1050 snps,multicast-filter-bins = <64>;
1051 snps,perfect-filter-entries = <256>;
1052 snps,fixed-burst;
1053 snps,no-pbl-x8;
1055 snps,axi-config = <&stmmac_axi_setup>;
1063 dma: dma-controller@16050000 {
1064 compatible = "starfive,jh7110-axi-dma";
1068 clock-names = "core-clk", "cfgr-clk";
1072 #dma-cells = <1>;
1073 dma-channels = <4>;
1074 snps,dma-masters = <1>;
1075 snps,data-width = <3>;
1076 snps,block-size = <65536 65536 65536 65536>;
1078 snps,axi-max-burst-len = <16>;
1081 aoncrg: clock-controller@17000000 {
1082 compatible = "starfive,jh7110-aoncrg";
1090 clock-names = "osc", "gmac0_rmii_refin",
1094 #clock-cells = <1>;
1095 #reset-cells = <1>;
1099 compatible = "starfive,jh7110-aon-syscon", "syscon";
1101 #power-domain-cells = <1>;
1105 compatible = "starfive,jh7110-aon-pinctrl";
1109 interrupt-controller;
1110 #interrupt-cells = <2>;
1111 gpio-controller;
1112 #gpio-cells = <2>;
1115 pwrc: power-controller@17030000 {
1116 compatible = "starfive,jh7110-pmu";
1119 #power-domain-cells = <1>;
1123 compatible = "starfive,jh7110-csi2rx", "cdns,csi2rx";
1131 clock-names = "sys_clk", "p_clk",
1140 reset-names = "sys", "reg_bank",
1144 phy-names = "dphy";
1148 ispcrg: clock-controller@19810000 {
1149 compatible = "starfive,jh7110-ispcrg";
1155 clock-names = "isp_top_core", "isp_top_axi",
1160 #clock-cells = <1>;
1161 #reset-cells = <1>;
1162 power-domains = <&pwrc JH7110_PD_ISP>;
1166 compatible = "starfive,jh7110-dphy-rx";
1171 clock-names = "cfg", "ref", "tx";
1174 power-domains = <&aon_syscon JH7110_AON_PD_DPHY_RX>;
1175 #phy-cells = <0>;
1179 compatible = "starfive,jh7110-camss";
1182 reg-names = "syscon", "isp";
1190 clock-names = "apb_func", "wrapper_clk_c", "dvp_inv",
1199 reset-names = "wrapper_p", "wrapper_c", "axird",
1201 power-domains = <&pwrc JH7110_PD_ISP>;
1206 voutcrg: clock-controller@295c0000 {
1207 compatible = "starfive,jh7110-voutcrg";
1215 clock-names = "vout_src", "vout_top_ahb",
1219 #clock-cells = <1>;
1220 #reset-cells = <1>;
1221 power-domains = <&pwrc JH7110_PD_VOUT>;
1225 compatible = "starfive,jh7110-pcie";
1228 reg-names = "cfg", "apb";
1229 linux,pci-domain = <0>;
1230 #address-cells = <3>;
1231 #size-cells = <2>;
1232 #interrupt-cells = <1>;
1236 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
1237 interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc0 0x1>,
1241 msi-controller;
1243 starfive,stg-syscon = <&stg_syscon>;
1244 bus-range = <0x0 0xff>;
1249 clock-names = "noc", "tl", "axi_mst0", "apb";
1256 reset-names = "mst0", "slv0", "slv", "brg",
1260 pcie_intc0: interrupt-controller {
1261 #address-cells = <0>;
1262 #interrupt-cells = <1>;
1263 interrupt-controller;
1268 compatible = "starfive,jh7110-pcie";
1271 reg-names = "cfg", "apb";
1272 linux,pci-domain = <1>;
1273 #address-cells = <3>;
1274 #size-cells = <2>;
1275 #interrupt-cells = <1>;
1279 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
1280 interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc1 0x1>,
1284 msi-controller;
1286 starfive,stg-syscon = <&stg_syscon>;
1287 bus-range = <0x0 0xff>;
1292 clock-names = "noc", "tl", "axi_mst0", "apb";
1299 reset-names = "mst0", "slv0", "slv", "brg",
1303 pcie_intc1: interrupt-controller {
1304 #address-cells = <0>;
1305 #interrupt-cells = <1>;
1306 interrupt-controller;