History log of /openbmc/pldm/meson.build (Results 1 – 25 of 94)
Revision Date Author Comments
# 77e6fe7a 06-Aug-2024 Gilbert Chen <gilbertc@nvidia.com>

platform-mc: Added EventManager

Added eventManager to handle sensor event class(00h) which is defined in
table 11 of DSP0248 v1.3.0. In this commit, the eventManager supports to
receive event asynch

platform-mc: Added EventManager

Added eventManager to handle sensor event class(00h) which is defined in
table 11 of DSP0248 v1.3.0. In this commit, the eventManager supports to
receive event asynchronously. The commit will also log the Ipmitool SEL
log and Redfish log for PLDM sensor event messages.

Change-Id: I1b337ccae454067841ffbbd8754631216a995542
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Signed-off-by: Gilbert Chen <gilbertc@nvidia.com>

show more ...


# 0ff3435d 22-Aug-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Mark pldm as a c++ project

pldm is not a [c++, c] project anymore, it was initially marked as a
c project as well , because of the libpldm component. Now that we have
the libpldm moved out of pldm i

Mark pldm as a c++ project

pldm is not a [c++, c] project anymore, it was initially marked as a
c project as well , because of the libpldm component. Now that we have
the libpldm moved out of pldm into its own repository, we can safely
mark the pldm repo as a c++ project.

Change-Id: Id5a11faf8c3f69bfd837bdfd2fc92c5322bbe1bb
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# 3012b632 22-Aug-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Format meson files with meson.format

Meson 1.5.0 introduced a new feature to format all the meson
files. Formatting all the meson files is now as simple as running
`meson format -i -r` command in th

Format meson files with meson.format

Meson 1.5.0 introduced a new feature to format all the meson
files. Formatting all the meson files is now as simple as running
`meson format -i -r` command in the repository root folder.

more details : https://mesonbuild.com/Commands.html#format

Change-Id: I9c5468cc502ae78b7a055e2de2a10296930cb9ec
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# eac61a4b 23-Feb-2022 Gilbert Chen <gilbert.chen@arm.com>

platform-mc: Add sensor manager

Added sensor_manager class. The sensor_manager class manages the timing
of sensor polling.

tested: Verified on ast2600 EVB which is connected to a PLDM device
over I

platform-mc: Add sensor manager

Added sensor_manager class. The sensor_manager class manages the timing
of sensor polling.

tested: Verified on ast2600 EVB which is connected to a PLDM device
over I2C. bmcweb can display the state of numeric sensor.

Signed-off-by: Gilbert Chen <gilbert.chen@arm.com>
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: I4257f823ea26d7fdb322cc82d847e94db056258c

show more ...


# 3c5486d4 01-Aug-2024 Thu Nguyen <thu@os.amperecomputing.com>

platform-mc: Create Numeric sensor D-Bus object

Added numeric_sensor class. The NumericSensor class will create the
Numeric sensor D-Bus object. The class also handles sensor status and
exports its

platform-mc: Create Numeric sensor D-Bus object

Added numeric_sensor class. The NumericSensor class will create the
Numeric sensor D-Bus object. The class also handles sensor status and
exports its status to D-Bus interfaces.

tested: Verified on ast2600 EVB which is connected to a PLDM device
over I2C. bmcweb can display the state of numeric sensor.

Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: I1c7de2e74100ed787ed2119896d3c5b36098dd96

show more ...


# f106a2c8 25-Jul-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

fw-update: Break circular dependency

