1# Sensor id is the key
20x60:
3    sensorType: 0x07
4    sensorReadingType: 0x6F
5    # A "set" operation on this sensor should update this d-bus path.
6    # If the path is not specified, an MRW parser will try to determine the path
7    # based on the sensor id, on MRW based systems.  This typically happens for
8    # inventory items.
9    path: /org/open_power/control/occ0
10    # The interface that exposes method(s) to update the path above.
11    serviceInterface: org.freedesktop.DBus.Properties
12    # Where the sensor value is represented - assertion bits/reading/event data
13    readingType: assertion
14    # indicate if a sensor is READ/WRITE/RW.
15    # This particular sensor read and write operation is allowed
16    mutability: Mutability::Write|Mutability::Read
17    # Sensor name would be occ0
18    sensorNamePattern: nameLeaf
19    eventType: 0x6F
20    # All the d-bus interfaces : properties that must be updated for this path
21    interfaces:
22        # One or more interface dict entries
23        org.open_power.OCC.Status:
24            OccActive:
25                Offsets:
26                    # Sensor type specific offset
27                    0x06:
28                        # OccActive is a boolean
29                        type: "bool"
30                        # If offset 0x06 is asserted, set OccActive as false.
31                        assert: "false"
32                        deassert: "true"
33
340x61:
35    sensorType: 0x04
36    sensorReadingType: 0x6F
37    # Inventory paths intentionally leave out the inventory root,
38    # /xyz/openbmc_project/inventory, because phosphor-inventory-manager
39    # adds that.
40    path: /system/chassis/motherboard/dimm1
41    serviceInterface: xyz.openbmc_project.Inventory.Manager
42    readingType: assertion
43    mutability: Mutability::Write|Mutability::Read
44    sensorNamePattern: nameLeaf
45    interfaces:
46        xyz.openbmc_project.State.Decorator.OperationalStatus:
47            Functional:
48                #Offsets contain the offsets in the sensor data.
49                Offsets:
50                    0x06:
51                        assert: true
52                        deassert: false
53                        type: bool
54                #Prereqs are pre-requisites for this property value to be true.
55                Prereqs:
56                    0x04:
57                        assert: false
58                        deassert: true
59                        type: bool
60        xyz.openbmc_project.Inventory.Item:
61            Present:
62                Offsets:
63                    0x04:
64                        assert: false
65                        deassert: true
66                        type: bool
67
680x63:
69    interfaces:
70        xyz.openbmc_project.Control.Boot.RebootAttempts:
71            AttemptsLeft:
72                Offsets:
73                    0xFF:
74                        type: uint32_t
75    path: /xyz/openbmc_project/state/host0
76    # A special case of assertion, where the entire assert bitfield
77    # serves as the value, or reading. Hence, the offset above is intentionally
78    # 0xFF, to indicate not to check any specific bits in the assertion.
79    readingType: readingAssertion
80    # Sensor name would be AttemptsLeft
81    sensorNamePattern: nameProperty
82    sensorReadingType: 0x6F
83    mutability: Mutability::Write|Mutability::Read
84    sensorType: 0xC3
85    serviceInterface: org.freedesktop.DBus.Properties
86
870x62:
88    interfaces:
89        xyz.openbmc_project.Control.Boot.RebootAttempts:
90            AttemptsLeft:
91                Offsets:
92                    0xFF:
93                        type: uint32_t
94    path: /xyz/openbmc_project/state/host1
95    readingType: readingAssertion
96    # set an explicit name for the sensor
97    sensorName: RebootAttempts
98    sensorReadingType: 0x6F
99    mutability: Mutability::Write|Mutability::Read
100    sensorType: 0xC3
101    serviceInterface: org.freedesktop.DBus.Properties
102
1030xD0:
104    sensorType: 0x01
105    path: /xyz/openbmc_project/sensors/temperature/fleeting0
106    sensorReadingType: 0x01
107    multiplierM: 511
108    offsetB: 0
109    bExp: 0
110    # Result exponent field in Type 1 SDR(2's complement, signed)
111    rExp: 0
112    # Applies for analog sensors, the actual reading value for the sensor is
113    # Value * 10^N
114    scale: -3
115    # Indicate Analog Data Format, Rate unit, Modifier unit and Percentage
116    sensorUnits1: 0x80
117    mutability: Mutability::Write|Mutability::Read
118    serviceInterface: org.freedesktop.DBus.Properties
119    readingType: readingData
120    sensorNamePattern: nameLeaf
121    interfaces:
122        xyz.openbmc_project.Sensor.Value:
123            Value:
124                Offsets:
125                    0xFF:
126                        type: int64_t
127
1280x54:
129    sensorType: 0x07
130    path: /system/chassis/motherboard/cpu0/core22
131    sensorReadingType: 0x6F
132    serviceInterface: xyz.openbmc_project.Inventory.Manager
133    readingType: assertion
134    mutability: Mutability::Write|Mutability::Read
135    # Sensor name would be cpu0_core22
136    sensorNamePattern: nameParentLeaf
137    interfaces:
138        xyz.openbmc_project.State.Decorator.OperationalStatus:
139            Functional:
140                Offsets:
141                    0x08:
142                        assert: false
143                        deassert: true
144                        type: bool
145                Prereqs:
146                    0x07:
147                        assert: true
148                        deassert: false
149        xyz.openbmc_project.Inventory.Item:
150            Present:
151                Offsets:
152                    0x07:
153                        assert: true
154                        deassert: false
155                        #The update will be skipped based on the value of skipOn
156                        #in this case if offset 0x07 is deasserted
157                        #the update will be skipped.
158                        skipOn: deassert
159                        type: bool
160
1610xC5:
162    sensorType: 0x17
163    path: /system/chassis/motherboard/gv100card0
164    sensorReadingType: 1
165    serviceInterface: xyz.openbmc_project.Inventory.Manager
166    readingType: assertion
167    mutability: Mutability::Write|Mutability::Read
168    sensorNamePattern: nameLeaf
169    interfaces:
170        xyz.openbmc_project.Inventory.Decorator.Replaceable:
171            FieldReplaceable:
172                Offsets:
173                    7:
174                        assert: true
175                        type: bool
176        xyz.openbmc_project.Inventory.Item:
177            Present:
178                Offsets:
179                    7:
180                        assert: true
181                        deassert: false
182                        type: bool
183        # Example of an interface with no attached properties
184        xyz.openbmc_project.Inventory.Item.Accelerator:
185        xyz.openbmc_project.State.Decorator.OperationalStatus:
186            Functional:
187                Offsets:
188                    8:
189                        assert: false
190                        type: bool
191                Prereqs:
192                    7:
193                        assert: true
194                        type: bool
195