| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | |
| %YAML 1.2 | |
| --- | |
| $id: http://devicetree.org/schemas/mips/brcm/soc.yaml# | |
| $schema: http://devicetree.org/meta-schemas/core.yaml# | |
| title: Broadcom cable/DSL/settop platforms | |
| maintainers: | |
| - Florian Fainelli <f.fainelli@gmail.com> | |
| description: | | |
| Boards Broadcom cable/DSL/settop SoC shall have the following properties. | |
| The experimental -viper variants are for running Linux on the 3384's | |
| BMIPS4355 cable modem CPU instead of the BMIPS5000 application processor. | |
| properties: | |
| $nodename: | |
| const: '/' | |
| compatible: | |
| enum: | |
| - brcm,bcm3368 | |
| - brcm,bcm3384 | |
| - brcm,bcm33843 | |
| - brcm,bcm3384-viper | |
| - brcm,bcm33843-viper | |
| - brcm,bcm6328 | |
| - brcm,bcm6358 | |
| - brcm,bcm6362 | |
| - brcm,bcm6368 | |
| - brcm,bcm63168 | |
| - brcm,bcm63268 | |
| - brcm,bcm7125 | |
| - brcm,bcm7346 | |
| - brcm,bcm7358 | |
| - brcm,bcm7360 | |
| - brcm,bcm7362 | |
| - brcm,bcm7420 | |
| - brcm,bcm7425 | |
| cpus: | |
| type: object | |
| additionalProperties: false | |
| properties: | |
| '#address-cells': | |
| const: 1 | |
| '#size-cells': | |
| const: 0 | |
| mips-hpt-frequency: | |
| description: MIPS counter high precision timer frequency. | |
| This is common to all CPUs in the system so it lives | |
| under the "cpus" node. | |
| $ref: /schemas/types.yaml#/definitions/uint32 | |
| brcm,bmips-cbr-reg: | |
| description: Reference address of the CBR. | |
| Some SoC suffer from a BUG where CBR(Core Base Register) | |
| address might be badly or never initialized by the Bootloader | |
| or reading it from co-processor registers, if the system boots | |
| from secondary CPU, results in invalid address. | |
| The CBR address is always the same on the SoC hence it | |
| can be provided in DT to handle these broken case. | |
| $ref: /schemas/types.yaml#/definitions/uint32 | |
| patternProperties: | |
| "^cpu@[0-9]$": | |
| type: object | |
| $ref: /schemas/mips/cpus.yaml# | |
| unevaluatedProperties: false | |
| required: | |
| - mips-hpt-frequency | |
| if: | |
| properties: | |
| compatible: | |
| contains: | |
| enum: | |
| - brcm,bcm6358 | |
| - brcm,bcm6368 | |
| then: | |
| properties: | |
| cpus: | |
| required: | |
| - brcm,bmips-cbr-reg | |
| additionalProperties: true | |
| examples: | |
| - | | |
| / { | |
| compatible = "brcm,bcm3368"; | |
| #address-cells = <1>; | |
| #size-cells = <1>; | |
| model = "Broadcom 3368"; | |
| cpus { | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| mips-hpt-frequency = <150000000>; | |
| cpu@0 { | |
| compatible = "brcm,bmips4350"; | |
| device_type = "cpu"; | |
| reg = <0>; | |
| }; | |
| cpu@1 { | |
| compatible = "brcm,bmips4350"; | |
| device_type = "cpu"; | |
| reg = <1>; | |
| }; | |
| }; | |
| }; | |
| ... |