History log of /openbmc/intel-ipmi-oem/src/ (Results 151 – 175 of 375)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
899bfd1515-Apr-2020 Chalapathi <chalapathix.venkataramashetty@intel.com>

OemCommands: Update biosObjPath to match Settings

Update biosObjPath to /xyz/openbmc_project/software/bios_active.

Tested:
1. Verified the BIOS version in Redfish with this change.
Request:
GET: ht

OemCommands: Update biosObjPath to match Settings

Update biosObjPath to /xyz/openbmc_project/software/bios_active.

Tested:
1. Verified the BIOS version in Redfish with this change.
Request:
GET: https://<BMC_IP>/redfish/v1/UpdateService/FirmwareInventory/
bios_active

Response:
{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/
bios_active",
"@odata.type": "#SoftwareInventory.v1_1_0.SoftwareInventory",
"Description": "Host image",
"Id": "bios_active",
"Members@odata.count": 1,
"Name": "Software Inventory",
"RelatedItem": [
{
"@odata.id": "/redfish/v1/Systems/system/Bios"
}
],
"Status": {
"Health": "OK",
"HealthRollup": "OK",
"State": "Enabled"
},
"Updateable": false,
"Version": "WLYDCRB1.SYS.0015.D33.2002210105"
}

2. Get OEM Device info.
Command: ipmitool raw 0x30 0x27 0x00 0xFF 0x00
Response:
20 57 4c 59 44 43 52 42 31 2e 53 59 53 2e 30 30
31 35 2e 44 33 33 2e 32 30 30 32 32 31 30 31 30
35
ASCII - WLYDCRB1.SYS.0015.D33.2002210105

Signed-off-by: Chalapathi <chalapathix.venkataramashetty@intel.com>
Change-Id: I719f14b6b7679e4386ef449adfb3d4e65b16f30f

show more ...

a4cea1ae18-Mar-2020 Arun P. Mohanan <arun.p.m@linux.intel.com>

Add CoreBiosDone signal support

Add support to monitor CoreBiosDone and filter IPMI commands accordingly.
All IPMI commands will be allowed over system interface channels
until CoreBiosDone or postC

Add CoreBiosDone signal support

Add support to monitor CoreBiosDone and filter IPMI commands accordingly.
All IPMI commands will be allowed over system interface channels
until CoreBiosDone or postCompleted signal is received.

Tested:
1. Verified no IPMI commands from system interface are getting filtered
until CoreBiosDone or postCompleted signal is received.
2. Verified different channel restriction modes are working as
expected after CoreBiosDone.
3. Verified the same by executing IPMI commands(having different channel
privilages) over system interface under different restriction modes.

Signed-off-by: Arun P. Mohanan <arun.p.m@linux.intel.com>
Change-Id: I9449b1e8b475f13af7175fe86b43ae50976a3b6b

show more ...

d2220ccd17-Apr-2020 Agnieszka Szlendak <agnieszka.szlendak@intel.com>

Translating ME Health Sensor Platform Events to Redfish Events

Following code implements parsing logic for all ME Health Sensor Platform
Events. It is built in similar manner to existing implementat

Translating ME Health Sensor Platform Events to Redfish Events

Following code implements parsing logic for all ME Health Sensor Platform
Events. It is built in similar manner to existing implementation of
BIOS SEL events parsing and follows the same principles:
- try to parse event, store id and params as Redfish Event on success,
- if event is unparsable - store raw IPMI frame as generic SEL event.

As there exists many events which would share exactly the same parsing
logic, some higher level function (genericMessageHook) and some helper
functions were introduced. Idea of this is that for events which are
easily parsable (like mapping byte to concrete event) should be handled
by metadata-driven algorithm. For more complex events ability to specify
lower-level parser methods was introduced.

