commit | 902d90dacc33c762b44d25595d3be16c47bae444 | [log] [tgz] |
---|---|---|
author | Kumar Thangavel <thangavel.k@hcl.com> | Mon Apr 11 11:51:33 2022 +0530 |
committer | Kumar Thangavel <thangavel.k@hcl.com> | Mon Sep 19 13:37:39 2022 +0000 |
tree | ed2f01ae6f84022e7cf8b3e807aa3b2c993909ab | |
parent | a23af1206bc4c835516909c87c71be0e7428264c [diff] |
Add multi-host support to handle IPMI restriction mode. Added multi-host and IPMI based devices to support the IPMI whitelist restriction mode in ipmid. The machine specific .yml file has the default restriction mode dbus path. Ex. Whitelist. These restriction modes dbus paths added for all the hosts and other IPMI devices Ex. ocp_debug_card. These information will be displayed in the setting manager dbus objects. Ipmid reads hostIdx from the command request. These hostIdx values are getting from ipmb-channels.json. This ipmb-channels entires can configure from machine layer. busctl tree xyz.openbmc_project.Settings | grep restriction | | |-/xyz/openbmc_project/control/host1/restriction_mode | | |-/xyz/openbmc_project/control/host2/restriction_mode | | |-/xyz/openbmc_project/control/host3/restriction_mode | | |-/xyz/openbmc_project/control/host4/restriction_mode |-/xyz/openbmc_project/control/ocp_debug_card/restriction_mode The mapping between IPMI based devices and restriction mode dbus objects from settings manager is filtered with restriction mode dbus interface as like above. The mapping is based on the config file(json, yml) file entries. Can configure .yml and .json entries based on the order and IPMI devices and restriction mode dbus object mapping. TESTED : Built Facebook YosemiteV2 images and loaded on the target hardware. Verified restriction mode enabled for all four hosts and ocp_debug_card. Signed-off-by: Kumar Thangavel <thangavel.k@hcl.com> Change-Id: I3d338b6cd37a817653ca981c5322a77e60d3f992
meson builddir ninja -C builddir
meson builddir -Dbuildtype=minsize -Db_lto=true -Dtests=disabled ninja -C builddir
If any of the dependencies are not found on the host system during configuration, meson automatically gets them via its wrap dependencies mentioned in ipmid/subprojects
.
meson builddir -Dwrap_mode=nofallback ninja -C builddir
meson builddir -Dbuildtype=debug ninja -C builddir
meson builddir -Db_coverage=true -Dtests=enabled ninja -C builddir test ninja -C builddir coverage