History log of /openbmc/openpower-vpd-parser/meson.build (Results 26 – 50 of 51)
Revision Date Author Comments
# 60b5bd2f 14-Jun-2021 Andrew Jeffery <andrew@aj.id.au>

meson: Add OpenBMC-specific subprojects

phosphor-dbus-interfaces and phosphor-logging depend on the build tools
provided by sdbusplus, so add appropriate configuration to ensure these
are picked up

meson: Add OpenBMC-specific subprojects

phosphor-dbus-interfaces and phosphor-logging depend on the build tools
provided by sdbusplus, so add appropriate configuration to ensure these
are picked up in the dependent subproject builds.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I3b866a928043ab245a195f4403be68aa19601550

show more ...


# 8cc5b15c 03-Jun-2021 PriyangaRamasamy <priyanga24@in.ibm.com>

Vpd-tool defect fix:data not shown for primed objects

Issue:
Some of the primed objects data were not shown by vpd-tool.

For those inventory paths whose inherit is true, the tool checks for
specifi

Vpd-tool defect fix:data not shown for primed objects

Issue:
Some of the primed objects data were not shown by vpd-tool.

For those inventory paths whose inherit is true, the tool checks for
specific VINI properties presence. If any VINI property is not present,
the tool considered dbus object itself is not present.
And the output json was emplaced with null object.

Thus ended up in showing empty data for primed frus
with no common interfaces properties.

Fix:
Emplace null object for the inventory path, only when the
inventory path is not found in dbus.

Other Fixes:

-> Removed checking inherit value, as whether or not inherit
is true/false, we need both common interfaces and location
code(for some frus like powersupply).

So in this fix, if the common interface keywords are
not present, we ignore and get only the extra interfaces
properties.

-> Removed unwanted null object emplacement.
-> Logic which adds fan type interface for fan frus.

Tested on rainier:

1. Frus without common interface properties are displayed with
its extra interface properties.

"/system/chassis/motherboard/dimm29": {
"LocationCode": "U78DB.ND0.WZS000G-P0-C46",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.Dimm"
},
"/system/chassis/motherboard/dimm3": {
"LocationCode": "U78DB.ND0.WZS000G-P0-C17",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.Dimm"
},

2. cable card10 and its connectors are physically present on the
system

"/system/chassis/motherboard/pcie_cable_card10": {
"CC": "6B87",
"DR": "NVME JBOF RISER",
"FN": "03FL205",
"LocationCode": "U78DA.ND0.WZS004K-P0-C10",
"PN": "03FL204",
"SN": "YA31UF07200Z",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.FabricAdapter"
},
"/system/chassis/motherboard/pcie_cable_card10/cxp_bot": {
"LocationCode": "U78DA.ND0.WZS004K-P0-C10-T1",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.Connector"
},
"/system/chassis/motherboard/pcie_cable_card10/cxp_top": {
"LocationCode": "U78DA.ND0.WZS004K-P0-C10-T0",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.Connector"
},

3. cable card3 and its connectors are not present on the system

"/system/chassis/motherboard/pcie_cable_card3": {
"LocationCode": "U78DA.ND0.WZS004K-P0-C3",
"TYPE": "FRU",
"type": "xyz.openbmc_project.Inventory.Item.FabricAdapter"
},
"/system/chassis/motherboard/pcie_cable_card3/cxp_bot": {},
"/system/chassis/motherboard/pcie_cable_card3/cxp_top": {},

4. Fan frus showing up with its Item inteface

"/system/chassis/motherboard/fan1": {
"LocationCode": "U78DB.ND0.WZS000G-A1",
"type": "xyz.openbmc_project.Inventory.Item.Fan"
},

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I38467642944fffec381d070d2a1a7dd3b9882399

show more ...


# 3aec4787 14-Jun-2021 Andrew Jeffery <andrew@aj.id.au>

meson: Add global arguments before invoking the compiler

Add arguments early to avoid introduction of targets before the call.
The addition of subproject definitions in later patches introduces such

meson: Add global arguments before invoking the compiler

Add arguments early to avoid introduction of targets before the call.
The addition of subproject definitions in later patches introduces such
targets.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I7df34040a67923a97fbca948442df8b338a91e1f

show more ...


