mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-31 22:23:05 +00:00

The Arm CPU schema is missing a number of properties already in use. This has gone unnoticed as extra properties have not been restricted. Add a missing reference to cpu.yaml, and add all the missing properties. As "clock-latency" and "voltage-tolerance" are related to opp-v1, add those properties to the opp-v1.yaml schema. With this, other properties can be prevented from creeping in with 'unevaluatedProperties: false'. Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Link: https://lore.kernel.org/r/20250410-dt-cpu-schema-v2-15-63d7dc9ddd0a@kernel.org Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
68 lines
1.8 KiB
YAML
68 lines
1.8 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/opp/opp-v1.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Generic OPP (Operating Performance Points) v1
|
|
|
|
maintainers:
|
|
- Viresh Kumar <viresh.kumar@linaro.org>
|
|
|
|
description: |+
|
|
Devices work at voltage-current-frequency combinations and some implementations
|
|
have the liberty of choosing these. These combinations are called Operating
|
|
Performance Points aka OPPs. This document defines bindings for these OPPs
|
|
applicable across wide range of devices. For illustration purpose, this document
|
|
uses CPU as a device.
|
|
|
|
This binding only supports voltage-frequency pairs.
|
|
|
|
deprecated: true
|
|
|
|
properties:
|
|
clock-latency:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
The latency in nanoseconds for clock changes. Use OPP tables for new
|
|
designs instead.
|
|
|
|
voltage-tolerance:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
maximum: 10
|
|
description:
|
|
The voltage tolerance in percent. Use OPP tables for new designs instead.
|
|
|
|
operating-points:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-matrix
|
|
items:
|
|
items:
|
|
- description: Frequency in kHz
|
|
- description: Voltage for OPP in uV
|
|
|
|
dependencies:
|
|
clock-latency: [ operating-points ]
|
|
voltage-tolerance: [ operating-points ]
|
|
|
|
additionalProperties: true
|
|
|
|
examples:
|
|
- |
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
cpu@0 {
|
|
compatible = "arm,cortex-a9";
|
|
device_type = "cpu";
|
|
reg = <0>;
|
|
next-level-cache = <&L2>;
|
|
operating-points =
|
|
/* kHz uV */
|
|
<792000 1100000>,
|
|
<396000 950000>,
|
|
<198000 850000>;
|
|
};
|
|
};
|
|
...
|