History log of /openbmc/intel-ipmi-oem/ (Results 51 – 75 of 453)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
7acb2d2714-Nov-2022 V-Sanjana <sanjana.v@intel.com>

The slot i2c master read write command is updated

The update is to perform read-write operation on the devices behind MUX
in various components like
RISER, HSBP and PCIe slots present in baseboard.

The slot i2c master read write command is updated

The update is to perform read-write operation on the devices behind MUX
in various components like
RISER, HSBP and PCIe slots present in baseboard.

Tested:
The slot i2c command was tested for reading data from HSBP CPLD
present behind baseboard MUX and found to be successful

Signed-off-by: V-Sanjana <sanjana.v@intel.com>
Change-Id: I25ce882fda50f5946ca2acec0290d1c769ab019a

show more ...

8b7c156e27-Sep-2022 Vernon Mauery <vernon.mauery@linux.intel.com>

Update filter to allowlist instead of whitelist

Remove racist terminology in favor of descriptive terminology.

Tested: builds and runs with no change in behavior.

Change-Id: Ic7ab6f4b316043da67f07

Update filter to allowlist instead of whitelist

Remove racist terminology in favor of descriptive terminology.

Tested: builds and runs with no change in behavior.

Change-Id: Ic7ab6f4b316043da67f079cd92cd6f070ddcf108
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>

show more ...

ff4982a204-Oct-2022 Ed Tanous <edtanous@google.com>

Move the location of sensor object manager

Per phosphor-dbus-interfaces, all sensor implementations should be
implementing an ObjectManager at /xyz/openbmc_project/sensors

This commit updates intel

Move the location of sensor object manager

Per phosphor-dbus-interfaces, all sensor implementations should be
implementing an ObjectManager at /xyz/openbmc_project/sensors

This commit updates intel-ipmi-oem to look from the corrrect location.

Tested:
No good way to test, as I don't have an intel-ipmi-oem platform, but a
similar patch made to phosphor-ipmi-host showed the correct results.

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

show more ...

097497fb07-Oct-2022 Alex Schendel <alex.schendel@intel.com>

Remove ManagedObjectType Dependency

libipmi now has a getManagedObjects() function which obviates the need
to specify a custom type and use a direct dbus yield method call. This
does not change any

Remove ManagedObjectType Dependency

libipmi now has a getManagedObjects() function which obviates the need
to specify a custom type and use a direct dbus yield method call. This
does not change any behavior of the Get or Capture Manufacturing Data
commands. This commit serves to improve readability and remove
unnecessary dependencies.

Tested:
Get Manufacturing Data continues to report MAC Address:
ipmitool raw 0x30 0xA2 0x00
01 a4 bf 01 8c c4 94

Change-Id: I128ef0679932bf247c1e9e1e8bd2e870a24e3d16
Signed-off-by: Alex Schendel <alex.schendel@intel.com>

show more ...

90eb787601-Sep-2022 Alex Schendel <alex.schendel@intel.com>

Fix Get and Set SM Signal Fan PWM Command

The Get SM Signal and Set SM Signal IPMI commands function under the
assumption that there is a 1:1 relationship between the fan Pulse Width
Modulator (PWM)

Fix Get and Set SM Signal Fan PWM Command

The Get SM Signal and Set SM Signal IPMI commands function under the
assumption that there is a 1:1 relationship between the fan Pulse Width
Modulator (PWM), and the fan tachometer. Not all hardware follows this
model. The code changes in this commit updates these IPMI commands to handle
the introduction of HW that uses one PWM output to control two fans.

For systems that have a 1:1 PWM/Tachometer relationship, this code improves
upon the original "signal instance" lookup. The "signal instance" now
specifies a "fan number". Systems may not have a linear relationship between
"fan header numbers" and the PWM that controls the fan on that header. Prior
to this commit the "signal instance" had to be the PWM number. Now the Get/Set
commands associate a linear fan number to the respective PWM.

