149 lines
3.9 KiB
YAML
149 lines
3.9 KiB
YAML
# 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>;
|
|
};
|
|
};
|
|
};
|