# c2fe40f8 02-Mar-2021 PriyangaRamasamy <priyanga24@in.ibm.com>

Collect Bad/Broken VPDs in BMC

When there is a vpd failure case due to the
corruption in vpd data, this commit collects the bad vpd
into BMC tmp/bad-vpd directory, so that this bad-vpd directory
get

Collect Bad/Broken VPDs in BMC

When there is a vpd failure case due to the
corruption in vpd data, this commit collects the bad vpd
into BMC tmp/bad-vpd directory, so that this bad-vpd directory
gets into BMC Dump collection.

Tested on simics.
1.Corrupted the data of a vpd file.

dd if=/dev/zero of=/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a500.i2c-bus/i2c-9/9-0050/9-00500/nvmem bs=1 seek=170 count=3

2.No bad-vpd directory before executing the commit changes.

root@rainier:/tmp# ls
dbus_properties.json systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-systemd-resolved.service-8pLWbo
ibm-read-vpd systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-systemd-timesyncd.service-7yowK9
images vpd-manager
overlays vpd-tool
systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-dbus-broker.service-hb47BQ
root@rainier:/tmp#

3. Due to the data corruption, ibm-read-vpd throws exception

root@rainier:/tmp# ./ibm-read-vpd --file /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a500.i2c-bus/i2c-9/9-0050/9-00500/nvmem
std::exception
root@rainier:/tmp#

4. And collects the broken vpd into bad-vpd directory in /tmp

root@rainier:/tmp# ls
bad-vpd systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-dbus-broker.service-hb47BQ
dbus_properties.json systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-systemd-resolved.service-8pLWbo
ibm-read-vpd systemd-private-9dfe8fba43254dfc8b7be9e4278a3ced-systemd-timesyncd.service-7yowK9
images vpd-manager
overlays vpd-tool
root@rainier:/tmp#

5. The bad vpd file is stored in /tmp/bad-vpd directory.

root@rainier:/tmp/bad-vpd# ls -l
-rw-r--r-- 1 root root 16384 Mar 28 19:54 i2c-9-0050
-rw-r--r-- 1 root root 65504 Mar 28 20:01 spi22

(vpd-names of i2c eeproms will be in the pattern "i2c-busNumber-eepromAddress";
for spi eeproms - "spiBusNumber")

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I34fb8c61c79e02ca72d7e99413baebf7e5cb3d53

show more ...


# f05effdb 07-Apr-2021 Alpana Kumari <alpankum@in.ibm.com>

PASS 2 Planar support for vpd parser

The system has two planar passes - Pass1 & Pass2 Planars.
Pass1 Planar a buffer connects all pcie cards, Whereas
Pass2 Planar has mux connection established for

PASS 2 Planar support for vpd parser

The system has two planar passes - Pass1 & Pass2 Planars.
Pass1 Planar a buffer connects all pcie cards, Whereas
Pass2 Planar has mux connection established for pcie card selection.

ibm-read-vpd picks up the right deviceTree and json
(either 2UPass1/2UPass2/4UPass1/4UPass2)
based on the HW and IM kw of the planar.

Test-
tested on Rainier 2U simics

root@rainier:/tmp# ./ibm-read-vpd -f /tmp/systemVpd
imKeyword- 50001001, HW - 0001
Processing with this JSON - /usr/share/vpd/50001001_v1.json

root@rainier:/tmp# ./ibm-read-vpd -f /tmp/systemVpd
imKeyword- 50001001, HW - 0011
Processing with this JSON - /usr/share/vpd/50001001_v2.json

root@rainier:/tmp# ./ibm-read-vpd -f /tmp/systemVpd
imKeyword- 50001000, HW - 0011
Processing with this JSON - /usr/share/vpd/50001000_v2.json

root@rainier:/tmp# ./ibm-read-vpd -f /tmp/systemVpd
imKeyword- 50001000, HW - 0001
Processing with this JSON - /usr/share/vpd/50001000_v1.json
root@rainier:/tmp#

Signed-off-by: Alpana Kumari <alpankum@in.ibm.com>
Change-Id: I36de12d9697039e61e6ad569e1e119f001e782f6

show more ...


# 6c71c9dc 15-Apr-2021 Sunny Srivastava <sunnsr25@in.ibm.com>

