-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: soc: fsl: cpm_qe: convert to yaml format
Convert binding doc qe.txt to yaml format. Split it to fsl,qe-firmware.yaml, fsl,qe-ic.yaml, fsl,qe-muram.yaml, fsl,qe-si.yaml fsl,qe-siram.yaml, fsl,qe.yaml. Additional Changes: - Fix error in example. - Change to low case for hex value. - Remove fsl,qe-num-riscs and fsl,qe-snums from required list. - Add #address-cell and #size-cell. - Add interrupts description for qe-ic. - Add compatible string fsl,ls1043-qe-si for fsl,qe-si.yaml - Add compatible string fsl,ls1043-qe-siram for fsl,qe-siram.yaml - Add child node for fsl,qe.yaml Fix below warning: arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb: /soc/uqe@2400000/muram@10000: failed to match any schema with compatible: ['fsl,qe-muram', 'fsl,cpm-muram'] arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb: /soc/uqe@2400000/muram@10000: failed to match any schema with compatible: ['fsl,qe-muram', 'fsl,cpm-muram'] arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb: /soc/uqe@2400000/muram@10000/data-only@0: failed to match any schema with compatible: ['fsl,qe-muram-data', 'fsl,cpm-muram-data'] arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dtb: /soc/uqe@2400000: failed to match any schema with compatible: ['fsl,qe', 'simple-bus'] arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb: /soc/uqe@2400000/muram@10000/data-only@0: failed to match any schema with compatible: ['fsl,qe-muram-data', 'fsl,cpm-muram-data'] arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dtb: /soc/uqe@2400000/qeic@80: failed to match any schema with compatible: ['fsl,qe-ic'] Signed-off-by: Frank Li <Frank.Li@nxp.com> Link: https://lore.kernel.org/r/20240703-ls_qe_warning-v1-1-7fe4af5b0bb0@nxp.com Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
- Loading branch information
Frank Li
authored and
Rob Herring (Arm)
committed
Jul 9, 2024
1 parent
1a73912
commit ecbfc6f
Showing
7 changed files
with
393 additions
and
178 deletions.
There are no files selected for viewing
48 changes: 48 additions & 0 deletions
48
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe-firmware.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe-firmware.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine module Firmware Node | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | | ||
This node defines a firmware binary that is embedded in the device tree, for | ||
the purpose of passing the firmware from bootloader to the kernel, or from | ||
the hypervisor to the guest. | ||
The firmware node itself contains the firmware binary contents, a compatible | ||
property, and any firmware-specific properties. The node should be placed | ||
inside a QE node that needs it. Doing so eliminates the need for a | ||
fsl,firmware-phandle property. Other QE nodes that need the same firmware | ||
should define an fsl,firmware-phandle property that points to the firmware node | ||
in the first QE node. | ||
The fsl,firmware property can be specified in the DTS (possibly using incbin) | ||
or can be inserted by the boot loader at boot time. | ||
properties: | ||
compatible: | ||
enum: | ||
- fsl,qe-firmware | ||
|
||
fsl,firmware: | ||
$ref: /schemas/types.yaml#/definitions/uint8-array | ||
description: | ||
A standard property. This property contains the firmware binary "blob". | ||
|
||
required: | ||
- compatible | ||
- fsl,firmware | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
qe-firmware { | ||
compatible = "fsl,qe-firmware"; | ||
fsl,firmware = <0x70 0xcd 0x00 0x00 0x01 0x46 0x45>; | ||
}; |
47 changes: 47 additions & 0 deletions
47
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe-ic.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe-ic.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine module Interrupt Controller (IC) | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
properties: | ||
compatible: | ||
const: fsl,qe-ic | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
items: | ||
- description: QE interrupt | ||
- description: QE critical | ||
- description: QE error | ||
minItems: 1 | ||
|
||
interrupt-controller: true | ||
|
||
"#interrupt-cells": | ||
const: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupt-controller | ||
- "#interrupt-cells" | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
interrupt-controller@80 { | ||
compatible = "fsl,qe-ic"; | ||
reg = <0x80 0x80>; | ||
#interrupt-cells = <1>; | ||
interrupt-controller; | ||
interrupts = <95 2 0 0 94 2 0 0>; | ||
}; |
71 changes: 71 additions & 0 deletions
71
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe-muram.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe-muram.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine Multi-User RAM (MURAM) | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: Multi-User RAM (MURAM) | ||
|
||
properties: | ||
compatible: | ||
items: | ||
- const: fsl,qe-muram | ||
- const: fsl,cpm-muram | ||
|
||
ranges: | ||
maxItems: 1 | ||
|
||
"#address-cells": | ||
const: 1 | ||
|
||
"#size-cells": | ||
const: 1 | ||
|
||
mode: | ||
$ref: /schemas/types.yaml#/definitions/string | ||
enum: [host, slave] | ||
|
||
|
||
patternProperties: | ||
'^data\-only@[a-f0-9]+$': | ||
type: object | ||
properties: | ||
compatible: | ||
items: | ||
- const: fsl,qe-muram-data | ||
- const: fsl,cpm-muram-data | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
additionalProperties: false | ||
|
||
required: | ||
- compatible | ||
- ranges | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
muram@10000 { | ||
compatible = "fsl,qe-muram", "fsl,cpm-muram"; | ||
ranges = <0 0x00010000 0x0000c000>; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
data-only@0{ | ||
compatible = "fsl,qe-muram-data", | ||
"fsl,cpm-muram-data"; | ||
reg = <0 0xc000>; | ||
}; | ||
}; |
40 changes: 40 additions & 0 deletions
40
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe-si.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe-si.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine module Serial Interface Block (SI) | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | ||
The SI manages the routing of eight TDM lines to the QE block serial drivers, | ||
the MCC and the UCCs, for receive and transmit. | ||
|
||
properties: | ||
compatible: | ||
oneOf: | ||
- items: | ||
- enum: | ||
- fsl,ls1043-qe-si | ||
- const: fsl,t1040-qe-si | ||
- enum: | ||
- fsl,t1040-qe-si | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
si@700 { | ||
compatible = "fsl,t1040-qe-si"; | ||
reg = <0x700 0x80>; | ||
}; |
39 changes: 39 additions & 0 deletions
39
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe-siram.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe-siram.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine module Serial Interface Block RAM(SIRAM) | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | ||
store the routing entries of SI | ||
|
||
properties: | ||
compatible: | ||
oneOf: | ||
- items: | ||
- enum: | ||
- fsl,ls1043-qe-siram | ||
- const: fsl,t1040-qe-siram | ||
- const: fsl,t1040-qe-siram | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
siram@1000 { | ||
compatible = "fsl,t1040-qe-siram"; | ||
reg = <0x1000 0x800>; | ||
}; | ||
148 changes: 148 additions & 0 deletions
148
Documentation/devicetree/bindings/soc/fsl/cpm_qe/fsl,qe.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,148 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/soc/fsl/cpm_qe/fsl,qe.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale QUICC Engine module (QE) | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | | ||
This represents qe module that is installed on PowerQUICC II Pro. | ||
NOTE: This is an interim binding; it should be updated to fit | ||
in with the CPM binding later in this document. | ||
Basically, it is a bus of devices, that could act more or less | ||
as a complete entity (UCC, USB etc ). All of them should be siblings on | ||
the "root" qe node, using the common properties from there. | ||
The description below applies to the qe of MPC8360 and | ||
more nodes and properties would be extended in the future. | ||
properties: | ||
compatible: | ||
items: | ||
- const: fsl,qe | ||
- const: simple-bus | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
ranges: | ||
maxItems: 1 | ||
|
||
model: | ||
$ref: /schemas/types.yaml#/definitions/string | ||
enum: [QE, CPM, CPM2] | ||
|
||
bus-frequency: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: the clock frequency for QUICC Engine. | ||
|
||
fsl,qe-num-riscs: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: define how many RISC engines the QE has. | ||
|
||
fsl,qe-snums: | ||
$ref: /schemas/types.yaml#/definitions/uint8-array | ||
maxItems: 28 | ||
description: | ||
defining the array of serial number (SNUM) values for the virtual | ||
threads. | ||
|
||
fsl,firmware-phandle: | ||
$ref: /schemas/types.yaml#/definitions/phandle | ||
description: | | ||
required only if there is no fsl,qe-firmware child node | ||
Points to a firmware node (see "QE Firmware Node" below) | ||
that contains the firmware that should be uploaded for this QE. | ||
The compatible property for the firmware node should say, | ||
"fsl,qe-firmware". | ||
brg-frequency: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
the internal clock source frequency for baud-rate | ||
generators in Hz. | ||
|
||
fsl,qe-num-snums: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
deprecated: true | ||
description: | | ||
define how many serial number(SNUM) the QE can use | ||
for the threads. Use fsl,qe-snums instead to not only specify the | ||
number of snums, but also their values. | ||
patternProperties: | ||
'^muram@[a-f0-9]+$': | ||
$ref: fsl,qe-muram.yaml | ||
|
||
'^interrupt-controller@[a-f0-9]+$': | ||
$ref: fsl,qe-ic.yaml | ||
|
||
'^si@[a-f0-9]+$': | ||
$ref: fsl,qe-si.yaml | ||
|
||
'^siram@[a-f0-9]+$': | ||
$ref: fsl,qe-siram.yaml | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- bus-frequency | ||
|
||
allOf: | ||
- $ref: /schemas/simple-bus.yaml# | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
qe-bus@e0100000 { | ||
compatible = "fsl,qe", "simple-bus"; | ||
reg = <0xe0100000 0x480>; | ||
ranges = <0 0xe0100000 0x00100000>; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
brg-frequency = <0>; | ||
bus-frequency = <0x179a7b00>; | ||
fsl,qe-snums = /bits/ 8 < | ||
0x04 0x05 0x0c 0x0d 0x14 0x15 0x1c 0x1d | ||
0x24 0x25 0x2c 0x2d 0x34 0x35 0x88 0x89 | ||
0x98 0x99 0xa8 0xa9 0xb8 0xb9 0xc8 0xc9 | ||
0xd8 0xd9 0xe8 0xe9>; | ||
interrupt-controller@80 { | ||
compatible = "fsl,qe-ic"; | ||
reg = <0x80 0x80>; | ||
#interrupt-cells = <1>; | ||
interrupt-controller; | ||
interrupts = <95 2 0 0 94 2 0 0>; | ||
}; | ||
si@700 { | ||
compatible = "fsl,t1040-qe-si"; | ||
reg = <0x700 0x80>; | ||
}; | ||
siram@1000 { | ||
compatible = "fsl,t1040-qe-siram"; | ||
reg = <0x1000 0x800>; | ||
}; | ||
muram@10000 { | ||
compatible = "fsl,qe-muram", "fsl,cpm-muram"; | ||
ranges = <0 0x00010000 0x0000c000>; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
data-only@0{ | ||
compatible = "fsl,qe-muram-data", | ||
"fsl,cpm-muram-data"; | ||
reg = <0 0xc000>; | ||
}; | ||
}; | ||
}; |
Oops, something went wrong.