Systems that use one PWM to control multiple fans, and by extension multiple
tachometers use a secondary lookup to determine the fan to modify/read. The
JSON file describing the fan PWM/tachometer is updated to add a "PWMName"
record. The instance number is combined with the PWMName entry to identify
the correct HW to read/modify. The PWMName entry in the JSON file nomenclature
defines two fans (i.e. "PWMName:" "Pwm_3_4"), which are associated to a PWM,
(i.e. "Pwm": 1).

Tested:
On system with default PWM name:
IPMI command:
ipmitool raw 0x30 0x14 0x0d 6 0x00 # read fan 7 pwm
32
ipmitool raw 0x30 0x15 0x05 6 0x1 0x48 # set fan 7 pwm (72%)
ipmitool raw 0x30 0x14 0x0d 6 0x00 # read fan 7 pwm
48
root@intel-obmc:~# busctl get-property
xyz.openbmc_project.EntityManager
/xyz/openbmc_project/inventory/system/chassis/Fan_7
xyz.openbmc_project.Configuration.AspeedFan.Connector Pwm
t 12
(In this system, Fan 7 is connected to PWM 12)

Dbus tree showing default name:
busctl tree xyz.openbmc_project.FanSensor
`-/xyz/openbmc_project/sensors
|-/xyz/openbmc_project/sensors/fan_pwm
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_1
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_13
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_14
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_15
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_16
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_2
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_3
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_4
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_5
| `-/xyz/openbmc_project/sensors/fan_pwm/Pwm_6

On system with non-default PWM name:
IPMI command:
ipmitool raw 0x30 0x14 0x0d 1 0x00 # read fan 2 pwm
64
ipmitool raw 0x30 0x15 0x05 0 0x1 0x48 # set fan 2 pwm
ipmitool raw 0x30 0x14 0x0d 0 0x00 # read fan 1 pwm
48 # shared with fan 2

Dbus tree showing non-default PWM name:
busctl tree xyz.openbmc_project.FanSensor
`-/xyz/openbmc_project/sensors
|-/xyz/openbmc_project/sensors/fan_pwm
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_11_12
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_1_2
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_3_4
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_5_6
| |-/xyz/openbmc_project/sensors/fan_pwm/Pwm_7_8
| `-/xyz/openbmc_project/sensors/fan_pwm/Pwm_9_10

Change-Id: I9a40256ed892170f8ba88a3a617b5a2e11693c9f
Signed-off-by: Alex Schendel <alex.schendel@intel.com>

show more ...

9d2894d920-Sep-2022 Nan Zhou <nanzhoumails@gmail.com>

treewide: change EM's ObjectManager path

EntityManager moves its ObjectManager in commit [1], this patch is to
change accordingly. Please see [1] for why we made that change.

[1] https://gerrit.ope

treewide: change EM's ObjectManager path

EntityManager moves its ObjectManager in commit [1], this patch is to
change accordingly. Please see [1] for why we made that change.

[1] https://gerrit.openbmc.org/c/openbmc/entity-manager/+/57279

Tested: code compiles. I don't have a system with this repo enabled.
But code inspection can show that only ObjectManager path changed.

Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: I166cc919bf355d5ee3224553129854a28fdf03b7

show more ...

039c349509-Sep-2022 Jason M. Bills <jason.m.bills@intel.com>

Change static flat_map to constexpr array of pairs

This changes a hardcoded static flat_map to a compile-time defined
constexpr array of pairs to reduce binary space.

Tested:
Confirmed that 'ipmito

Change static flat_map to constexpr array of pairs

This changes a hardcoded static flat_map to a compile-time defined
constexpr array of pairs to reduce binary space.

Tested:
Confirmed that 'ipmitool sdr elist' shows the correct units

Change-Id: Id66d8c3f7324c39360ccb083fb3b5f3d154ac215
Signed-off-by: Jason M. Bills <jason.m.bills@intel.com>

show more ...

0748c69d08-Sep-2022 Jason M. Bills <jason.m.bills@intel.com>

Condense std::variants