Segregate utility methods

This commit segregates utility methods required commonly by both
openpower-read-vpd and ibm-read-vpd from methods only required by
ibm-read-vpd.
All dependency required by

Segregate utility methods

This commit segregates utility methods required commonly by both
openpower-read-vpd and ibm-read-vpd from methods only required by
ibm-read-vpd.
All dependency required by utility methods specific to ibm-read-vpd
is not applicable to utility methods required by openpower-read-vpd.

Hence to avoid un-necessary dependency inclusion, this change is
introduced.

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: I95f2be27dc0c391a45beb1654a99506317aaa52b

show more ...


# c0a534f4 24-Aug-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

VPD Tool: Update Hardware

Vpd tool has --Hardware/-H flag which should be given along
with writeKeyword flags, if the user wants to write directly to "Hardware".

In general the user should give onl

VPD Tool: Update Hardware

Vpd tool has --Hardware/-H flag which should be given along
with writeKeyword flags, if the user wants to write directly to "Hardware".

In general the user should give only the object path in
--path/-P value.

Only if --Hardware/-H flag is given, the user has an
option to give either eeprom path or the object path in
--path/-P value.

Test:
Tested on simics.

./vpd-tool --writeKeyword -H --path < hardware path/object path > -R < record name > -K < keyword > -V < value in hex/ascii >

CASE 1: <updating eeprom path> < update directly on hardware using -H.>
./vpd-tool -u -H -P /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a480.i2c-bus/i2c-8/8-0051/8-00510/nvmem -R VINI -K PN -V 0x717273
updation successful on both dbus and hardware.

CASE 2:
./vpd-tool -u -H -P /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a480.i2c-bus/i2c-8/8-0051/8-00510/nvmem -R DINF -K FL -V 0x717273
updation successful on hardware. <this wont get updated in dbus as the given record-keyword pair is not required to update in dbus(only those record keywords
present in dbus_properties.json are required to be updated in dbus).

CASE 3: <failure case - invalid eeprom path>
root@rainier:/tmp# ./vpd-tool -u -H -P /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a490.i2c-bus/i2c-8/8-0051/8-00510/nvmem -R VINI -K PN -V 0x717273
Invalid object path : /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a490.i2c-bus/i2c-8/8-0051/8-00510/nvmem. Unable to find the corresponding EEPROM path for the given object path : /sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e7$

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I6b893e699fe343c90c3a3fd2b07fd8b9a4711687

show more ...


# f272efc4 03-Mar-2021 PriyangaRamasamy <priyanga24@in.ibm.com>

Unrecognised configure option fix

The keyword "buildtype" is misgiven as "build".
Jenkins treats this error as warning and continues with the default buildtype=debug;
where this error is caught whil

Unrecognised configure option fix

The keyword "buildtype" is misgiven as "build".
Jenkins treats this error as warning and continues with the default buildtype=debug;
where this error is caught while bitbaking and the openpower-vpd-parser compilation fails.

This commit fixes the issue by replacing "build" with "buildtype" keyword.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I44dc63ed18971d59961bc1e1c4f92fef0ea25cf6

show more ...


# f8f9c866 22-Feb-2021 PriyangaRamasamy <priyanga24@in.ibm.com>

Fix build issues due to updated arm-sdk

Due to recent changes made in arm-sdk,
the FORTIFY_SOURCE security flag enables optimization level 2.

The repo has a default debug level of optimization whic

Fix build issues due to updated arm-sdk

Due to recent changes made in arm-sdk,
the FORTIFY_SOURCE security flag enables optimization level 2.

The repo has a default debug level of optimization which conflicts with
FORTIFY_SOURCE flag.

In this commit the default build type is set to debugoptimized and also made sure
to disable the FORTIFY_SOURCE when we need to build without any optimization.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: Ic1a91e58253fed283f67c44989fbc9126e18b7fe

show more ...


# 2f793048 18-Aug-2020 Alpana Kumari <alpankum@in.ibm.com>

Enable pre and post actions

This commit enables the VPD parser to take certain
pre and post collection actions.

-- Set a GPIO in order to enable hardware paths (such as I2C)
-- Bind device drivers

Enable pre and post actions

