History log of /openbmc/entity-manager/src/perform_scan.cpp (Results 1 – 13 of 13)
Revision Date Author Comments
# 5a80703c 03-Mar-2025 Patrick Williams <patrick@stwcx.xyz>

clang-format: update latest spec and reformat

Copy the latest format file from the docs repository and apply.

Change-Id: I71c8504caaa31ac43ae0f20c002ed081078e3f48
Signed-off-by: Patrick Williams <p

clang-format: update latest spec and reformat

Copy the latest format file from the docs repository and apply.

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

show more ...


# a41f014c 18-Dec-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have b

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have been deprecated, so adjust the style file
accordingly.

See Ie2f6eb3b043f2d655c9df806815afd7971fd0947 for updated style.
See I88192b41ab7a95599a90915013579608af7bc56f for clang-19 enablement.

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

show more ...


# c3db2c3c 20-Aug-2024 Alexander Hansen <alexander.hansen@9elements.com>

meson: use phosphor-logging for debug statements

There is no need to individually patch each file to enable debug
logging.

All the different definitions of 'bool debug' are removed in favor of
usin

meson: use phosphor-logging for debug statements

There is no need to individually patch each file to enable debug
logging.

All the different definitions of 'bool debug' are removed in favor of
using phosphor-logging.

Change-Id: Ia9a8ecfa4ea220f588d7cf2d291b14067e0391e7
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>

show more ...


# b7077437 16-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

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

show more ...


# fc171428 04-Apr-2024 Ed Tanous <ed@tanous.net>

Update clang-tidy

Fix a bunch of minor issues, ignore others. We use a lot of global
variables. Enabling a check will hopefully make sure we don't add more.

Change-Id: Ie76053d4afc95a5372b70b2fb7

Update clang-tidy

Fix a bunch of minor issues, ignore others. We use a lot of global
variables. Enabling a check will hopefully make sure we don't add more.

Change-Id: Ie76053d4afc95a5372b70b2fb768be464468cec0
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# b9dd7f86 20-Oct-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

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

show more ...


# df190619 10-May-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

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

show more ...


# 8f05a3a1 21-Nov-2022 JinFuLin <JeffLin2@quantatw.com>

Remove index from list when device is skipped

If there is a duplicate deviceName added in system.json, it will cause
vicious circle that entity-manager crashed with error "file exeists"
and then res

Remove index from list when device is skipped

If there is a duplicate deviceName added in system.json, it will cause
vicious circle that entity-manager crashed with error "file exeists"
and then restart forever.

The index should also be removed when the device is erased from
foundDevices.

Tested:
Add the following config: /usr/share/entity-manager/configurations/x8x8.json
{
"Exposes": [],
"Name": "cable_x8x8_$index",
"Probe": "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': '^cable_x8x8$'})",
"Type": "Board",
"xyz.openbmc_project.Inventory.I2CLocation": {
"Bus": "$BUS",
"Address": "$ADDRESS",
"Name": "cable_x8x8_$index"
}
}
root@qbmc:~# busctl tree xyz.openbmc_project.EntityManager | grep cable_x8x8
| |-/xyz/openbmc_project/inventory/system/board/cable_x8x8_1
| |-/xyz/openbmc_project/inventory/system/board/cable_x8x8_2
root@qbmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/cable_x8x8_1 xyz.openbmc_project.Inventory.I2CLocation
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
.Address property t 82 emits-change
.Bus property t 6 emits-change
.Name property s "cable_x8x8_1" emits-change
root@qbmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/cable_x8x8_2 xyz.openbmc_project.Inventory.I2CLocation
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
.Address property t 82 emits-change
.Bus property t 9 emits-change
.Name property s "cable_x8x8_2" emits-change

And then write cable_x8x8 fru data to bus 5, and use "ReScan" method in
FruDevice's dbus.

Before this patch the entity-manager will crash with the following log:

Mar 09 12:41:05 qbmc entity-manager[2713]: Inventory Added: cable_x8x8_1
Mar 09 12:41:06 qbmc entity-manager[2713]: terminate called after throwing an instance of 'sdbusplus::exception::SdBusError'
Mar 09 12:41:06 qbmc entity-manager[2713]: what(): sd_bus_add_object_vtable: org.freedesktop.DBus.Error.FileExists: File exists

root@qbmc:~# cat /var/configuration/system.json | grep 'xyz.openbmc_project.Inventory.I2CLocation' -A 4
"xyz.openbmc_project.Inventory.I2CLocation": {
"Address": 82,
"Bus": 6,
"Name": "cable_x8x8_1"
}
--
"xyz.openbmc_project.Inventory.I2CLocation": {
"Address": 82,
"Bus": 5,
"Name": "cable_x8x8_1"
}
--
"xyz.openbmc_project.Inventory.I2CLocation": {
"Address": 82,
"Bus": 9,
"Name": "cable_x8x8_2"
}

