e8929699 | 19-Aug-2024 |
Brandon Kim <brandonkim@google.com> |
bios_setting: Add a write handler
Tested: ``` // Test that it writes a new file if it doesn't exist ~# rm /run/oem_bios_setting
// Invalid command (no size / payload) ~# ipmitool raw 0x2e 0x32 0x79
bios_setting: Add a write handler
Tested: ``` // Test that it writes a new file if it doesn't exist ~# rm /run/oem_bios_setting
// Invalid command (no size / payload) ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x19 Unable to send RAW command (channel=0x0 netfn=0x2e lun=0x0 cmd=0x32 rsp=0xc7): Request data length invalid
// Invalid command (size doesn't match) ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x19 0x01 0x30 0x31 Unable to send RAW command (channel=0x0 netfn=0x2e lun=0x0 cmd=0x32 rsp=0xc7): Request data length invalid
// Command success ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x19 0x02 0x30 0x31 79 2b 00 19 02
// Read back ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x18 79 2b 00 18 02 30 31 ~# cat /run/oem_bios_setting 01~#
// Verify overwrite works (truncates the previous bytes) ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x19 0x01 0x33 79 2b 00 19 01 ~# cat /run/oem_bios_setting 3~# ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x18 79 2b 00 18 01 33 ```
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I84db782da9b2f121c0a81a855692b5ca25ffda54
show more ...
|
93a4c0ab | 16-Aug-2024 |
Brandon Kim <brandonkim@google.com> |
bios_setting: Add a read handler
Tested: ``` ~# echo -n "01234567" > /run/oem_bios_setting ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x18 79 2b 00 18 08 30 31 32 33 34 35 36 37 ~# rm /run/oem_bios_s
bios_setting: Add a read handler
Tested: ``` ~# echo -n "01234567" > /run/oem_bios_setting ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x18 79 2b 00 18 08 30 31 32 33 34 35 36 37 ~# rm /run/oem_bios_setting ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x18 Unable to send RAW command (channel=0x0 netfn=0x2e lun=0x0 cmd=0x32 rsp=0xca): Cannot return number of requested data bytes ```
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: Icde2de4799a751634f56a580351bf10254dd7e4f
show more ...
|
8c0094e4 | 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: I8c81e5e5b6bd1ec4bdd52aa9039ef1c4bbef088d Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
11a5bb6b | 17-Jun-2024 |
Manojkiran Eda <manojkiran.eda@gmail.com> |
Fix spelling mistakes using codespell
This commit corrects various spelling mistakes throughout the repository. The corrections were made automatically using `codespell`[1] tool.
[1]: https://githu
Fix spelling mistakes using codespell
This commit corrects various spelling mistakes throughout the repository. The corrections were made automatically using `codespell`[1] tool.
[1]: https://github.com/codespell-project/codespell
Change-Id: Id21d7e92aa899635af034ff1ddeefabedd08660e Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
show more ...
|
56b2d9f3 | 30-May-2024 |
Brandon Kim <brandonkim@google.com> |
handler: Fix getBMInstanceProperty to read spaces
std::getline should be used to avoid terminating the read when there are spaces.
Tested: Before: ~# cat /run/bm-instance/asset-tag testing space ~#
handler: Fix getBMInstanceProperty to read spaces
std::getline should be used to avoid terminating the read when there are spaces.
Tested: Before: ~# cat /run/bm-instance/asset-tag testing space ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x17 0x00 79 2b 00 17 07 74 65 73 74 69 6e 67
After: ~# cat /run/bm-instance/asset-tag testing space ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x17 0x00 79 2b 00 17 0d 74 65 73 74 69 6e 67 20 73 70 61 63 65
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: Ia13880e385150487dfe07c4aabf7b3edc814ccf0
show more ...
|
559cb011 | 03-May-2024 |
Brandon Kim <brandonkim@google.com> |
bm_instance: Create a new handler
This OEM handler will get properties from tmpfs to serve over IPMI.
Tested: ~# cat /run/bm-instance/asset-tag 12345 ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x17 0
bm_instance: Create a new handler
This OEM handler will get properties from tmpfs to serve over IPMI.
Tested: ~# cat /run/bm-instance/asset-tag 12345 ~# ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x17 0x00 79 2b 00 17 05 31 32 33 34 35 ... ... (Verified this works for all 7 sub commands)
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I191b6f4994d91ada49a3332a8e93a3a305561904
show more ...
|
9846023c | 03-Mar-2024 |
Gaurav Gandhi <gauravgandhi@google.com> |
Update accel setting name from power_break to power_brake
Change-Id: I09465b488eac355c1e1ae847fe350a82e7ad4729 Signed-off-by: Gaurav Gandhi <gauravgandhi@google.com> |
8ef49716 | 04-Feb-2024 |
Willy Tu <wltu@google.com> |
Reserve boot-time-monitor cmd on 18-20
The implementation is delayed and still work in progress. It is being used for testing internally and needs to be reserved to make sure it doesn't break later
Reserve boot-time-monitor cmd on 18-20
The implementation is delayed and still work in progress. It is being used for testing internally and needs to be reserved to make sure it doesn't break later on.
Change-Id: I7145fc9299e06b129d5a22381d520bbfad674499 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
d455bfd6 | 30-Jan-2024 |
Gaurav Gandhi <gauravgandhi@google.com> |
Add new oem command to set accel power mode
Signed-off-by: Gaurav Gandhi <gauravgandhi@google.com> Change-Id: Ie0b47477b7ae9e8ae206ac0645571a7a79dbda40 |
1302e83c | 13-Dec-2023 |
Yuxiao Zhang <yuxiaozhang@google.com> |
google-sys-ipmi: Remove gbmc-bare-metal-active target
The target will be a separate recipe so multiple services can depend on it without relying on google-sys-ipmi.
Change-Id: I957784a38b4356cf6dcd
google-sys-ipmi: Remove gbmc-bare-metal-active target
The target will be a separate recipe so multiple services can depend on it without relying on google-sys-ipmi.
Change-Id: I957784a38b4356cf6dcde2920c398df2e76cb81f Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
show more ...
|
f3fe8df3 | 07-Dec-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: adjust nlohmann-json dependency
Simplify the nlohmann-json dependency in meson and align with the usage from other repositories for consistency.
Change-Id: I6dcbd19a055b83fc8a5955cb6fe0bbdc9
meson: adjust nlohmann-json dependency
Simplify the nlohmann-json dependency in meson and align with the usage from other repositories for consistency.
Change-Id: I6dcbd19a055b83fc8a5955cb6fe0bbdc9876ef42 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
40b2a0cc | 31-Oct-2023 |
Willy Tu <wltu@google.com> |
Add wrapper script to setup delay powercycle
This script allow us to have a common way to setup the delay powercycle without going through the ipmi command if needed.
Change-Id: Ida63f066551404b900
Add wrapper script to setup delay powercycle
This script allow us to have a common way to setup the delay powercycle without going through the ipmi command if needed.
Change-Id: Ida63f066551404b900f5e64e3a150f886b7e6b7c Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
c5b55232 | 01-Nov-2023 |
Willy Tu <wltu@google.com> |
fmt: Remove fmtlib dependencies
Remove the remaining usage for the fmtlib.
Tested: working fine with the error messages.
Change-Id: I68dc70428a75706b2fc70e43f8da321d84f052cc Signed-off-by: Willy T
fmt: Remove fmtlib dependencies
Remove the remaining usage for the fmtlib.
Tested: working fine with the error messages.
Change-Id: I68dc70428a75706b2fc70e43f8da321d84f052cc Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
8d618532 | 25-Oct-2023 |
Michael Shen <gpgpgp@google.com> |
all: Use stdplus::print over std::fprintf
Replacing `std::fprintf` with `stdplus::print`. No logical change.
Tested: Buildable. Signed-off-by: Michael Shen <gpgpgp@google.com> Change-Id: I7050885c1
all: Use stdplus::print over std::fprintf
Replacing `std::fprintf` with `stdplus::print`. No logical change.
Tested: Buildable. Signed-off-by: Michael Shen <gpgpgp@google.com> Change-Id: I7050885c13e33244a4128aa519d163fd5b725098
show more ...
|
bc24cd03 | 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: Ie2ceca012e53e864ffaeb105039b37893534135c Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
dde0c029 | 15-Aug-2023 |
George Liu <liuxiwei@inspur.com> |
meson_options.txt: Support for reading options from meson.options
Support has been added for reading options from meson.options instead of meson_options.txt[1]. These are equivalent, but not using t
meson_options.txt: Support for reading options from meson.options
Support has been added for reading options from meson.options instead of meson_options.txt[1]. These are equivalent, but not using the .txt extension for a build file has a few advantages, chief among them many tools and text editors expect a file with the .txt extension to be plain text files, not build scripts.
[1] https://mesonbuild.com/Release-notes-for-1-1-0.html#support-for-reading-options-from-mesonoptions
Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I99dde4e6716fbbf773c742cb36e6ac3a01d383f2
show more ...
|
15d4d21c | 11-Jul-2023 |
Hao Zhou <haoooamazing@google.com> |
File System: Dependency Injection and Mock
1. Add an abstract FileSystemInterface for Dependency Injection 2. Add FileSystemWrapper for real file system operations, which is called in produciton
File System: Dependency Injection and Mock
1. Add an abstract FileSystemInterface for Dependency Injection 2. Add FileSystemWrapper for real file system operations, which is called in produciton 3. Add FileSystemMock for unit test mock only 4. Add bm_mode_transition_unittest.cpp to cover file system based bm mode transition
Tested: 1/14 eth OK 0.22s 2/14 flash OK 0.21s 3/14 machine OK 0.12s 4/14 bmc_mode OK 0.05s 5/14 cable OK 0.27s 6/14 cpld OK 0.25s 7/14 entity OK 0.24s 8/14 google_accel_oob OK 0.20s 9/14 pcie OK 0.11s 10/14 poweroff OK 0.09s 11/14 psu OK 0.08s 12/14 pcie_bifurcation OK 0.07s 13/14 bm_mode_transition OK 0.29s 14/14 handler OK 0.44s
Ok: 14 Expected Fail: 0 Fail: 0 Unexpected Pass: 0 Skipped: 0 Timeout: 0
Change-Id: I8d0d9096fbeee7af1946d7e73f548e4a249d3bee Signed-off-by: Hao Zhou <haoooamazing@google.com>
show more ...
|
99413410 | 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: I449e771a69d27f28e0919
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: I449e771a69d27f28e09194452cfa84d4991b068a Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
a92d0e6b | 29-Jun-2023 |
John Wedig <johnwedig@google.com> |
Add IPMI OEM command LinuxBootDone
Add a new OEM command for LinuxBoot to notify the BMC when it is about to kexec into the OS. This is intended to give the BMC a chance to prepare for an untrusted
Add IPMI OEM command LinuxBootDone
Add a new OEM command for LinuxBoot to notify the BMC when it is about to kexec into the OS. This is intended to give the BMC a chance to prepare for an untrusted OS, e.g. disable any interfaces it doesn't want the OS to have access to.
Tested: Exercised the new OEM command using ipmitool $ ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x11 79 2b 00 11
Change-Id: Ica76d77cdde48cebfbced32d8e7e860b559074e8 Signed-off-by: John Wedig <johnwedig@google.com>
show more ...
|
4baf41c8 | 06-Jul-2023 |
Hao Zhou <haoooamazing@google.com> |
Add flags for bmc modes transitions
1. When /run/bm-drive-cleaning-done.flag is present, it means cleaning is done and we are in BM_MODE. Also, it is acked by renaming flag to bm-drive-cleani
Add flags for bmc modes transitions
1. When /run/bm-drive-cleaning-done.flag is present, it means cleaning is done and we are in BM_MODE. Also, it is acked by renaming flag to bm-drive-cleaning-done-ack.flag 2. if not case 1, when /run/bm-drive-cleaning-done-ack.flag is present, it means the cleaing is done and acked 3. if not case 2, when bm-ready.flag is present, it means we are in BM_CLEANING_MODE. /run/bm-drive-cleaning.flag is created if needed 4. otherwise, we are in NON_BM_MODE
Tested: bm-ready.flag is not present. Respond Non-BM mode:
ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x10 79 2b 00 10 00
bm-ready.flah is present. For next call, respond Cleaning Mode and bm-drive-cleaning.flag is created:
ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x10 79 2b 00 10 02
keep responding Cleaning Mode until bm-drive-cleaning-done.flag is created. So cleaning is done and for next call, respond BM mode and rename bm-drive-cleaning-done.flag to bm-drive-cleaning-done-ack.flag:
ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x10 79 2b 00 10 01
Change-Id: Id8a6049550631c30c68a536313b81a8d800fede0 Signed-off-by: Hao Zhou <haoooamazing@google.com>
show more ...
|
dd040179 | 22-Jun-2023 |
Brandon Kim <brandonkim@google.com> |
bmc_mode: Add #pragma once
This was missed initially
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I9d7de13bab0e18e1335654f174c5d4564771464f |
444b5ea4 | 19-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: I0a1783b101aa4e7d4b80fd5e1fc1b2beb86c5caa
show more ...
|
65371228 | 19-May-2023 |
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
Change-Id: Ie3b9c52f1fe18c89432ee7eb5d8023e028565541 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
1209ccc6 | 19-May-2023 |
Willy Tu <wltu@google.com> |
cleanup: Reformat with clang
Also update required meson version to support `get_variable` and remove deprecated get_pkgconfig_variable.
Change-Id: I1a0d5a9fce077d546cf56078b63c49ee52f1a816 Signed-o
cleanup: Reformat with clang
Also update required meson version to support `get_variable` and remove deprecated get_pkgconfig_variable.
Change-Id: I1a0d5a9fce077d546cf56078b63c49ee52f1a816 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
59445f5e | 29-Mar-2023 |
Brandon Kim <brandonkim@google.com> |
Update the default for "bm-signal-path" meson.option
Move to /run/ and make the file name more unix friendly.
This was poited out in: https://gerrit.openbmc.org/c/openbmc/google-ipmi-sys/+/61987
S
Update the default for "bm-signal-path" meson.option
Move to /run/ and make the file name more unix friendly.
This was poited out in: https://gerrit.openbmc.org/c/openbmc/google-ipmi-sys/+/61987
Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I7642e9ee54fc3671961eb15a16087ec485915cf5
show more ...
|