Where possible, reduce to a single std::variant type to reduce binary
size.

Change-Id: I73b59765109ce1ccd7339f0e214d1ec3929e1ffc
Signed-off-by: Jason M. Bills <jason.m.bills@

Condense std::variants

Where possible, reduce to a single std::variant type to reduce binary
size.

Change-Id: I73b59765109ce1ccd7339f0e214d1ec3929e1ffc
Signed-off-by: Jason M. Bills <jason.m.bills@intel.com>

show more ...

d42a0c4527-Sep-2022 Vernon Mauery <vernon.mauery@linux.intel.com>

remove intel-dbus in favor of phosphor-dbus

The intel-dbus-interfaces has been merged into
phosphor-dbus-interfaces, so we can remove it from the external
dependencies.

Tested: ran openbmc-build-sc

remove intel-dbus in favor of phosphor-dbus

The intel-dbus-interfaces has been merged into
phosphor-dbus-interfaces, so we can remove it from the external
dependencies.

Tested: ran openbmc-build-scripts locally.

Change-Id: I3ca53128bd6aa9b04403335807bf36b28daaf9e0
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>

show more ...

4aee3fc920-Sep-2022 Ed Tanous <edtanous@google.com>

Add flat_map to includes

A recent change made it so that flat_map is not transitively included by
object_server.hpp in sdbusplus. Explicitly add the required enum.

Tested: Code builds.

Signed-off

Add flat_map to includes

A recent change made it so that flat_map is not transitively included by
object_server.hpp in sdbusplus. Explicitly add the required enum.

Tested: Code builds.

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

show more ...

ac0b727801-Sep-2022 Patrick Williams <patrick@stwcx.xyz>

cmake: update to C++20

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

9722151c18-Aug-2022 Paul Fertser <fercerpav@gmail.com>

Specify "8-bit ASCII + Latin 1" SDR encoding

Applications using OpenSolaris libipmi can't handle "Unicode" (type 0)
encoding for the sensor names [0].

This results in issues with VMWare ESXi which

Specify "8-bit ASCII + Latin 1" SDR encoding

Applications using OpenSolaris libipmi can't handle "Unicode" (type 0)
encoding for the sensor names [0].

This results in issues with VMWare ESXi which uses IPMI to fetch sensor
data from the BMC, all the names are shown as "Unspecified 1" (if
default EntityId is used), so status page, SEL entries and the logs
become very confusing.

Fix this by telling it to process all bytes as is by using "8-bit ASCII
+ Latin 1" type.

Tested with VMWare ESXi 7.0 Update 2 and regular ipmitool (using GNU
FreeIPMI), both shows names correctly.

[0] https://github.com/kofemann/opensolaris/blob/master/usr/src/lib/libipmi/common/ipmi_util.c#L258

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Change-Id: I53d74944717b1642eab6bee3c2c8566a1b8808b1

show more ...

fc3bc38102-Jun-2022 Vernon Mauery <vernon.mauery@linux.intel.com>

Check reserved fields in appSlotI2CMasterWriteRead

Reserved field checking was not present, so this adds a check to make
sure that ther reserved fields do not have bits set. Also fixes a typo
for th

Check reserved fields in appSlotI2CMasterWriteRead

Reserved field checking was not present, so this adds a check to make
sure that ther reserved fields do not have bits set. Also fixes a typo
for the reserved field name.

Tested: Run a slot i2c write read command that has a bit set in the
reserved field and see that it gets rejected.

Change-Id: I7f63cc71b97f4864c8dc59738a240630e388120e
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>

show more ...

f1ccb19604-Aug-2022 Patrick Williams <patrick@stwcx.xyz>

MAINTAINERS: remove file

The MAINTAINERS file is deprecated in favor of OWNERS.

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


f944d2e522-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: Ie7375047bd567aa052d3bd35a6dd7008779a05b4

show more ...

bc01d21316-Jun-2022 Mike Jones <michaelx.jones@intel.com>

Check SetEFIBootOptions when Byte 1&2 are 0

