| Age | Commit message (Collapse) | Author | Files | Lines |
|
Hsbp manager needs to query entity-manager for nvme
fields to populate all driver interfaces. This is needed
so indexing works correctly. This also exposes all M.2
drive interfaces at the end of the hsbp range. This allows
correct numbering. When we find a drive in entity-manager,
we backtrack from the virtual bus on the mux, to find out
what bus the mux is on, this tells us the hsbp. We then
use the virtual bus to identify the channel, this tells us
the drive index.
Tested: Saw 9 drives with a 1 hsbp and 1 M.2 configuration
Change-Id: I8e730a6a4229b3816991c629439ed4639710d114
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
We need to check if power is on as the hsbp goes away
during power off. This copies the power logic from
dbus-sensors and uses it to avoid scanning when power
is off.
Tested: Warnings go away
Change-Id: Ie949e7a98eb70592318710f3eecdfe766f71f110
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
This adds the led group interface so that they can
be activiated by NVMe daemon.
Tested: Set using dbus, went and saw drive flashing
Change-Id: I2e1aa3f9338609370d9758a7c4874428dac5d4ea
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
Some drives don't have frus, but should still show up
in redfish. For this reason we need to populate the drive
interface when it is not available in entity-manager.
Tested: All drives showed up in redfish
Change-Id: If3bfa1e3e9c03146a77c896a5c983fbdaff3f4f5
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
This creates associations so that redfish can know which
drives map to which configuration items.
Tested:
root@intel-obmc:~# busctl introspect xyz.openbmc_project.HsbpManager /xyz/openbmc_project/inventory/item/drive/Drive_2 --no-pager
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
org.freedesktop.DBus.Introspectable interface - - -
.Introspect method - s -
org.freedesktop.DBus.Peer interface - - -
.GetMachineId method - s -
.Ping method - - -
org.freedesktop.DBus.Properties interface - - -
.Get method ss v -
.GetAll method s a{sv} -
.Set method ssv - -
.PropertiesChanged signal sa{sv}as - -
xyz.openbmc_project.Association.Definitions interface - - -
.Associations property a(sss) 1 "inventory" "drive" "/xyz/openbmc_p... emits-change
xyz.openbmc_project.Inventory.Item interface - - -
.Present property b true emits-change
.PrettyName property s "Drive 2" emits-change
xyz.openbmc_project.State.Decorator.OperationalStatus interface - - -
.Functional property b true emits-change
xyz.openbmc_project.State.Drive interface - - -
.Rebuilding property b false emits-change
Also show up in mapper
Change-Id: Ia050316ac55faa89aad86567c93f9a74594e9180
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
Interface is pushed here:
https://gerrit.openbmc-project.xyz/c/openbmc/phosphor-dbus-interfaces/+/25671
Tested: available on dbus
Change-Id: I79a73bb0e62951b09f4eb8bf0594aa39916b5dd9
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
This adds support for reading the sw version and drive
presence from the hsbp cpld.
Tested:
Version is available in redfish
root@intel-obmc:~# busctl tree xyz.openbmc_project.HsbpManager --no-pager
`-/xyz
`-/xyz/openbmc_project
|-/xyz/openbmc_project/inventory
| `-/xyz/openbmc_project/inventory/item
| |-/xyz/openbmc_project/inventory/item/drive
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_1
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_2
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_3
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_4
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_5
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_6
| | |-/xyz/openbmc_project/inventory/item/drive/Drive_7
| | `-/xyz/openbmc_project/inventory/item/drive/Drive_8
| `-/xyz/openbmc_project/inventory/item/hsbp
| `-/xyz/openbmc_project/inventory/item/hsbp/J85894_HSBP_1
root@intel-obmc:~# busctl introspect xyz.openbmc_project.HsbpManager /xyz/openbmc_project/inventory/item/hsbp/J85894_HSBP_1 --no-pager
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
org.freedesktop.DBus.Introspectable interface - - -
.Introspect method - s -
org.freedesktop.DBus.Peer interface - - -
.GetMachineId method - s -
.Ping method - - -
org.freedesktop.DBus.Properties interface - - -
.Get method ss v -
.GetAll method s a{sv} -
.Set method ssv - -
.PropertiesChanged signal sa{sv}as - -
xyz.openbmc_project.Inventory.Item interface - - -
.Present property b true emits-change
.PrettyName property s "J85894 HSBP 1" emits-change
xyz.openbmc_project.Software.Version interface - - -
.Version property s "00.02.01" emits-change
.Purpose property s "xyz.openbmc_project.Software.Version... emits-change
Change-Id: I73fd2669f4a0e9b8e499107a960f2169f63873e3
Signed-off-by: James Feist <james.feist@linux.intel.com>
|
|
This is the initial commit for the hsbp-manager
daemon. Currently it reads a json configuration
and detects whether the cpld is available. More
feaures will be added in small patches.
Tested:
busctl introspect --no-pager xyz.openbmc_project.HsbpManager /xyz/openbmc_project/inventory/item/hsbp/J85894_HSBP_1
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
org.freedesktop.DBus.Introspectable interface - - -
.Introspect method - s -
org.freedesktop.DBus.Peer interface - - -
.GetMachineId method - s -
.Ping method - - -
org.freedesktop.DBus.Properties interface - - -
.Get method ss v -
.GetAll method s a{sv} -
.Set method ssv - -
.PropertiesChanged signal sa{sv}as - -
xyz.openbmc_project.Inventory.Item interface - - -
.Present property b true emits-change
.PrettyName property s "J85894 HSBP 1" emits-change
Change-Id: Ibbce272e045f8643af74b778f273168442623919
Signed-off-by: Feist, James <james.feist@linux.intel.com>
|