# 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
  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
  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
  sensorReadingType: 0x6F
  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
  sensorReadingType: 0x6F
  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
  mutability: Mutability::Write|Mutability::Read
  serviceInterface: org.freedesktop.DBus.Properties
  readingType: readingData
  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
  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
