0088a6ae | 27-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_integer()
Users should prefer pldm_bios_table_attr_value_entry_encode_integer_check() which returns an error code rather than preventing
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_integer()
Users should prefer pldm_bios_table_attr_value_entry_encode_integer_check() which returns an error code rather than preventing misbehaviour using assert().
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: If7b0290d93d96c893fe3e790ba7738ececc3d4df
show more ...
|
2d66393f | 26-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_string()
Users should prefer pldm_bios_table_attr_value_entry_encode_string_check() which returns an error code rather than preventing m
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_string()
Users should prefer pldm_bios_table_attr_value_entry_encode_string_check() which returns an error code rather than preventing misbehaviour via assert().
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Id1aea49a07ac52858c1a5977e4f96b987f705064
show more ...
|
7aeb7edb | 26-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_enum()
Users should prefer pldm_bios_table_attr_value_entry_encode_enum_check() which returns an error code instead of preventing misbeh
bios_table: Deprecate pldm_bios_table_attr_value_entry_encode_enum()
Users should prefer pldm_bios_table_attr_value_entry_encode_enum_check() which returns an error code instead of preventing misbehaviour via assert().
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I9442fd35a0d2240572d600189387215664bef60d
show more ...
|
fe0f01d8 | 26-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Transitive error handling for get_bios_attr_handle()
Most transitive callers of get_bios_attr_handle() exposed in the public API surface already had the ability to return an error code.
bios_table: Transitive error handling for get_bios_attr_handle()
Most transitive callers of get_bios_attr_handle() exposed in the public API surface already had the ability to return an error code. pldm_bios_table_attr_entry_integer_encode() was the one case where there wasn't the case, but the equivalent pldm_bios_table_attr_entry_integer_encode_check() API did already exist.
We reimplement pldm_bios_table_attr_entry_integer_encode() in terms of pldm_bios_table_attr_entry_integer_encode_check() and then deprecate pldm_bios_table_attr_entry_integer_encode() to continue working towards making the library assert()-safe.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ia97e51b25174d0536ebd53182e7006a553b35f94
show more ...
|
5fb9680b | 28-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
requester: Expose pldm_close() in header
The function was defined in the source but not visible in the header. Make it so such that we don't have to forward-declare it in the source.
Signed-off-by:
requester: Expose pldm_close() in header
The function was defined in the source but not visible in the header. Make it so such that we don't have to forward-declare it in the source.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I1552a69a0f7a44bb69afb1b4adcb90427eeecc15
show more ...
|
8cf70456 | 22-Jun-2023 |
Pavithra Barithaya <pavithra.b@ibm.com> |
pdr: Rework pldm_pdr_find_container_id_range_exclude() API
The API was returning the child container id, so renamed the API as pldm_pdr_find_child_container_id_index_range_exclude(). The API returns
pdr: Rework pldm_pdr_find_container_id_range_exclude() API
The API was returning the child container id, so renamed the API as pldm_pdr_find_child_container_id_index_range_exclude(). The API returns the child container id based on the index passed as an argument.
This commit addresses the comment in https://gerrit.openbmc.org/c/openbmc/libpldm/+/63615/comment/439b3560_78f6dbbc/
Fixes: 5dc025719dc3 (“pdr: Add pldm_pdr_find_container_id_range_exclude() API”) Change-Id: I811105d9ccc64e6f5ab28133e75ff63fdcc2c6bc Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com>
show more ...
|
6409c8a0 | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Remove deprecated APIs sanitized by assert()
pldmd has now been reworked to remove its use of the unchecked APIs[1].
[1]: https://gerrit.openbmc.org/c/openbmc/pldm/+/64181
Signed-off-b
bios_table: Remove deprecated APIs sanitized by assert()
pldmd has now been reworked to remove its use of the unchecked APIs[1].
[1]: https://gerrit.openbmc.org/c/openbmc/pldm/+/64181
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I04101c4e5f3408e27130dc7aa960f013eba3e0a3
show more ...
|
5dc02571 | 19-May-2023 |
Pavithra Barithaya <pavithra.b@ibm.com> |
pdr: Add pldm_pdr_find_container_id_range_exclude() API
This API is necessary to find the container id of contained entity which is not within the record handle ranges of the remote endpoint PDRs.Th
pdr: Add pldm_pdr_find_container_id_range_exclude() API
This API is necessary to find the container id of contained entity which is not within the record handle ranges of the remote endpoint PDRs.The remote endpoint has their own set of PDRs and have record handle ranges defined.
Change-Id: If28325869d4c5c797c33bc4efd41bee16777a7aa Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
25ddbccf | 19-May-2023 |
Pavithra Barithaya <pavithra.b@ibm.com> |
pdr: Add pldm_entity_association_pdr_add_from_node_with_record_handle()
This API adds the entity association PDR record from node to the repo with record handle given as the input parameter by the c
pdr: Add pldm_entity_association_pdr_add_from_node_with_record_handle()
This API adds the entity association PDR record from node to the repo with record handle given as the input parameter by the caller API. Earlier the records where added in a sequential way alone, with this change the entity association PDR records gets the new record handle based on the input value.
Change-Id: Ib29ecf1ef493cbb45938502a670c68e2e0bbd6bb Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com>
show more ...
|
0c9f5a8a | 14-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Relax pldm_bios_table_attr_entry_enum_decode_pv_hdls_check()
Allow the number of handles decoded by pldm_bios_table_attr_entry_enum_decode_pv_hdls_check() to be fewer than the number of
bios_table: Relax pldm_bios_table_attr_entry_enum_decode_pv_hdls_check()
Allow the number of handles decoded by pldm_bios_table_attr_entry_enum_decode_pv_hdls_check() to be fewer than the number of handles reported by pldm_bios_table_attr_entry_enum_decode_pv_num_check(). The relaxation provides equivalent behaviour to pldm_bios_table_attr_entry_enum_decode_pv_hdls() but provides assert() safety by instead returning an error.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I1d51174450cbe97c9985a1361e235d90efc19b35
show more ...
|
98c1e69d | 14-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: Relax pldm_bios_table_string_entry_decode_string_check()
Allow the string decoded by pldm_bios_table_string_entry_decode_string_check() to be truncated, as per the unchecked pldm_bios_ta
bios_table: Relax pldm_bios_table_string_entry_decode_string_check()
Allow the string decoded by pldm_bios_table_string_entry_decode_string_check() to be truncated, as per the unchecked pldm_bios_table_string_entry_decode_string(). With this change pldm_bios_table_string_entry_decode_string_check() provides assert() safety but is otherwise equivalent.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ia872f1496c642efbb34ee3ae29455f4eaf574082
show more ...
|
657bfd0b | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_enum_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
bios_table: pldm_bios_table_attr_entry_enum_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Id260f091d178aadc7ed2d2a667eb56a51d044bdc
show more ...
|
b9a8769a | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_string_decode_def_string_length_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffe
bios_table: pldm_bios_table_attr_entry_string_decode_def_string_length_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Icc9301d25c83de39f613fc835c12e0565f5b5c8b
show more ...
|
437a83a9 | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_enum_decode_def_num_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@a
bios_table: pldm_bios_table_attr_entry_enum_decode_def_num_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I84864c2541e0d6e6f67a7a36273ce08ac915ca34
show more ...
|
f3d851f9 | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_enum_decode_pv_hdls_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@a
bios_table: pldm_bios_table_attr_entry_enum_decode_pv_hdls_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ia78e3a26e077b97f7ae1dd7dc113ded64e8f55b0
show more ...
|
4f7ebdab | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_enum_decode_pv_num_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj
bios_table: pldm_bios_table_attr_entry_enum_decode_pv_num_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ib283c73bbbf68415a12d5d2e9b24e39dbba44c0c
show more ...
|
f89befe3 | 15-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
meson: Force inclusion of config.h via `-include`
Make sure there's no ambiguity about which config.h is used for includes in the event that libpldm acquires subprojects, or is used as a subproject
meson: Force inclusion of config.h via `-include`
Make sure there's no ambiguity about which config.h is used for includes in the event that libpldm acquires subprojects, or is used as a subproject itself.
Tested: `meson compile -C build` succeeds
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I08c3bdc807cc268d2401e06f0bfaee07f89ba534
show more ...
|
a5c3287e | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_attr_entry_string_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.a
bios_table: pldm_bios_table_attr_entry_string_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Iff1891565edf96d2447527682b4db3464a009cf1
show more ...
|
23250310 | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_string_entry_decode_string_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id
bios_table: pldm_bios_table_string_entry_decode_string_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I501d42a07463ff5a58793a5850f65ca8932bbf57
show more ...
|
91f4b54e | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: pldm_bios_table_string_entry_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Ch
bios_table: pldm_bios_table_string_entry_encode_check() values
Document the pre-conditions that lead to failures and their associated error codes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I117a816834c6d60016b37518e9aa07f5686b35fc
show more ...
|
2ebec8db | 13-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
bios_table: s/stroe/store/
Fix a minor typo in the doxygen of pldm_bios_table_attr_entry_enum_decode_def_num_check() and pldm_bios_table_attr_entry_enum_decode_pv_hdls().
Signed-off-by: Andrew Jeff
bios_table: s/stroe/store/
Fix a minor typo in the doxygen of pldm_bios_table_attr_entry_enum_decode_def_num_check() and pldm_bios_table_attr_entry_enum_decode_pv_hdls().
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ife25107fcfdfdfe559e76761fbdb57d9c2861c7e
show more ...
|
4d694346 | 19-May-2023 |
Pavithra Barithaya <pavithra.b@ibm.com> |
pdr: Add pldm_pdr_find_last_in_range()
Adds a new libpldm API to find the last PDR record from the PDR repo based on the range of record handle values given as input. This API is used when a record
pdr: Add pldm_pdr_find_last_in_range()
Adds a new libpldm API to find the last PDR record from the PDR repo based on the range of record handle values given as input. This API is used when a record needs to be added in a particular range of record handles to the repo that contains all PDRs (inclusive of BMC and remote endpoints).
Change-Id: Ica5187053361b27810577a4985fab4b994d35961 Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
9947f9d6 | 18-May-2023 |
Pavithra Barithaya <pavithra.b@ibm.com> |
pdr: Add APIs for creating and locating remote PDRs
In the current state, the tree_find() and tree_add() utilities work by replacing the existing container ID that comes from the remote endpoints. B
pdr: Add APIs for creating and locating remote PDRs
In the current state, the tree_find() and tree_add() utilities work by replacing the existing container ID that comes from the remote endpoints. But we need the remote container ID when we do the PDR normalization (merging) in BMC.
Two boolean properties are introduced:
* is_remote: used to indicate if the entity is BMC owned or of remote endpoint owned.
* is_update_container_id: used to indicate if the container id of the entity needs to be updated or not.
We handle 3 different combinations,
1. Both are false - when it is the parent node in the tree example: - https://github.com/ibm-openbmc/pldm/blob/1050/ libpldmresponder/pdr_state_sensor.hpp#L136
2. is_remote is false and update_container_id is true - when it is a BMC entity but we have a container id change needed. example: - https://github.com/ibm-openbmc/pldm/blob/1050/ libpldmresponder/fru.cpp#L130
3. is_remote is true and update_container_id is false - In IBM PLDM stack talks to two different remote firmware implementations over PLDM, and we had a conflicting requirement to not merge the container ID from one endpoint but merge the container ID from another endpoint. Example: -https://github.com/ibm-openbmc/ pldm/blob/1050/host-bmc/host_pdr_handler.cpp#L509
Change-Id: I8541b76aa46ba23172ffbc4d72e686909b7147fc Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
39bd2ea5 | 02-Feb-2023 |
ArchanaKakani <archana.kakani@ibm.com> |
pdr: Introduce remote_container_id and associated APIs
We have a concept of a Primary PDR repository and merging the PDRs from a remote PLDM endpoint (DSP0248 section 7: PDRs support functions).
Th
pdr: Introduce remote_container_id and associated APIs
We have a concept of a Primary PDR repository and merging the PDRs from a remote PLDM endpoint (DSP0248 section 7: PDRs support functions).
The main functions of the PLDM discovery Agent (DSP0248 section 14) (assuming a PLDM terminus like BMC) is maintaining a primary PDR repository, adding/deleting/updating the PDRs to form a complete system model. And to do so this API (pldm_entity_node_get_remote_container_id) will help us update the container id field of the PDR obtained by the remote PLDM terminus.
Change-Id: I249e627a1e05ee6d9644f3f93f326e47256d914a Signed-off-by: Archana Kakani <archana.kakani@ibm.com> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
8de8e1ec | 09-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
meson: Reduce strength of oem-ibm requirements from enabled to allowed
If it's not expressly disabled, do what's necessary to build the oem-ibm pieces of the code-base. Capture the newly-enabled API
meson: Reduce strength of oem-ibm requirements from enabled to allowed
If it's not expressly disabled, do what's necessary to build the oem-ibm pieces of the code-base. Capture the newly-enabled APIs in the ABI dumps.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I50168309432620e03f00a4620b6bfc38f2e575c8
show more ...
|