18bab661aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28bab661aSEmmanuel Vadot%YAML 1.2 38bab661aSEmmanuel Vadot--- 48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/mips/cpus.yaml# 58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68bab661aSEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: MIPS CPUs 88bab661aSEmmanuel Vadot 98bab661aSEmmanuel Vadotmaintainers: 108bab661aSEmmanuel Vadot - Thomas Bogendoerfer <tsbogend@alpha.franken.de> 118bab661aSEmmanuel Vadot - 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com> 128bab661aSEmmanuel Vadot 138bab661aSEmmanuel Vadotdescription: | 148bab661aSEmmanuel Vadot The device tree allows to describe the layout of CPUs in a system through 158bab661aSEmmanuel Vadot the "cpus" node, which in turn contains a number of subnodes (ie "cpu") 168bab661aSEmmanuel Vadot defining properties for every CPU. 178bab661aSEmmanuel Vadot 188bab661aSEmmanuel Vadotproperties: 198bab661aSEmmanuel Vadot compatible: 208bab661aSEmmanuel Vadot enum: 218bab661aSEmmanuel Vadot - brcm,bmips3300 228bab661aSEmmanuel Vadot - brcm,bmips4350 238bab661aSEmmanuel Vadot - brcm,bmips4380 248bab661aSEmmanuel Vadot - brcm,bmips5000 258bab661aSEmmanuel Vadot - brcm,bmips5200 26*01950c46SEmmanuel Vadot - img,i6500 278bab661aSEmmanuel Vadot - ingenic,xburst-fpu1.0-mxu1.1 288bab661aSEmmanuel Vadot - ingenic,xburst-fpu2.0-mxu2.0 29*01950c46SEmmanuel Vadot - ingenic,xburst-mxu1.0 308bab661aSEmmanuel Vadot - ingenic,xburst2-fpu2.1-mxu2.1-smt 318bab661aSEmmanuel Vadot - loongson,gs264 328bab661aSEmmanuel Vadot - mips,m14Kc 338bab661aSEmmanuel Vadot - mips,mips1004Kc 34*01950c46SEmmanuel Vadot - mips,mips24KEc 35*01950c46SEmmanuel Vadot - mips,mips24Kc 36*01950c46SEmmanuel Vadot - mips,mips4KEc 37*01950c46SEmmanuel Vadot - mips,mips4Kc 38*01950c46SEmmanuel Vadot - mips,mips74Kc 398bab661aSEmmanuel Vadot - mti,interaptiv 408bab661aSEmmanuel Vadot - mti,mips14KEc 418bab661aSEmmanuel Vadot - mti,mips14Kc 42*01950c46SEmmanuel Vadot - mti,mips24KEc 438bab661aSEmmanuel Vadot 448bab661aSEmmanuel Vadot reg: 458bab661aSEmmanuel Vadot maxItems: 1 468bab661aSEmmanuel Vadot 478bab661aSEmmanuel Vadot clocks: 488bab661aSEmmanuel Vadot maxItems: 1 498bab661aSEmmanuel Vadot 508bab661aSEmmanuel Vadot device_type: true 518bab661aSEmmanuel Vadot 528bab661aSEmmanuel VadotallOf: 538bab661aSEmmanuel Vadot - if: 548bab661aSEmmanuel Vadot properties: 558bab661aSEmmanuel Vadot compatible: 568bab661aSEmmanuel Vadot contains: 578bab661aSEmmanuel Vadot enum: 588bab661aSEmmanuel Vadot - ingenic,xburst-mxu1.0 598bab661aSEmmanuel Vadot - ingenic,xburst-fpu1.0-mxu1.1 608bab661aSEmmanuel Vadot - ingenic,xburst-fpu2.0-mxu2.0 618bab661aSEmmanuel Vadot - ingenic,xburst2-fpu2.1-mxu2.1-smt 628bab661aSEmmanuel Vadot then: 638bab661aSEmmanuel Vadot required: 648bab661aSEmmanuel Vadot - device_type 658bab661aSEmmanuel Vadot - clocks 668bab661aSEmmanuel Vadot 678bab661aSEmmanuel Vadotrequired: 688bab661aSEmmanuel Vadot - compatible 698bab661aSEmmanuel Vadot - reg 708bab661aSEmmanuel Vadot 718bab661aSEmmanuel VadotadditionalProperties: false 728bab661aSEmmanuel Vadot 738bab661aSEmmanuel Vadotexamples: 748bab661aSEmmanuel Vadot - | 758bab661aSEmmanuel Vadot cpus { 768bab661aSEmmanuel Vadot #size-cells = <0>; 778bab661aSEmmanuel Vadot #address-cells = <1>; 788bab661aSEmmanuel Vadot 798bab661aSEmmanuel Vadot cpu@0 { 808bab661aSEmmanuel Vadot compatible = "mips,mips1004Kc"; 818bab661aSEmmanuel Vadot device_type = "cpu"; 828bab661aSEmmanuel Vadot reg = <0>; 838bab661aSEmmanuel Vadot }; 848bab661aSEmmanuel Vadot 858bab661aSEmmanuel Vadot cpu@1 { 868bab661aSEmmanuel Vadot compatible = "mips,mips1004Kc"; 878bab661aSEmmanuel Vadot device_type = "cpu"; 888bab661aSEmmanuel Vadot reg = <1>; 898bab661aSEmmanuel Vadot }; 908bab661aSEmmanuel Vadot }; 918bab661aSEmmanuel Vadot 928bab661aSEmmanuel Vadot - | 938bab661aSEmmanuel Vadot // Example 2 (Ingenic CPU) 948bab661aSEmmanuel Vadot #include <dt-bindings/clock/ingenic,jz4780-cgu.h> 958bab661aSEmmanuel Vadot 968bab661aSEmmanuel Vadot cpus { 978bab661aSEmmanuel Vadot #address-cells = <1>; 988bab661aSEmmanuel Vadot #size-cells = <0>; 998bab661aSEmmanuel Vadot 1008bab661aSEmmanuel Vadot cpu@0 { 1018bab661aSEmmanuel Vadot compatible = "ingenic,xburst-fpu1.0-mxu1.1"; 1028bab661aSEmmanuel Vadot device_type = "cpu"; 1038bab661aSEmmanuel Vadot reg = <0>; 1048bab661aSEmmanuel Vadot 1058bab661aSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_CPU>; 1068bab661aSEmmanuel Vadot }; 1078bab661aSEmmanuel Vadot 1088bab661aSEmmanuel Vadot cpu@1 { 1098bab661aSEmmanuel Vadot compatible = "ingenic,xburst-fpu1.0-mxu1.1"; 1108bab661aSEmmanuel Vadot device_type = "cpu"; 1118bab661aSEmmanuel Vadot reg = <1>; 1128bab661aSEmmanuel Vadot 1138bab661aSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_CORE1>; 1148bab661aSEmmanuel Vadot }; 1158bab661aSEmmanuel Vadot }; 1168bab661aSEmmanuel Vadot... 117