blob: b47c511d5e80776654b9edd4eb723f6ae4440058 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# Copyright 2021 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
description: CBI Firmware Config fields (FW_CONFIG)
compatible: "cros-ec,cbi-fw-config"
child-binding:
description:
ChromeOS CBI Firmware Config fields definition.
Each field is defined via a start bit (from LSB) and a size.
The total size of all FW_CONFIG bit fields must not exceed 32 bits.
One default value for each field may be indicated.
properties:
enum-name:
type: string
required: true
description:
Name of field used for description purposes
start:
type: int
required: true
description: The starting bit of the field (LSB = 0)
size:
type: int
required: true
description: The size of the field in bits.
# Example:
#
# cbi-fw-config {
# compatible = "cros-ec,cbi-fw-config";
#
# fan {
# enum-name = "FAN";
# start = <0>
# size = <1>;
# fan_absent {
# enum-name = "ABSENT"
# compatible = "cros-ec,cbi-fw-config-value";
# value = <0>;
# fan_present {
# enum-name = "PRESENT"
# compatible = "cros-ec,cbi-fw-config-value";
# value = <1>;
# default;
# };
# };
# };
#
# This will generate an enum field id for CBI_FW_CONFIG_FIELD_FAN,
# and separate values for CBI_FW_CONFIG_FIELD_FAN_ABSENT = 0 and
# CBI_FW_CONFIG_FIELD_FAN_PRESENT = 1
|