This commit enables the VPD parser to take certain
pre and post collection actions.

-- Set a GPIO in order to enable hardware paths (such as I2C)
-- Bind device drivers to the I2C device so as to generate a udev
event.
-- Set a GPIO as a post action on failure to collect VPD.

Pre-actions are taken when collecting system VPD.
Post actions can be taken either after a failure
to bind drivers or after failing to collect/parse VPD.

Change-Id: I26754000a72db53f00a5afc4925de27e3f7c3ba8
Signed-off-by: Alpana Kumari <alpankum@in.ibm.com>

show more ...


# 4641bff5 30-Nov-2020 Santosh Puranik <santosh.puranik@in.ibm.com>

Fix u-boot env var name for Rainier 2U

Change the value of the fitconfig u-boot environment
variable to 'conf@aspeed-bmc-ibm-rainier.dtb'.
This is to match the value used by u-boot to switch to the

Fix u-boot env var name for Rainier 2U

Change the value of the fitconfig u-boot environment
variable to 'conf@aspeed-bmc-ibm-rainier.dtb'.
This is to match the value used by u-boot to switch to the right
device tree for Rainier 2U.

This also adds Everest to the list of supported systems.

Signed-off-by: Santosh Puranik <santosh.puranik@in.ibm.com>
Change-Id: Ie52bffb1e50c0fd7d081038732e3c5676a69de03

show more ...


# 9d149345 16-Jul-2020 Priyanga Ramasamy <priyanga24@in.ibm.com>

Fix some warnings

1. Enabled Meson options to treat warnings as errors.
2. Removed unused variable in vpd_tool_impl.cpp.
3. Fix for unused variable warning in vpdecc & vpd manager files.

Signed-off

Fix some warnings

1. Enabled Meson options to treat warnings as errors.
2. Removed unused variable in vpd_tool_impl.cpp.
3. Fix for unused variable warning in vpdecc & vpd manager files.

Signed-off-by: Priyanga Ramasamy <priyanga24@in.ibm.com>
Change-Id: I59fab47fe394b2934d6050d9db78c68b7e471503

show more ...


# 0246a4d7 04-Nov-2020 Santosh Puranik <santosh.puranik@in.ibm.com>

ibm-read-vpd: Switch to the right symlinked JSON

This commit:
* Makes the VPD parser use the symlinked JSON if one is setup.
For example via a system VPD service.
* Makes the vpd-tool and vpd-mana

ibm-read-vpd: Switch to the right symlinked JSON

This commit:
* Makes the VPD parser use the symlinked JSON if one is setup.
For example via a system VPD service.
* Makes the vpd-tool and vpd-manager use the symlinked JSON.

Signed-off-by: Santosh Puranik <santosh.puranik@in.ibm.com>
Change-Id: Id7f845e02917e3a66d1fa9754da71ed0005c0cb8

show more ...


# e12b181b 26-May-2020 SunnySrivastava1984 <sunnsr25@in.ibm.com>

Interface & Factory implementation for VPD Parsers

This commit abstracts the implementation logic of different parser.
A parser factory is implemented to provide instance of required
parser based on

Interface & Factory implementation for VPD Parsers

This commit abstracts the implementation logic of different parser.
A parser factory is implemented to provide instance of required
parser based on the type of vpd file needed to be parsed.

The interface should be derived to implement any further parser logic
related to vpd.

Status: This does not add any new function, so basic testing of
VPD parsing, VPD tool and writes was performed.

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: I3ce1a2d6b7e8d8984fd7800132e78ab8a9a21e56

show more ...


# a00936f8 14-Apr-2020 Alpana Kumari <alpankum@in.ibm.com>

Memory VPD parser

This commit supports Implementation part of Memory vpd parser.
JSON support for DIMMs need to be done, so not tested.

Change-Id: I6bff9c75a335b0267d8f2b9fa4f1905953b24da5
Signed-o

Memory VPD parser

This commit supports Implementation part of Memory vpd parser.
JSON support for DIMMs need to be done, so not tested.

Change-Id: I6bff9c75a335b0267d8f2b9fa4f1905953b24da5
Signed-off-by: Alpana Kumari <alpankum@in.ibm.com>

show more ...


# 945a02d3 06-May-2020 SunnySrivastava1984 <sunnsr25@in.ibm.com>