In general flow looks like the following:
1) event is recognized as originating from ME, me::messageHook is called
2) event comes from me::HealthSensor, health_event::messageHook is called
3) based on Platform Event offset byte either fw_status or smbus_failure
event messageHook is called
4a) for smbus_failure : simple function called

.....

4b) for fw_status: map is used, deciding further processing based on
event.eventData2
5) map[event.eventData2] contains : MessageId and instructions on further
processing. It might be:
a) empty - no extra processing,
b) map - maps eventData3 to string value and adds it to MessageParams,
b) function - specialized parsing routines for given eventData2.

Testing:
- injected all possible events with busctl call (faking ME)
- tested on actual platform with manually triggered events by actual ME

Signed-off-by: Agnieszka Szlendak <Agnieszka.Szlendak@intel.com>
Change-Id: Ib13e4ace10b6382ea0800d34241e98a73b6626b3

show more ...

2b664d5a23-Mar-2020 Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>

Add slot ipmb command

Added slot ipmb command which is used to send commands to add-in cards.
BMC will act as a bridge and forwards the data to the add-in card and
returns the response from the add-

Add slot ipmb command

Added slot ipmb command which is used to send commands to add-in cards.
BMC will act as a bridge and forwards the data to the add-in card and
returns the response from the add-in card.

Tested:

ipmitool raw 0x3e 0x51 <address_type> <slot_num> <slave_addr> <net_fun>
<cmd>
00 //success

ipmitool raw 0x3e 0x51 <address_type> <invalid_slot_num> <slave_addr>
<net_fun> <cmd>
0xce //Command response could not be provided

ipmitool raw 0x3e 0x51 <address_type> <slot_num> <invalid_slave_addr>
<net_fun> <cmd>
0xce //Command response could not be provided

Tested the command from the shell using cmdtool via KCS interface and it
works fine.

Signed-off-by: Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>
Change-Id: Ic772e169569ee91328315a02633089d3894e1b0f

show more ...

abd11ca312-Jun-2019 NITIN SHARMA <nitin1x.sharma@intel.com>

oemcommands: move GetLedStatus to new API

Rewrite "GetLedStatus" command to use the newly introduced IPMI
provider API.

Tested:
verified using ipmitool raw commands.
Command: ipmitool raw 0x30 0xB0

oemcommands: move GetLedStatus to new API

Rewrite "GetLedStatus" command to use the newly introduced IPMI
provider API.

Tested:
verified using ipmitool raw commands.
Command: ipmitool raw 0x30 0xB0 //get led status
Response: 10

Signed-off-by: NITIN SHARMA <nitin1x.sharma@intel.com>
Signed-off-by: jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: I7dcdc794f03ed585c51331c3117a7828a3030690

show more ...

eaeb6cb009-Mar-2020 Yong Li <yong.b.li@linux.intel.com>

Change CPLD clear cmos command register is changed to 0x61

New CPLD FW changed this register to 0x61

Tested:
Run the below command in MFG mode,
the system will restart and perform the clear CMOS ac

Change CPLD clear cmos command register is changed to 0x61

New CPLD FW changed this register to 0x61

Tested:
Run the below command in MFG mode,
the system will restart and perform the clear CMOS action:
ipmitoo raw 0x32 0x91

Signed-off-by: Yong Li <yong.b.li@linux.intel.com>
Change-Id: I859804a09f71d50bb4b7066497e195165f9b4f6e

show more ...

edbb408106-Mar-2020 Yong Li <yong.b.li@linux.intel.com>

Enable sensitive ME commands in MFG mode

If the system is in manufacturing mode, do not block these commands.

Tested:
In normal mode, command failed with 0xD4
ipmitool -H $BMCIP -U root -P 0penBmc

Enable sensitive ME commands in MFG mode

If the system is in manufacturing mode, do not block these commands.

