# Sensor id is the key 0x60: sensorType: 0x07 sensorReadingType: 0x6F # A "set" operation on this sensor should update this d-bus path. # If the path is not specified, an MRW parser will try to determine the path # based on the sensor id, on MRW based systems. This typically happens for # inventory items. path: /org/open_power/control/occ0 # The interface that exposes method(s) to update the path above. serviceInterface: org.freedesktop.DBus.Properties # Where the sensor value is represented - assertion bits/reading/event data readingType: assertion # indicate if a sensor is READ/WRITE/RW. # This particular sensor read and write operation is allowed mutability: Mutability::Write|Mutability::Read # Sensor name would be occ0 sensorNamePattern: nameLeaf eventType: 0x6F # All the d-bus interfaces : properties that must be updated for this path interfaces: # One or more interface dict entries org.open_power.OCC.Status: OccActive: Offsets: # Sensor type specific offset 0x06: # OccActive is a boolean type: "bool" # If offset 0x06 is asserted, set OccActive as false. assert: "false" deassert: "true" 0x61: sensorType: 0x04 sensorReadingType: 0x6F # Inventory paths intentionally leave out the inventory root, # /xyz/openbmc_project/inventory, because phosphor-inventory-manager # adds that. path: /system/chassis/motherboard/dimm1 serviceInterface: xyz.openbmc_project.Inventory.Manager readingType: assertion mutability: Mutability::Write|Mutability::Read sensorNamePattern: nameLeaf interfaces: xyz.openbmc_project.State.Decorator.OperationalStatus: Functional: #Offsets contain the offsets in the sensor data. Offsets: 0x06: assert: true deassert: false type: bool #Prereqs are pre-requisites for this property value to be true. Prereqs: 0x04: assert: false deassert: true type: bool xyz.openbmc_project.Inventory.Item: Present: Offsets: 0x04: assert: false deassert: true type: bool 0x63: interfaces: xyz.openbmc_project.Control.Boot.RebootAttempts: AttemptsLeft: Offsets: 0xFF: type: uint32_t path: /xyz/openbmc_project/state/host0 # A special case of assertion, where the entire assert bitfield # serves as the value, or reading. Hence, the offset above is intentionally # 0xFF, to indicate not to check any specific bits in the assertion. readingType: readingAssertion # Sensor name would be AttemptsLeft sensorNamePattern: nameProperty sensorReadingType: 0x6F mutability: Mutability::Write|Mutability::Read sensorType: 0xC3 serviceInterface: org.freedesktop.DBus.Properties 0x62: interfaces: xyz.openbmc_project.Control.Boot.RebootAttempts: AttemptsLeft: Offsets: 0xFF: type: uint32_t path: /xyz/openbmc_project/state/host1 readingType: readingAssertion # set an explicit name for the sensor sensorName: RebootAttempts sensorReadingType: 0x6F mutability: Mutability::Write|Mutability::Read sensorType: 0xC3 serviceInterface: org.freedesktop.DBus.Properties 0xD0: sensorType: 0x01 path: /xyz/openbmc_project/sensors/temperature/fleeting0 sensorReadingType: 0x01 multiplierM: 511 offsetB: 0 bExp: 0 # Result exponent field in Type 1 SDR(2's complement, signed) rExp: 0 # Applies for analog sensors, the actual reading value for the sensor is # Value * 10^N scale: -3 # Indicate Analog Data Format, Rate unit, Modifier unit and Percentage sensorUnits1: 0x80 mutability: Mutability::Write|Mutability::Read serviceInterface: org.freedesktop.DBus.Properties readingType: readingData sensorNamePattern: nameLeaf interfaces: xyz.openbmc_project.Sensor.Value: Value: Offsets: 0xFF: type: int64_t 0x54: sensorType: 0x07 path: /system/chassis/motherboard/cpu0/core22 sensorReadingType: 0x6F serviceInterface: xyz.openbmc_project.Inventory.Manager readingType: assertion mutability: Mutability::Write|Mutability::Read # Sensor name would be cpu0_core22 sensorNamePattern: nameParentLeaf interfaces: xyz.openbmc_project.State.Decorator.OperationalStatus: Functional: Offsets: 0x08: assert: false deassert: true type: bool Prereqs: 0x07: assert: true deassert: false xyz.openbmc_project.Inventory.Item: Present: Offsets: 0x07: assert: true deassert: false #The update will be skipped based on the value of skipOn #in this case if offset 0x07 is deasserted #the update will be skipped. skipOn: deassert type: bool 0xC5: sensorType: 0x17 path: /system/chassis/motherboard/gv100card0 sensorReadingType: 1 serviceInterface: xyz.openbmc_project.Inventory.Manager readingType: assertion mutability: Mutability::Write|Mutability::Read sensorNamePattern: nameLeaf interfaces: xyz.openbmc_project.Inventory.Decorator.Replaceable: FieldReplaceable: Offsets: 7: assert: true type: bool xyz.openbmc_project.Inventory.Item: Present: Offsets: 7: assert: true deassert: false type: bool # Example of an interface with no attached properties xyz.openbmc_project.Inventory.Item.Accelerator: xyz.openbmc_project.State.Decorator.OperationalStatus: Functional: Offsets: 8: assert: false type: bool Prereqs: 7: assert: true type: bool