Code refactoring

Moved all the constants to const.hpp and utility method to
utils.cpp/hpp.
Removed file ibm_vpd_type_check.cpp/hpp and keyword_vpd_types.hpp.

Signed-off-by: SunnySrivastava1984 <sun

Code refactoring

Moved all the constants to const.hpp and utility method to
utils.cpp/hpp.
Removed file ibm_vpd_type_check.cpp/hpp and keyword_vpd_types.hpp.

Signed-off-by: SunnySrivastava1984 <sunnsr25@in.ibm.com>
Change-Id: Ie7b54e6fd03a499fab7c3124e17292c6d525e471

show more ...


# 83a1d5de 30-Apr-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

IBM VPD Parser support for both 2U & 4U system

Based on motherboard IM keyword the type of the system is identified
and the corresponding json is linked at the runtime.

Currently 2U system has supp

IBM VPD Parser support for both 2U & 4U system

Based on motherboard IM keyword the type of the system is identified
and the corresponding json is linked at the runtime.

Currently 2U system has support for single dasd-backplane
whereas 4U system has support for more than one dasd-backplanes.

Tested on simics.

Change-Id: Ia3eb48661fe565f6286c079a8f87736bb136210a
Signed-off-by: Priyanga Ramasamy <priyanga24@in.ibm.com>

show more ...


# b665c554 29-Oct-2020 Santosh Puranik <santosh.puranik@in.ibm.com>

meson: Silence old ABI warnings

This is based on the change:

https://gerrit.openbmc-project.xyz/c/openbmc/openpower-vpd-parser/+/31586
As we are building all code with compiler version >= 7.1, old

meson: Silence old ABI warnings

This is based on the change:

https://gerrit.openbmc-project.xyz/c/openbmc/openpower-vpd-parser/+/31586
As we are building all code with compiler version >= 7.1, old ABI
warnings can be disabled.
See: https://gcc.gnu.org/legacy-ml/gcc/2017-05/msg00073.html

Signed-off-by: Santosh Puranik <santosh.puranik@in.ibm.com>
Change-Id: I3f44d0c5f052f97d74fd2d9b8b44cc9d0ba32a26

show more ...


# 97f8df0e 30-May-2020 SunnySrivastava1984 <sunnsr25@in.ibm.com>

Test cases for VPD-Manager read functionalities

Implementation of test cases for read functionalities provided
by VPD-Manager app.

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: I

Test cases for VPD-Manager read functionalities

Implementation of test cases for read functionalities provided
by VPD-Manager app.

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: I83ad6757934a4c28ae26eb11f0b1f380e2c82aa8

show more ...


# 4330654e 01-Apr-2020 SunnySrivastava1984 <sunnsr25@in.ibm.com>

Expand and update location code property on BUS

This commit expands and updates the required location code
poperty on BUS in case following condition holds true.

a) if FC or SE or both keyword
unde

Expand and update location code property on BUS

This commit expands and updates the required location code
poperty on BUS in case following condition holds true.

a) if FC or SE or both keyword
under VCEN record has been modified by VPD write
application for Motherboard FRU.

OR

b) if TM or SE or both keyword
under VSYS record has been modified by VPD write
application for Motherboard FRU.

Tested on simics.
-make bus call or use VPD tool application to update
keywords as mentioned above in (a) and (b).
-Introspect that motherboard object on bus.
-Check the value of interface "com.ibm.ipzvpd.Location",
property - "LocationCode"

To build the application
meson -Dibm-parser=enabled -Dvpd-manager=Enabled build
ninja -C build

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: Ic964da0f058153bdd43b94679bdfc5596d7f3861

show more ...


# 0407b172 31-Mar-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

VPD Tool : Force Collect On Hardware

This commit adds an additional option called --forceReset
in the vpd-tool.

This option is used to restart the Inventory Manager service
and retrigger the udev e

VPD Tool : Force Collect On Hardware

This commit adds an additional option called --forceReset
in the vpd-tool.

This option is used to restart the Inventory Manager service
and retrigger the udev events which launches the VPD services.

How to use the option?
./vpd-tool --forceReset/-f/-F

This option does not take any arguments.

Tested on simics.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: Icd1ad30389432f731f21cc84999f7a54fcbbec65