After adding this patch:
root@qbmc:~# busctl tree xyz.openbmc_project.EntityManager | grep cable_x8x8
| |-/xyz/openbmc_project/inventory/system/board/cable_x8x8_1
| |-/xyz/openbmc_project/inventory/system/board/cable_x8x8_2
| |-/xyz/openbmc_project/inventory/system/board/cable_x8x8_3
root@qbmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/cable_x8x8_1 xyz.openbmc_project.Inventory.I2CLocation
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
.Address property t 82 emits-change
.Bus property t 6 emits-change
.Name property s "cable_x8x8_1" emits-change
root@qbmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/cable_x8x8_2 xyz.openbmc_project.Inventory.I2CLocation
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
.Address property t 82 emits-change
.Bus property t 9 emits-change
.Name property s "cable_x8x8_2" emits-change
root@qbmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/cable_x8x8_3 xyz.openbmc_project.Inventory.I2CLocation
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
.Address property t 82 emits-change
.Bus property t 5 emits-change
.Name property s "cable_x8x8_3" emits-change

Signed-off-by: JinFuLin <JeffLin2@quantatw.com>
Change-Id: I081301a68c12e0c0c8ea4e8f54445dd8ff8b9ed1

show more ...


# 2594d36e 28-Sep-2022 Patrick Williams <patrick@stwcx.xyz>

clang-15: fixes for const-auto iterators

clang-tidy-15 is giving a number of warnings which it autofixed of
the form:

```
../src/perform_scan.cpp:407:10: error: 'auto &' can be declared as 'const a

clang-15: fixes for const-auto iterators

clang-tidy-15 is giving a number of warnings which it autofixed of
the form:

```
../src/perform_scan.cpp:407:10: error: 'auto &' can be declared as 'const auto &' [readability-qualified-auto,-warnings-as-errors]
for (auto& [configId, config] : systemConfiguration.items())
^
const
```

Apply autofixes.

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

show more ...


# 1f77d9c8 29-Aug-2022 Zhikui Ren <zhikui.ren@intel.com>

Fix persist configuration changes from user

There are user commands that can modify system configuration, like
sensor thresholds. These changes are expected to persist through power
cycles until the

Fix persist configuration changes from user

There are user commands that can modify system configuration, like
sensor thresholds. These changes are expected to persist through power
cycles until they are changed again or factory reset is performed.

Issue: these changes are not persistent because the cached system.json
gets overwritten by perform_scan's updateSystemConfiguration with old
json record. Check if the device already exist in current system json
before loading record from last saved configuration.

Tested:
ipmitool commands to change sensor threshold and the change persist
across power cycles.

Signed-off-by: Zhikui Ren <zhikui.ren@intel.com>
Change-Id: I160d1910c9b3559558c6a1c3b1b10a454879ae3d

show more ...


# 3013fb49 09-Jul-2022 Ed Tanous <edtanous@google.com>

Make clang-tidy changes

clang-tidy has a number of checks it recommends. These checks are
documented in the next commit, but make the code pass our coding
standard.

Tested:
Minor changes made by t

Make clang-tidy changes

clang-tidy has a number of checks it recommends. These checks are
documented in the next commit, but make the code pass our coding
standard.

Tested:
Minor changes made by the robot.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I6cfaab92211af9c4c1eccd981ba9fe7b8c523457

show more ...


# 2af39224 22-Jul-2022 Patrick Williams <patrick@stwcx.xyz>

sdbusplus: use shorter type aliases

The sdbusplus headers provide shortened aliases for many types.
Switch to using them to provide better code clarity and shorter
lines. Possible replacements are

sdbusplus: use shorter type aliases

The sdbusplus headers provide shortened aliases for many types.
Switch to using them to provide better code clarity and shorter
lines. Possible replacements are for:
* bus_t
* exception_t
* manager_t
* match_t
* message_t
* object_t
* slot_t

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

show more ...


# e45d8c71 25-May-2022 Brad Bishop <bradleyb@fuzziesquirrel.com>

treewide: comply with the OpenBMC style guidelines

The guidelines say cpp source code filenames should be lower_snake_case:
https://github.com/openbmc/docs/blob/master/cpp-style-and-conventions.md#f

treewide: comply with the OpenBMC style guidelines

The guidelines say cpp source code filenames should be lower_snake_case:
https://github.com/openbmc/docs/blob/master/cpp-style-and-conventions.md#files

Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: Ia04017b0eb9a65ce1303af5b6dc36e730410fd91

show more ...