Update of: ipmiOemSetEfiBootOptions()
A check is done when both arguments are 0.
This is a invalid or unuseful condition.

Tested
==========
Issue command

Check SetEFIBootOptions when Byte 1&2 are 0

Update of: ipmiOemSetEfiBootOptions()
A check is done when both arguments are 0.
This is a invalid or unuseful condition.

Tested
==========
Issue command "ipmitool raw 0x30 0xEA 0x00 0x00 " expect rtn mess:
Unable to send RAW command
(channel=0x0 netfn=0x30 lun=0x0 cmd=0xea rsp=0xcc):
Invalid data field in request

Signed-off-by: Mike Jones <michaelx.jones@intel.com>
Change-Id: Ia28cb34983baf0c28084227fd1df71e5045406cd

show more ...

0ee33db022-Jul-2022 Patrick Williams <patrick@stwcx.xyz>

OWNERS: switch 'matches' to 'matchers'

The original OWNERS template had a mistake which used 'matches' instead
of the field supported by the Gerrit plugin 'matchers'. Update the
OWNERS file to have

OWNERS: switch 'matches' to 'matchers'

The original OWNERS template had a mistake which used 'matches' instead
of the field supported by the Gerrit plugin 'matchers'. Update the
OWNERS file to have the correct field.

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

show more ...

95f6933604-Jun-2022 Jiaqing Zhao <jiaqing.zhao@intel.com>

bmccontrolservices: Use service name for matching

The object paths of services are changed after service-config-manager
switched using sdbusplus to encode them, but now the service names can
be deco

bmccontrolservices: Use service name for matching

The object paths of services are changed after service-config-manager
switched using sdbusplus to encode them, but now the service names can
be decoded from the object paths. This patch changes to use service
name for matching accordingly.

Also changes unorderded_map bmcServices to array as random access is
not needed here.

Requires service-config-manager change #52557 ("Encode object path with
sdbusplus") being merged first.

Tested:
Verified both Get/Set BMC Services IPMI commands work as before.

Change-Id: I6da7f275c252059b121c323280214012f330340f
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>

show more ...

5277179a30-May-2022 Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>

Conditionally clear watchdog pre-timeout interrupt

"Clear Message Flags" IPMI command is used to clear the Event Message
buffer, Receive Message queue and Watchdog pre-timeout interrupt flag
if that

Conditionally clear watchdog pre-timeout interrupt

"Clear Message Flags" IPMI command is used to clear the Event Message
buffer, Receive Message queue and Watchdog pre-timeout interrupt flag
if that specific BIT is set.

Existing code is setting the "Watchdog Pre-timeout interrupt" flag to
True when user (host/end user) tries to clear other bits like Message
Buffer or Receive Message Queue which is not correct. So correct the
condition to clear "watchdog Pre-timeout interrupt" flag only if BIT 3
is set.

Tested:
Verified using cmdtool utility and clear linux OS.

On Cmdtool-
Case 1: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
other flags
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 08
Command: > cmdtool.efi 20 18 30 2 //Clear Message Flags
Response: 00
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 08 //watchdog "PreTimeoutInterruptOccurFlag" is not
//cleared

Case 2: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
PreTimeoutInterruptOccurFlag
Command: > cmdtool.efi 20 18 30 8 //Clear Message Flags
Response: 00
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 02 //watchdog "PreTimeoutInterruptOccurFlag" is not
//cleared

On Linux OS-
Case 1: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
other flags
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 08
Command: ipmitool raw 0x06 0x30 0x02 // clear message flags
Response: //Success
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 08

Case 2: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
PreTimeoutInterruptOccurFlag
Command: ipmitool raw 0x06 0x30 0x08 // clear message flags
Response: //Success
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 02

Signed-off-by: JitendraKumar Tripathy
<jitendra.kumarx.tripathy@intel.com>
Signed-off-by: Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: I85a742c6d5799fe31b4c0a64b3d4f62256772be6

show more ...