```
In file included from ../pldmd/pldmd.cpp:2:
In file included from ../common/flight_recorder.hpp:3:
In file included from ../common/utils.hpp:15:
In file incl

fw-update: Break circular dependency

```
In file included from ../pldmd/pldmd.cpp:2:
In file included from ../common/flight_recorder.hpp:3:
In file included from ../common/utils.hpp:15:
In file included from ../subprojects/nlohmann_json/single_include/nlohmann/json.hpp:29:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/memory:78:
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/unique_ptr.h:91:16: error: invalid application of 'sizeof' to an incomplete type 'pldm::fw_update::Activation'
91 | static_assert(sizeof(_Tp)>0,
| ^~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<pldm::fw_update::Activation>::opera
tor()' requested here
398 | get_deleter()(std::move(__ptr));
| ^
../fw-update/update_manager.hpp:46:14: note: in instantiation of member function 'std::unique_ptr<pldm::fw_update::Activation>::~unique_ptr' requested here
46 | explicit UpdateManager(
| ^
../fw-update/update_manager.hpp:33:7: note: forward declaration of 'pldm::fw_update::Activation'
33 | class Activation;
| ^
In file included from ../pldmd/pldmd.cpp:2:
In file included from ../common/flight_recorder.hpp:3:
In file included from ../common/utils.hpp:15:
In file included from ../subprojects/nlohmann_json/single_include/nlohmann/json.hpp:29:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/memory:78:
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/unique_ptr.h:91:16: error: invalid application of 'sizeof' to an incomplete type 'pldm::fw_update::ActivationProgress'
91 | static_assert(sizeof(_Tp)>0,
| ^~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<pldm::fw_update::ActivationProgress
>::operator()' requested here
398 | get_deleter()(std::move(__ptr));
| ^
../fw-update/update_manager.hpp:46:14: note: in instantiation of member function 'std::unique_ptr<pldm::fw_update::ActivationProgress>::~unique_ptr' requested here
46 | explicit UpdateManager(
| ^
../fw-update/update_manager.hpp:34:7: note: forward declaration of 'pldm::fw_update::ActivationProgress'
34 | class ActivationProgress;
| ^
```

Change-Id: I2820cbe134d1f37a43e6a5056eed87dde6e63b08
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...


# 6c7fed4c 22-Feb-2022 Gilbert Chen <gilbert.chen@arm.com>

platform-mc: Added Terminus/TerminusManager class

Added requester::sendRecvPldmMsg awaiter type to be able to send and
receive PLDM message by coroutine.
Added TerminusManager to discover terminus f

platform-mc: Added Terminus/TerminusManager class

Added requester::sendRecvPldmMsg awaiter type to be able to send and
receive PLDM message by coroutine.
Added TerminusManager to discover terminus from EID list updated by
MCTPDiscovery class. The TerminusManager will initialize TID.

Signed-off-by: Gilbert Chen <gilbert.chen@arm.com>
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: Ifa5bdfff50648f1d7fba8710e160de662e8f9e06

show more ...


# 516122e0 07-May-2024 Kamalkumar Patel <kamalkumar.patel@ibm.com>

Add Json Config support for entity to DBus string

The entity map comprises both entity types and their corresponding
names, essential for generating unique D-Bus paths for each entity.
However, chal

Add Json Config support for entity to DBus string

The entity map comprises both entity types and their corresponding
names, essential for generating unique D-Bus paths for each entity.
However, challenges arise due to variations in path generation across
companies, often dictated by differing entity types. To address this,
enabling configurability of EntityID becomes imperative, empowering
communities to tailor configurations to their specific use cases.

Testing:
Unit tests passed

Change-Id: I3981fde64bd00940caa5067a9472fd948e74cbf0
Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>

show more ...


# ace4e14d 24-Apr-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Deprecate the support for x86 sdk

OpenBMC as a project has moved away from using yocto x86 sdks for unit
testing. Instead now the preferred way to build and test code is by two
ways:

1. Leveraging

Deprecate the support for x86 sdk

OpenBMC as a project has moved away from using yocto x86 sdks for unit
testing. Instead now the preferred way to build and test code is by two
ways:

1. Leveraging the meson subproject support
2. Using openbmc docker container

Since x86 sdks needed some weird hacks in the code base like figuring
out the linker arguments ourselves & running custom bash commands from
the meson build files. Also with changing yocto code base, its a large
maintainer burden to make sure this support works.

Tested:
Code builds & unit tests are passed with both the approaches mentioned
above.

Change-Id: Iaf55e2c003ffd9ee1a295de5bdfd14d81222e94b
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# 46f352ed 17-Mar-2024 Archana Kakani <archana.kakani@ibm.com>

pldm: Meson option for system specific bios attributes

PLDM users who want to use bios attributes based on the system type
can enable this meson option.
With disabled option default bios json files

pldm: Meson option for system specific bios attributes

PLDM users who want to use bios attributes based on the system type
can enable this meson option.
With disabled option default bios json files are picked to build
bios attribute tables.

Added meson option "system-specific-bios-json" to add the support
for system specific bios attributes.
Below is the pre-requisite to support system specific bios
attributes:
1. Entity Manager service is active
2. Entity Manager should have Decorator.Compatible interface
and system type in Names property under this interface
3. BIOS Attribute json files are added into the folder(Named on
the System Type property value) and should be installed
under /usr/share/pldm/bios/

With disabled "system-specific-bios-json" option default bios
attributes are populated.

Tested:
Poweron system-specific-bios-json enabled/disabled

Change-Id: I95a953cdb12c344d22f487b83040356a1b5fa937
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>

show more ...


# 4d99c311 28-Mar-2024 Sagar Srinivas <sagar.srinivas@ibm.com>

Softoff: Add config support for PDR entities

This commit introduces a config file for the soft power off
app. The config file specifies the order of remote PDRs to
be checked during the soft power o

Softoff: Add config support for PDR entities

This commit introduces a config file for the soft power off
app. The config file specifies the order of remote PDRs to
be checked during the soft power off process.

Previously, the entity type was hardcoded in the codebase,
limiting scalability. With this change, the softoff app gains
flexibility for future expansions.

TESTED: By running 'obmcutil poweroff' with various remote
entities during boot-up.

Signed-off-by: Sagar Srinivas <sagar.srinivas@ibm.com>
Change-Id: Ib8d2aba6a05fc4e9da4b042fd67890e6282ed784

show more ...


# cfefc15d 07-Feb-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

fix usage of broken feature in meson.build file

It seems that we are trying to convert file objects to strings which is
considered as a misfeature since it does not work reliably.

This is the warni

fix usage of broken feature in meson.build file

It seems that we are trying to convert file objects to strings which is
considered as a misfeature since it does not work reliably.

This is the warning that is seen while building pldm:

``` WARNING: Broken features used:
* 1.3.0: {'str.format: Value other than strings, integers, bools, options,
dictionaries and lists thereof.'}
```

Tested:

Rebuild pldm repository with the fix and it builds pldm without the
mentioned warning above.

Change-Id: If8fedf488d33de6dccc2c1b45c2bfe124fbc3384
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# 4668f5c8 14-Jan-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Use system include directives for libpldm

libpldm is no-longer a subproject, so let's stop treating it like it is
one by default.

Fixed with:

```
$ sed -Ei 's/#include "libpldm\/([^"]+).h"/#

pldm: Use system include directives for libpldm

libpldm is no-longer a subproject, so let's stop treating it like it is
one by default.

Fixed with:

```
$ sed -Ei 's/#include "libpldm\/([^"]+).h"/#include <libpldm\/\1.h>/' $(git grep -lF '"libpldm/')
```

Change-Id: I9be54661dcee1bdf2575aece8ff250424b4b7b56
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...


# 0a4ae8a8 02-Jan-2024 Patrick Williams <patrick@stwcx.xyz>

meson: simplify add_project_arguments for OEM_IBM

Set it in one line for both C and C++.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I40cba5500a92b66ec0fe1dea935a5ce5da0a3a38


# cf772846 07-Dec-2023 Patrick Williams <patrick@stwcx.xyz>

meson: adjust nlohmann-json dependency

Simplify the meson dependency for nlohmann-json, use the consistent
dependency name, and align the wrap file name with other repositories.

Signed-off-by: Patr

meson: adjust nlohmann-json dependency

Simplify the meson dependency for nlohmann-json, use the consistent
dependency name, and align the wrap file name with other repositories.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I3a682a3e07e38d0a1bfe35858e24f1bb74b4ec34

show more ...


# 87bfacd2 29-Nov-2023 Patrick Williams <patrick@stwcx.xyz>

build: use allowed over enabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`) no longer retur

build: use allowed over enabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`) no longer return true for auto features. Instead, the
expectation is to use `allowed()` which is true for both enabled and auto.

Switch all uses of `enabled` to `allowed`.

Change-Id: I794c658531483266bfce6f9b28127a166ed01490
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 1ed5f7a6 21-May-2023 Rashmica Gupta <rashmica@linux.ibm.com>

pldm: Convert to using libpldm transport APIs

A significant amount of logic can be removed by exploiting the new
transport APIs provided by libpldm. Switch the pldm repository over to
use these by i

pldm: Convert to using libpldm transport APIs

A significant amount of logic can be removed by exploiting the new
transport APIs provided by libpldm. Switch the pldm repository over to
use these by introducing an RAII wrapper for the APIs. The current
stance is to continue using the legacy mctp-demux transport
implementation, but we also provide a build option to switch to the
AF_MCTP transport.

We don't currently have the infrastructure in place to get the correct
TIDs, so to keep everything working as before use the EID as the TID in
the EID-to-TID mapping.

Change-Id: I366f079082b102cfc0e90db0f62208581eb8693e
Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Signed-off-by: Delphine CC Chiu <Delphine_CC_Chiu@wiwynn.com>
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>

show more ...


# fc81a437 26-Jul-2023 Manojkiran Eda <manojkiran.eda@gmail.com>

use fs.copyfile instead of deprecated copy

copy arg in configure_file API is deprecated since meson
version 0.64.0. As we moved to meson version 1.1.1 we can
leverage the filesystem module copyfile(

use fs.copyfile instead of deprecated copy

copy arg in configure_file API is deprecated since meson
version 0.64.0. As we moved to meson version 1.1.1 we can
leverage the filesystem module copyfile() to achive the
same result.

Change-Id: I8ec540a505060306ff643a153cb2ca1b1ca4d35e
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# cdbb9e27 13-Jul-2023 Patrick Williams <patrick@stwcx.xyz>

use std::move_only_function

Since enabling C++23, we can eliminate the need for `function2` and
instead leverage `std::move_only_function`.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Chang

use std::move_only_function

Since enabling C++23, we can eliminate the need for `function2` and
instead leverage `std::move_only_function`.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iafc70c918e38b429e586bf18f71a716bdede43f8

show more ...


# b95bbe36 12-Jul-2023 Patrick Williams <patrick@stwcx.xyz>

build: upgrade to C++23

Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of
the standard has been implemented. Upgrade the build to leverage it.

Change-Id: I04732a67ef18c711ca80e

build: upgrade to C++23

Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of
the standard has been implemented. Upgrade the build to leverage it.

Change-Id: I04732a67ef18c711ca80e53f0bf4828218f2b682
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 47792274 13-Jun-2023 Andrew Jeffery <andrew@aj.id.au>

pldm: Include config.h via compiler argument

This removes any ambiguity about which config.h is being included.
Subprojects such as libpldm and phosphor-logging also generate config.h
files, and the

pldm: Include config.h via compiler argument

This removes any ambiguity about which config.h is being included.
Subprojects such as libpldm and phosphor-logging also generate config.h
files, and these are exposed in the include path.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I3e0ccd6339f088380ffa29d41167b07aefc7dd16

show more ...


# 9138c209 19-May-2023 vkaverap@in.ibm.com <vkaverap@in.ibm.com>

PLDM : Change the dbus timeout to 5 seconds

Dbus timeout value for every dbus call in PLDM is set to 5 seconds
instead of default 25 seconds so that all dbus calls that expect a
reply exists after 5

PLDM : Change the dbus timeout to 5 seconds

Dbus timeout value for every dbus call in PLDM is set to 5 seconds
instead of default 25 seconds so that all dbus calls that expect a
reply exists after 5 seconds if there is no response from the client.
While BMC is still waiting for a response on any dbus calls it is
possible that host can timeout and return an error.
Another reason is that memory address from where BMC would read data
sent by host may get deallocated after 20 seconds and it is possible
for this to happen even before BMC has read the data. This has lead
to DMA issues.

Tested by adding a sleep for 10 seconds inside main function of
phospher-host-postd and executed get dbus property on snoopd
interface from pldm. PLDM dbus call timed out after 5 seconds.

Change-Id: I1aa1b4ad7fceff2224a3ccc3bcf6abd5705963bc
Signed-off-by: Varsha Kaverappa <vkaverap@in.ibm.com>

show more ...


# 7c1dc7ea 28-Apr-2023 Andrew Jeffery <andrew@aj.id.au>

pldmd: move to libpldm instance ID alloc/free

Refactor the dbus_api::Requester class to be implemented in terms of
libpldm's instance ID database. To make that easier to deal with we
introduce a lig

pldmd: move to libpldm instance ID alloc/free

Refactor the dbus_api::Requester class to be implemented in terms of
libpldm's instance ID database. To make that easier to deal with we
introduce a light-weight RAII C++ binding along with a helper class for
unit tests.

Change-Id: Ia03de8245dfb114e6266ba36dcf26ca4398a4ce0
Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>

show more ...


# 49cfb138 02-Mar-2023 Riya Dixit <riyadixitagra@gmail.com>

PLDM: Implementing Phosphor-Logging/LG2 logging

This commit adds changes in PLDM for implementing
structured LG2 logging, thereby moving away from
std::cout/cerr practice of logging which are
output

PLDM: Implementing Phosphor-Logging/LG2 logging

This commit adds changes in PLDM for implementing
structured LG2 logging, thereby moving away from
std::cout/cerr practice of logging which are
output streams and not logging mechanism.

PLDM now can make use of lg2 features like accurate
CODE LINE Number and CODE_FUNCTION Name and better
detailing in json object values which can be used in
log tracking.

More detailed logging change:
https://gist.github.com/riyadixitagra/c251685c1ba84248181891f7bc282395

Tested:
Ran a power off, on, cycle, and reset-reload.

Change-Id: I0485035f15f278c3fd172f0581b053c1c37f3a5b
Signed-off-by: Riya Dixit <riyadixitagra@gmail.com>

show more ...


# c894c0a5 12-Apr-2023 Patrick Williams <patrick@stwcx.xyz>

meson: remove deprecated get_pkgconfig_variable

Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In
meson 0.58 the `get_variable` was enhanced to no longer require the
`pkgconfig

meson: remove deprecated get_pkgconfig_variable

Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In
meson 0.58 the `get_variable` was enhanced to no longer require the
`pkgconfig` keyword argument. Ensure meson 0.58 is required and update
the usage of all `get_pkgconfig_variable` and `get_variable` to be the
modern variant.

Change-Id: I016ab773ac9cbe09bc4f9489e396f1c4b2082674
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


1234