dt-bindings: Add new bindings for platform MPAM

Add new bindings for platform MPAM.

Change-Id: I311a902e3135c5a825dcf4d6446d578489498b66
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
This commit is contained in:
Huang Yiwei
2024-07-31 09:48:38 +08:00
parent b7ca0a4904
commit 7a4a207629

View File

@@ -0,0 +1,114 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/soc/qcom/qcom,platform-mpam.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm Technologies, Inc. (QTI) Platform MPAM Driver
maintainers:
- Huang Yiwei <quic_hyiwei@quicinc.com>
description: |
The Qualcomm Technologies, Inc. (QTI) Platform MPAM Driver provides configfs
nodes for userspace clients to set MPAM configuration with CPUCP firmware via
consolidated SCMI protocol.
properties:
compatible:
items:
- const: qcom,platform-mpam
reg:
items:
- description: address and size of CPUCP DTIM area for Platform MPAM
monitor data
reg-names:
items:
- const: mon-base
qcom,msc-id:
$ref: '/schemas/types.yaml#/definitions/uint32'
description: |
MSC id of the component.
qcom,msc-name:
$ref: '/schemas/types.yaml#/definitions/string'
description: |
MSC name of the component.
qcom,gears:
$ref: '/schemas/types.yaml#/definitions/string-array'
description: |
Available gear names of the component.
qcom,gear-id:
$ref: '/schemas/types.yaml#/definitions/uint32-array'
description: |
Available gear ids of the component.
child-node:
description: |
Available clients of the Platform MPAM.
type: object
properties:
qcom,client-id:
$ref: '/schemas/types.yaml#/definitions/uint32'
description: |
MSC id of the child node.
qcom,client-name:
$ref: '/schemas/types.yaml#/definitions/string'
description: |
MSC name of the child node.
required:
- qcom,client-id
- qcom,client-name
additionalProperties: false
required:
- compatible
- reg
- reg-names
- qcom,msc-id
- qcom,msc-name
- qcom,gears
- qcom,gear-id
additionalProperties: false
examples:
- |
noc_bw_mpam: qcom,noc_bw_mpam {
compatible = "qcom,platform-mpam";
reg = <0x17b6f400 0x400>;
reg-names = "mon-base";
qcom,msc-id = <3>;
qcom,msc-name = "noc_bw";
qcom,gears = "low", "medium", "high", "veryhigh";
qcom,gear-id = <1>, <2>, <3>, <4>;
cpu_cluster0 {
qcom,client-id = <0x1>;
qcom,client-name = "cpu_cluster0";
};
cpu_cluster1 {
qcom,client-id = <0x2>;
qcom,client-name = "cpu_cluster1";
};
gpu {
qcom,client-id = <0x10>;
qcom,client-name = "gpu";
};
nsp {
qcom,client-id = <0x100>;
qcom,client-name = "nsp";
};
};
...