Tested:
In normal mode, command failed with 0xD4
ipmitool -H $BMCIP -U root -P 0penBmc -C 17 -I lanplus \
-t 0x2c -b 6 raw 0x2E 0x40 0x57 0x01 0x00 0 x30 0 0
Unable to send RAW command(channel=0x6 netfn=0x2e lun=0x0 cmd=0x40 rsp=0xd4)
Insufficient privilege level

Change to MFG mode, the above command get proper response:
57 01 00

Signed-off-by: Yong Li <yong.b.li@linux.intel.com>
Change-Id: I6b1d1f85a1258b24ba9734891e6a7085a23d6694

show more ...

32825a2317-Jan-2020 AppaRao Puli <apparao.puli@linux.intel.com>

Get ME version using functional association

Get ME version by checking the functional
association endpoints. Firmware versions are
now retrieved using identical methods.

Tested:
Tested Get OEM Devi

Get ME version using functional association

Get ME version by checking the functional
association endpoints. Firmware versions are
now retrieved using identical methods.

Tested:
Tested Get OEM Device info ipmi command and it works.

Change-Id: I6dda7fff52e1018e8cbd30718c5e1ab4ae2d3ed4
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>

show more ...

6c6cec4826-Feb-2020 AppaRao Puli <apparao.puli@linux.intel.com>

Move get bmc device state api to yield calls

Get BMC current state in getDeviceID IPMI command
is using blocking D-Bus calls. Also every GetDeviceID
is making 2 D-Bus calls which is overhead conside

Move get bmc device state api to yield calls

Get BMC current state in getDeviceID IPMI command
is using blocking D-Bus calls. Also every GetDeviceID
is making 2 D-Bus calls which is overhead considering
number of GetDeviceID calls from client.

- Moved the blocking D-Bus calls to yield method
calls.
- Added signal for catching CurrentBMCState change
during run time and update value instead of multiple
D-Bus calls on every IPMI command request.

Tested:
GetDeviceID works fine in both cases(BMC busy and ready).

Change-Id: Ie81192e6b2d7d66d5fe2a3eb705323c6bec79749
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>

show more ...

e99e7ed317-Jan-2020 AppaRao Puli <apparao.puli@linux.intel.com>

Implement generic function to get active versions

Current logic to get the Active BMC firmware
version is not synchronizing with bmcweb code.
To get the active firmware version, we are using
functio

Implement generic function to get active versions

Current logic to get the Active BMC firmware
version is not synchronizing with bmcweb code.
To get the active firmware version, we are using
functional association endpoints. Endpoints will
provide all the functional firmware objects and
we retrive version information depending on
given version purpose(component). This is the same
logic followed in redfish and with change, both
ipmi and redfish pulls version with same logic.

Tested:
- Get device id command works fine.
- Get OEM Device information commands works fine.

Change-Id: I16ac2c52a4fadbffdc8c870cd738683435d56b1f
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>

show more ...

54a502ba06-Feb-2020 Vernon Mauery <vernon.mauery@linux.intel.com>

Remove wildcard handlers

There is no need for wildcard handlers that simply print that they were
called and then return.

Change-Id: I61716951a09a21f003f0211c92bb905c8f6f4619
Signed-off-by: Vernon M

Remove wildcard handlers

There is no need for wildcard handlers that simply print that they were
called and then return.

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

show more ...

9210838e27-Feb-2020 srikanta mondal <srikantax.mondal@intel.com>

Correct completion code for read FRU data command

Returning proper completion code when inventory offset value exceeding
fru cache size

Tested:
Before:
Command: ipmitool raw 0x0a 0x11 0x00 0x00 0x3

Correct completion code for read FRU data command

Returning proper completion code when inventory offset value exceeding
fru cache size

Tested:
Before:
Command: ipmitool raw 0x0a 0x11 0x00 0x00 0x30 0x08 //Read fru data
Response: Unable to send RAW command (channel=0x0 netfn=0xa lun=0x0
cmd=0x11 rsp=0xcc): Invalid data field in request
After:
Command: ipmitool raw 0x0a 0x11 0x00 0x00 0x30 0x08
Response: Unable to send RAW command (channel=0x0 netfn=0xa lun=0x0
cmd=0x11 rsp=0xc8): Request data field length limit exceeded