show more ...


# cdf943c9 17-Mar-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

Added PowerSupply frus:

The dumpInventory and dumpObject options of VPD tool
now includes PowerSupply frus.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I6078d966780898a20a4c3

Added PowerSupply frus:

The dumpInventory and dumpObject options of VPD tool
now includes PowerSupply frus.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I6078d966780898a20a4c3e7c5cc61c3f4f2e6ddd

show more ...


# a739259f 09-Mar-2020 SunnySrivastava1984 <sunnsr25@in.ibm.com>

Merge of vpd_manager meson script with repo meson

This commit merges meson script of vpd-manager app
into the meson script for openpower-vpd-parser repo.
vpd-manager needs to be build only if we are

Merge of vpd_manager meson script with repo meson

This commit merges meson script of vpd-manager app
into the meson script for openpower-vpd-parser repo.
vpd-manager needs to be build only if we are building
ibm-read-vpd exe.

To enable build of vpd-manager the flag needs to
be enabled.

Test Command:
meson -Dibm-parser=enabled -Dvpd-manager=enabled builddir
ninja -C builddir

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: Ib9c8229e54c37c55654b070adb3df616d105af23

show more ...


# 02d4d4ea 24-Feb-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

VPD tool : Read Keyword option

One of the options the VPD tool provides is
to Read the value of the keyword. This commit has its implementation.

The user should provide a valid object path, valid r

VPD tool : Read Keyword option

One of the options the VPD tool provides is
to Read the value of the keyword. This commit has its implementation.

The user should provide a valid object path, valid record name
and valid keyword inorder to get the value of the keyword.

Test:
Tested on simics.

Output:

root@rainier:/tmp# ./vpd-tool -r -O /system/chassis/motherboard/vdd_vrm1 -R VINI -K FN
{
"/system/chassis/motherboard/vdd_vrm1": {
"FN": "F190827"
}
}

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I244b9fe276feefa27e4c99063a9e9aa01aeb2f12

show more ...


# 1f0b1e6d 20-Feb-2020 PriyangaRamasamy <priyanga24@in.ibm.com>

VPD tool : dumpInventory & dumpObject

VPD tool has four options.

a) Dump Complete Inventory - no additional arguments are needed.
b) Dump Specific Object - by providing the object name.
c) Read the

VPD tool : dumpInventory & dumpObject

VPD tool has four options.

a) Dump Complete Inventory - no additional arguments are needed.
b) Dump Specific Object - by providing the object name.
c) Read the keyword - by providing the object name, record name and keyword to be read.
d) Write/Update the keyword - by providing the object name, record name, keyword and the value to be updated.

{value - in ascii or hex & all the other arguments in string}

"--help" option provides details on how to use the above mentioned options.

This commit has implementation of dump inventory and dump specific object.

Output:

---------Dump Inventory---------
Not displaying the complete output.

root@rainier:/tmp# ./vpd-tool -i
[
{
"/system": {
"LocationCode": "U9105.22A.SIMP10R",
"Model": "9105-22A",
"SerialNumber": "SIMP10R",
"type": "xyz.openbmc_project.Inventory.Item.System"
},
"/system/chassis": {
"LocationCode": "U78DA.ND1.1234567",
"type": "xyz.openbmc_project.Inventory.Item.Chassis"
},
.
.
.
.
and so on..
]

---------Dump Object----------

root@rainier:/tmp# ./vpd-tool -o -O /system/chassis/motherboard/ebmc_card_bmc
[
{
"/system/chassis/motherboard/ebmc_card_bmc": {
"CC": "6B58",
"DR": "EBMC ",
"FN": "F191014",
"LocationCode": "U78DA.ND1.1234567-P0-C5",
"PN": "PN12345",
"SN": "YL6B58010000",
"type": "xyz.openbmc_project.Inventory.Item.Bmc"
}
}
]

Flag to enable VPD tool:
There is no seperate flag for VPD tool.
ibm-parser flag will generate the vpd-tool binary.

Steps to build and generate the executable using meson:
meson -Denabled=ibm-parser build
ninja -C build

Test:
Tested on simics.

Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: I712f7ad4303eefa68f232685b6b0e53646f859f5

show more ...


123