#
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 ...
|
#
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
|
#
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 ...
|
#
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 ...
|
#
5e70dc8c |
| 15-Sep-2022 |
Nikhil Namjoshi <nikhilnamjoshi@google.com> |
Add ipmi OEM handler to get the BMC mode
The response can indicate one of the BMC mode below 0 -> Non Bare Metal Mode 1 -> Bare Metal Mode 2 -> Bare Metal Cleaning Mode
The Bare Metal Cleaning Mode
Add ipmi OEM handler to get the BMC mode
The response can indicate one of the BMC mode below 0 -> Non Bare Metal Mode 1 -> Bare Metal Mode 2 -> Bare Metal Cleaning Mode
The Bare Metal Cleaning Mode is not yet supported
Tested:
Response in BM Mode
ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x10 79 2b 00 14 01
Response in Non-BM Mode
ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x10 79 2b 00 14 00
Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com> Change-Id: I34474fd04f9aed35bd71725805ed52a5df8ab8c9
show more ...
|
#
7e71a43d |
| 07-Jul-2022 |
Willy Tu <wltu@google.com> |
fix typo: Prase -> Parse
Change-Id: I504db56f3e584a51350d63f94ca5487b73e05a98 Signed-off-by: Willy Tu <wltu@google.com>
|
#
6c71b0f9 |
| 10-Oct-2021 |
Willy Tu <wltu@google.com> |
pcie_bifurcation: Fetch bifurcation at a PCIe slot with hardcoded values
This will read a json config and return the bifurcation based on that. It will read the configure file in a persistent file t
pcie_bifurcation: Fetch bifurcation at a PCIe slot with hardcoded values
This will read a json config and return the bifurcation based on that. It will read the configure file in a persistent file to see if it is valid machine config and return the bifurcation information accordingly.
For example, If it is valid config, it will return 8x8 for PE1,3,4,6.
Tested: Unit tests passed.
Physical Tests.
PE0 -> no bifurcation PE1 -> x8x8
``` $ ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x0f 0 79 2b 00 0b 00
$ ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x0f 1 79 2b 00 0b 02 08 08 ```
Change-Id: I44aefbfb26372f8bc0069343c8a6d07d3cf6f42d Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
#
4f0d1de6 |
| 20-Sep-2021 |
Steve Foreman <foremans@google.com> |
Add IPMI interface for CustomAccel service
Change-Id: I28a8976e382b457233ac521e9ab71f75abe029d1 Signed-off-by: Steve Foreman <foremans@google.com>
|
#
ff3cd8e9 |
| 15-Sep-2021 |
Willy Tu <wltu@google.com> |
google-ipmi-sys: Refactor to use new version of OEM IPMI Handler
Using the new version of ipmi handler provide a higher level wrapper over the same functionalities. It helps us parse the input and o
google-ipmi-sys: Refactor to use new version of OEM IPMI Handler
Using the new version of ipmi handler provide a higher level wrapper over the same functionalities. It helps us parse the input and output to have more control of the input/output we see.
The input and output will be `std::uint8_t, std::optional<std::vector<uint8_t>>`.
This represents `subcommand` and any input data.
Changes to note, - all subcommand in the request/response struct are removed. It will be managed by the wrapper directly. - Unit tests checking for input with only the subcommand are removed. - Move all reply struct to header files to be accessible in unit test.
Tested: All IPMI OEM command still works the same as before this change.
Change-Id: I4230ab84a497a867248fe82224e32cc69b314b64 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
#
a2056e9c |
| 10-Oct-2021 |
Willy Tu <wltu@google.com> |
Add Google Copyright 2021
Change-Id: I26020265613218d0c8df85b83772856bfc555e86 Signed-off-by: Willy Tu <wltu@google.com>
|
#
b69209b4 |
| 13-Jul-2021 |
William A. Kennington III <wak@google.com> |
eth: Support looking up alternate interace channels
This makes it possible to use the GetEthDevice command to look up interfaces other than the default NCSI interface.
Change-Id: I3a5563743a28b39ad
eth: Support looking up alternate interace channels
This makes it possible to use the GetEthDevice command to look up interfaces other than the default NCSI interface.
Change-Id: I3a5563743a28b39adc753d8957f68f0bc330cf3a Signed-off-by: William A. Kennington III <wak@google.com>
show more ...
|
#
8cfa4c44 |
| 16-Jun-2021 |
linyuny <linyuny@google.com> |
Add new google ipmi sys command: SysHostPowerOff
New google ipmi sys command to let the BMC knows host shutdown, allow host to gracefully shutdown and disable the watchdog with given time delay.
Si
Add new google ipmi sys command: SysHostPowerOff
New google ipmi sys command to let the BMC knows host shutdown, allow host to gracefully shutdown and disable the watchdog with given time delay.
Signed-off-by: Yunyun Lin <linyuny@google.com> Change-Id: I02171c9cfed57ae5d10d66b515e4ab7ee8856466
show more ...
|
#
3b1b427c |
| 02-Mar-2021 |
Willy Tu <wltu@google.com> |
Add OEM command to request flash size
The BMC flash is `/dev/mtd0` and the size can found in `/sys/class/mtd/mtd0/size`. This OEM command will request that information with MTDINFO.
Tested: Success
Add OEM command to request flash size
The BMC flash is `/dev/mtd0` and the size can found in `/sys/class/mtd/mtd0/size`. This OEM command will request that information with MTDINFO.
Tested: Successfully requested the flash size information with ipmitool.
``` cat /sys/class/mtd/mtd0/size 67108864 ``` 67108864 / 1024 / 1024 = 64MB flash
``` ipmitool raw 0x2e 0x32 0x79 0x2b 0x00 0x09 79 2b 00 09 00 00 00 04 ``` Output in little endian. 0x04000000 -> 67108864
Change-Id: Iec1b33503d1166a42ceef4b8491e5c19c3a077fe Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
#
ac4a16f7 |
| 02-Feb-2021 |
Shounak Mitra <shounak@google.com> |
Add sys command for powercycle on host shutdown.
The new command will trigger a power cycle the next time the host shuts down. This can exist in parallel with the existing mechanism to trigger a pow
Add sys command for powercycle on host shutdown.
The new command will trigger a power cycle the next time the host shuts down. This can exist in parallel with the existing mechanism to trigger a power cycle after a specified time interval.
The implementation of host state detection and power cycling is platfrom specific; the new command will just add a temporary file that marks the system ready to powercycle on the next shutdown. Usually, a systemd unit would be enabled by the presence of this file to handle the power cycling process.
Signed-off-by: Shounak Mitra <shounak@google.com> Change-Id: I0cc40307748fb996be3f6062d8cba1a4b5049683
show more ...
|
#
29f35bce |
| 04-Nov-2020 |
William A. Kennington III <wak@google.com> |
Add suppport for retrieving machine name
This adds support for reading /etc/os-release, parsing out OPENBMC_TARGET_MACHINE and returning this to the caller.
Change-Id: If2a419b9a77597686f5137efce97
Add suppport for retrieving machine name
This adds support for reading /etc/os-release, parsing out OPENBMC_TARGET_MACHINE and returning this to the caller.
Change-Id: If2a419b9a77597686f5137efce97b1150142f181 Signed-off-by: William A. Kennington III <wak@google.com>
show more ...
|
#
a3f9c2d3 |
| 29-May-2020 |
Patrick Venture <venture@google.com> |
move handler specific method to implementation
Move readNameFromConfig from interface header to implementation header.
Signed-off-by: Patrick Venture <venture@google.com> Change-Id: I97080a691fdcda
move handler specific method to implementation
Move readNameFromConfig from interface header to implementation header.
Signed-off-by: Patrick Venture <venture@google.com> Change-Id: I97080a691fdcdac25ab29d978054f6e47b18f1c3
show more ...
|
#
c87de558 |
| 20-May-2020 |
Patrick Venture <venture@google.com> |
split out handler implementation from interface
Split out the handler object definition from the interface and drop the default parameters.
Signed-off-by: Patrick Venture <venture@google.com> Chang
split out handler implementation from interface
Split out the handler object definition from the interface and drop the default parameters.
Signed-off-by: Patrick Venture <venture@google.com> Change-Id: Ie8c9dbf7881bbe6b5af3596a60430e3b3d573762
show more ...
|
#
bd4041e4 |
| 18-May-2020 |
William A. Kennington III <wak@google.com> |
handler: Add more entity IDs
Change-Id: I77b8a78deda33d9f15b6c69a1f6950f1dacc5170 Signed-off-by: William A. Kennington III <wak@google.com>
|
#
cc53c847 |
| 30-Sep-2019 |
Peter Lundgren <peterlundgren@google.com> |
Add more entity ids
The entity ids are defined in the IPMI spec Section 43.14 Table 43-, Entity ID Codes.
Tested: GetEntityName [1] works with these new ids when combined with a json file that uses
Add more entity ids
The entity ids are defined in the IPMI spec Section 43.14 Table 43-, Entity ID Codes.
Tested: GetEntityName [1] works with these new ids when combined with a json file that uses them. For example:
{ "system_board": [ {"instance": 1, "name": "foo"} ], "power_system_board": [ {"instance": 1, "name": "bar"} ], "system_internal_expansion_board": [ {"instance": 1, "name": "baz"} ], "fan": [ {"instance": 1, "name": "qux"} ] }
[1]: https://github.com/openbmc/google-ipmi-sys#getentityname---subcommand-0x06
Signed-off-by: Peter Lundgren <peterlundgren@google.com> Change-Id: I8f546aa23d9da8a3ddf282b0c2de89f9c17edf8c
show more ...
|
#
49f23ad9 |
| 16-Mar-2019 |
Patrick Venture <venture@google.com> |
add handler logic to handle i2c pcie commands
Add handler logic to manage the i2c pcie commands and their corresponding data structure.
Tested: Only ran unit-tests (added new ones). Change-Id: Ibd6
add handler logic to handle i2c pcie commands
Add handler logic to manage the i2c pcie commands and their corresponding data structure.
Tested: Only ran unit-tests (added new ones). Change-Id: Ibd65d6745202dbf6bd67cd2cb480914ca6ae4ed1 Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|
#
ab650004 |
| 16-Mar-2019 |
Patrick Venture <venture@google.com> |
entityName: move pieces into handler object
Move different items used by the handler into the handler and enable unit-testing by parameterizing different aspects of the code.
Tested: Only ran unit-
entityName: move pieces into handler object
Move different items used by the handler into the handler and enable unit-testing by parameterizing different aspects of the code.
Tested: Only ran unit-tests (added new ones). Change-Id: Ia3b4b5792c0ac1ae5bc6513eadfc9ee35f7a369f Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|
#
07f85150 |
| 15-Mar-2019 |
Patrick Venture <venture@google.com> |
add handler logic to handle SysEntityName
Add handler logic to handler for SysEntityName such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new
add handler logic to handle SysEntityName
Add handler logic to handler for SysEntityName such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new ones). Change-Id: I6d672a80f85843ff98c2c7e5daf4689932ff96f9 Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|
#
aa374120 |
| 15-Mar-2019 |
Patrick Venture <venture@google.com> |
add handler logic to handle SysPsuHardReset
Add handler logic to handler for SysPsuHardReset such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added
add handler logic to handle SysPsuHardReset
Add handler logic to handler for SysPsuHardReset such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new ones). Change-Id: Id5dae85cbc54db7dee3cb5e62ed80c77ff3d5719 Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|
#
bb90d4fd |
| 15-Mar-2019 |
Patrick Venture <venture@google.com> |
add handler logic to handle SysCpldVersion
Add handler logic to handler for SysCpldVersion such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added n
add handler logic to handle SysCpldVersion
Add handler logic to handler for SysCpldVersion such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new ones). Change-Id: I09d95d8be8fbe75648b3332af898336b00074c2f Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|
#
d2037c6a |
| 15-Mar-2019 |
Patrick Venture <venture@google.com> |
add handler logic to handle SysCableCheck
Add handler logic to handler for SysCableCheck such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new
add handler logic to handle SysCableCheck
Add handler logic to handler for SysCableCheck such that it splits the true IPMI processing from the business logic.
Tested: Only ran unit-tests (added new ones). Change-Id: Ieec35cc8839dcd3cfb864b68ffbd1a45d1326fee Signed-off-by: Patrick Venture <venture@google.com>
show more ...
|