Signed-off-by: srikanta mondal <srikantax.mondal@intel.com>
Change-Id: If1f106daf3ae23eb5ffc5d15c30ab099986b4793

show more ...

4b1552d811-Feb-2020 jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>

oemcommands: fan control profile correction

Corrected default fan control profile for get fan control configuration

Tested:
Validate using below raw command.
Command: ipmitool raw 0x30 0x8a 0x00
Re

oemcommands: fan control profile correction

Corrected default fan control profile for get fan control configuration

Tested:
Validate using below raw command.
Command: ipmitool raw 0x30 0x8a 0x00
Response: 80 00 04 00 00 00 00

Signed-off-by: jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: I240626160a1fd71c3907fe5db9335b0d19b8248d

show more ...

849c319f12-Feb-2020 arun-pm <arun.p.m@linux.intel.com>

Adding KCS-SMM channel restriction

Added support to filter the SMM commands as per the updated whitelist
conf.

Tested:
When RestrictionMode is Provisioning
Executed a blocked command on SMM and S

Adding KCS-SMM channel restriction

Added support to filter the SMM commands as per the updated whitelist
conf.

Tested:
When RestrictionMode is Provisioning
Executed a blocked command on SMM and SystemInterface(Success).
When RestrictionMode is ProvisionedHostWhitelist
Verified following condition over SMM channel
1) Executed a command whitlisted on SMM channel(Success).
2) Executed a command blocked on SMM channel(Denied with CC D5).
Verified following condition over SystemInterface
3) Executed a command whitlisted on SystemInterface(Success).
4) Executed a command blocked on SystemInterface(Denied with CC D5).
When RestrictionMode is ProvisionedHostDisabled
Executed an allowed command on both SMM and SystemInterface
(Denied with CC D5).

Change-Id: If99fd90ea9faf1d3440d10ecfc385ab3c907c736
Signed-off-by: Arun P. Mohanan <arun.p.m@linux.intel.com>

show more ...

619186db27-Jan-2020 Joshi-Mansi <mansi.joshi@linux.intel.com>

oemcommand: Issue with set fan control config cmd

Issue: Set fan control configuration command (89h) did not have last few
optional bytes i.e. DIMM Group Id (CPU Num) and DIMM presence bit-map
so it

oemcommand: Issue with set fan control config cmd

Issue: Set fan control configuration command (89h) did not have last few
optional bytes i.e. DIMM Group Id (CPU Num) and DIMM presence bit-map
so it was giving error "Request data lenght invalid //0xC7"
while passing these parameters

Fix: Added these bytes as optional and added checks for CPU Presence.

Tested:
ipmitool raw 0x30 0x89 0x07 0xc0 0x00 0x00 0x00 0x00 0x00 //Success

ipmitool raw 0x30 0x89 0x07 0xc0 //Success

ipmitool raw 0x30 0x89 0x07 0xc0 0x01 ////0xCC - CPU_2 is not present
Unable to send RAW command (channel=0x0 netfn=0x30 lun=0x0 cmd=0x8a
rsp=0xcc): Invalid data field in request

Signed-off-by: Joshi-Mansi <mansi.joshi@linux.intel.com>
Change-Id: I0b8d27e4ad5ba2c54a1074054ca1da8587f0295e

show more ...

e319ecf510-Feb-2020 Terry S. Duncan <terry.s.duncan@linux.intel.com>

Allow Get Execution Context to run in early boot

BIOS needs execution context before the DBUS resource is available for
the partition pointer. In this early boot stage, BIOS does not care
about part

Allow Get Execution Context to run in early boot