7599bcf901-Jun-2022 Mike Jones <michaelx.jones@intel.com>

Fix return code ipmiGetSetFirmwareUpdateControl

Update of: ipmiGetSetFirmwareUpdateControl() .
When the command 'update complete' is issued without
FirmwareUpdateControl & TransferStart the error me

Fix return code ipmiGetSetFirmwareUpdateControl

Update of: ipmiGetSetFirmwareUpdateControl() .
When the command 'update complete' is issued without
FirmwareUpdateControl & TransferStart the error message
"Unspecified error" is returned. An improved respose should be
"Command not supported in present state" with error code 0xd5.
In the log 'transferFirmwareUpdate not started.' is reported.

Tested
==========
Issue command "ipmitool raw 0x08 0x29 0x02" expect return message:
"Command not supported in present state" with rsp=0xd5

Signed-off-by: Mike Jones <michaelx.jones@intel.com>
Change-Id: I41fd24815d2780016c293ac1e2e38668a6038edc

show more ...

6207207515-Jun-2022 Vernon Mauery <vernon.mauery@linux.intel.com>

fix external dependency for ci build

The external dependency on phosphor-ipmi-host has changed
from autotools to meson, so the cmake blurb to build it
as an external project needs to change too.

Th

fix external dependency for ci build

The external dependency on phosphor-ipmi-host has changed
from autotools to meson, so the cmake blurb to build it
as an external project needs to change too.

This also removes the pinned version of ipmid

Tested: checked out unit-test scripts and built it locally

Change-Id: I82021cf401c7db134c45cd5d700753bc6fde8c55
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>

show more ...

0408e79e07-Jun-2022 Zhikui Ren <zhikui.ren@intel.com>

Detect Write Protect when programming MAC address

When Write Protect is enabled, write to eeprom chips from different
vendors fail differently. For ATMEL chip, write returns success, read
and verify

Detect Write Protect when programming MAC address

When Write Protect is enabled, write to eeprom chips from different
vendors fail differently. For ATMEL chip, write returns success, read
and verify is needed to detect write failure. For STMicroelectronics,
write return error, add read attempt to detect if Write Protect is
enabled.

Tested:
No regression in MAC programing commands.
Fake write error and verified read is tried through debug print.

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

show more ...

939f360715-Jun-2022 Zhikui Ren <zhikui.ren@intel.com>

Fix build issue

Pin host ipmid to pre meson build

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

41a6e9f323-May-2022 Zhikui Ren <zhikui.ren@intel.com>

sensorcommands: handle NaN in threshold interface

dbus-sensor threshold has been changed to always create high and low
interfaces. Threshold value is set to NaN when there is no actual limit.

When

sensorcommands: handle NaN in threshold interface

dbus-sensor threshold has been changed to always create high and low
interfaces. Threshold value is set to NaN when there is no actual limit.

When creating threshold attributes in SDR, verify that sensor threshold
value is not NaN.

When getting min and max from threshold interfaces, use std::fmin and
std::fmax instead of std::min and std::max. If one of the two arguments
is NaN, the value of the other argument is returned. Since sensors are
always created with default min/max values, the other argument is not
going to be NaN.

Tested:
ipmitool sensor list returns without error.
Sensor limit is na when threshold interface value is NaN.

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

show more ...

2daecd6f19-May-2022 Matt Simmering <matthew.simmering@intel.com>

biosConfigCommands: Add check for invalid paramSel

Add additional check in Get Payload IPMI
command for parameter selection. Check
that it's a valid parameter.

Tested: When parameter selection is

biosConfigCommands: Add check for invalid paramSel

Add additional check in Get Payload IPMI
command for parameter selection. Check
that it's a valid parameter.

Tested: When parameter selection is set above max
we're returning the expected error code 0xcc
instead of 0xff.

Change-Id: I77f94a164fb9f05a7d17ad558a9afb91b762b6c8
Signed-off-by: Matt Simmering <matthew.simmering@intel.com>

show more ...

12345678910>>...19