BIOS needs execution context before the DBUS resource is available for
the partition pointer. In this early boot stage, BIOS does not care
about partition pointer so return success with an undefined partition
pointer when not ready.

Change-Id: Idcf30682aea3de2f5cdfcb4dce2ab41a574b4483
Signed-off-by: Terry S. Duncan <terry.s.duncan@linux.intel.com>

show more ...

0d0cd16e31-Jan-2020 Vernon Mauery <vernon.mauery@linux.intel.com>

Create an OEM Intel IPMI whitelist filter

This is a derivative of the upstream whitelist filter that also tracks
the host state as part of the filtering information.

In addition, the filter underst

Create an OEM Intel IPMI whitelist filter

This is a derivative of the upstream whitelist filter that also tracks
the host state as part of the filtering information.

In addition, the filter understands per-channel filtering, so a command
can be filtered out on a per-channel basis.

Tested: With the upstream filter disabled, and this filter enabled, run
several checks:
1) execute a command prior to host POST completete over kcs (OK)
2) execute a command after host POST complete (denied)
3) execute a command filtered on a lan interface
4) execute a command whitelisted on a lan interface

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

show more ...

963a95b627-Jan-2020 Rashmi RV <rashmi.r.v@linux.intel.com>

Corrected threshold readingmasks for Type01sensors

Issue: The upper and lower threshold reading mask(Byte 16,18)
in SDR Type01 sensors are not set under any conditions.

Fix: Setting the threshold m

Corrected threshold readingmasks for Type01sensors

Issue: The upper and lower threshold reading mask(Byte 16,18)
in SDR Type01 sensors are not set under any conditions.

Fix: Setting the threshold mask based on its respective threshold
conditions.

Tested:
1.Issue Get SDR command for [u,l][c,nc] sensors.
2.Check theresponse for the bits 5,4 of Byte 16 and 18 (lower and upper)
are set correctly for respective sensors.

Signed-off-by: Rashmi RV <rashmi.r.v@linux.intel.com>
Change-Id: I119560b937bf24c0173acb72cb95aa56d3311314

show more ...

b8f2bf9527-Jan-2020 jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>

firmware-update: Fix for firmware update status

Issue: Get firmware update status shows as 95% instead 100%

Fix: Provided fix to show correct status of firmware update status

Tested:
1. Updated BM

firmware-update: Fix for firmware update status

Issue: Get firmware update status shows as 95% instead 100%

Fix: Provided fix to show correct status of firmware update status

Tested:
1. Updated BMC firmware using fwpiaupd.efi utility
>fwpiaupd.efi -ni -u -o -b -pia <Binary file>
2. Get firmware update status
Command: ipmitool raw 0x08 0x2a
Response: 03 64 00

Signed-off-by: jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: I7376c924cc3dc09169d001e358fb0bba69fa6ab7

show more ...

d46cb42b21-Jan-2020 AppaRao Puli <apparao.puli@linux.intel.com>

Fix minor issues in Get OEM Device Info

Minor fixes in get OEM device information command
- As per spec, Byte 2 and Byte 3 are valid only if
Byte 1 is selected as BIOS. So corrected the code

Fix minor issues in Get OEM Device Info

Minor fixes in get OEM device information command
- As per spec, Byte 2 and Byte 3 are valid only if
Byte 1 is selected as BIOS. So corrected the code
to make Byte 2 and Byte 3 as optional and checking
as per spec.
- Corrected the ME object path which is resulting in
command failure.

Tested:
Get OEM device information command works fine for all
BIOS, Management controller and SDR as specified in spec.

Change-Id: If5a5edbaf0464b7253fba2ef9fa0595878c12062
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>

show more ...

e2cddf6830-Jan-2020 AppaRao Puli <apparao.puli@linux.intel.com>

PFR build error fix

PFR build is failing due to unavailability of checkIPMBChannel()
function. This wasn't exposed earlier due to PFR compile flag.
Moved checkIPMBChannel() function to top.

Tested:

PFR build error fix

PFR build is failing due to unavailability of checkIPMBChannel()
function. This wasn't exposed earlier due to PFR compile flag.
Moved checkIPMBChannel() function to top.

Tested:
PFR build successful

Change-Id: I02a353e2b059a6e62b350c5872c23ec489f5696d
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>

show more ...

5b1988b118-Dec-2019 Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>

Blocking firmware update via IPMB

Updated few firmware update commands to return command not available
when they are executed via ipmb

Tested:

Tested the commands using FTF tool(which uses IPMB as

Blocking firmware update via IPMB

Updated few firmware update commands to return command not available
when they are executed via ipmb

Tested:

Tested the commands using FTF tool(which uses IPMB as the medium)
returns proper error code 0xD5(command not available).

Tested the commands from uefi, BMC terminal and remote commands are
working fine.

Firmware update using fwupdapi.efi is working fine.

Signed-off-by: Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>
Change-Id: Ibaaf1f6a82567b1f3e7d6c9681e74b8c544a9c51

show more ...

c59391ff19-Nov-2019 Peter Lundgren <peterlundgren@google.com>

Support the MultiRecord section in FRUs

Add support for FRUs containing a MultiRecord section to
ipmiStorageWriteFruData().

Before this patch, the presence of a MultiRecord section was ignored.
las

Support the MultiRecord section in FRUs

Add support for FRUs containing a MultiRecord section to
ipmiStorageWriteFruData().

Before this patch, the presence of a MultiRecord section was ignored.
lastRecordStart would point to the last section populated before the
MultiRecord section (e.g. the Product section).

Now, if there is a MultiRecord section, walk the MultiRecord headers to
find the last one and set lastRecordStart appropriately.

Tested:
I have a system with an eeprom containing a MultiRecord section with two
records. Writes to that FRU work after this change.
Signed-off-by: Peter Lundgren <peterlundgren@google.com>
Change-Id: Iea269ad386b1cbc7b4876ddeb9cfac3b9e83f541

show more ...

fee5e4c717-Jan-2020 Yong Li <yong.b.li@linux.intel.com>

Add NM discovery SDR support

NM discovery is an Intel OEM SDR,
it is used by external SW to check the NM functionality

Tested:
ipmitool sdr dump sdr.bin
The new added sdr is included at the end of

Add NM discovery SDR support

NM discovery is an Intel OEM SDR,
it is used by external SW to check the NM functionality

Tested:
ipmitool sdr dump sdr.bin
The new added sdr is included at the end of the .bin file:
51 c0 0b 57 01 00 0d 01 2c 60 19 18 1a 1b

Signed-off-by: Yong Li <yong.b.li@linux.intel.com>
Change-Id: I2b7e8059908791dcc6853be5ba2b9e22210eb736

show more ...

36f05ce614-Jan-2020 Joshi-Mansi <mansi.joshi@linux.intel.com>

Fix for get fan control configuration command CC

Issue: Get Fan Control Configuration (8Ah) command returns response
for DIMM Group ID (CPU Number) when CPU is not present.
It should return error re

Fix for get fan control configuration command CC

Issue: Get Fan Control Configuration (8Ah) command returns response
for DIMM Group ID (CPU Number) when CPU is not present.
It should return error response code.

Fix: Added checks for CPUPresent w.r.t. dimmGroupId.

Tested:
ipmitool raw 0x30 0x8a 0 //Success - CPU_1 present

ipmitool raw 0x30 0x8a 1 //0xCC - CPU_2 is not present
Unable to send RAW command (channel=0x0 netfn=0x30 lun=0x0 cmd=0x8a
rsp=0xcc): Invalid data field in request

Signed-off-by: Joshi-Mansi <mansi.joshi@linux.intel.com>
Change-Id: Ic68bbd6d175b0e803e10af3d759590c0b44ac72f

show more ...

12345678910>>...15