summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DCMI: Implement Get DCMI capabilities info command.Dhruvaraj Subhashchandran2018-01-313-0/+194
| | | | | | | | | | This commit adds ipmi changes for supporting the get DCMI capabilities command Resolves openbmc/openbmc#2618 Change-Id: I7d0e7c132f4a8d459351e025fa2bfca9fcf1340b Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* sensor: Modify Get Device SDR command implementationTom Joseph2018-01-302-14/+22
| | | | | | | | | | a) Specify the sensor name deduction in the yaml b) Entity ID and entity instance is populated c) Sensor owner is set to BMC address, since all the sensors are present on the BMC. Change-Id: I7b64c48ad1dbd386e12b20af459e40baf0d97cd4 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* sensor: Populate entity id, instance and sensor name callbackTom Joseph2018-01-303-4/+20
| | | | | Change-Id: Ie7bf403ae15d9b1a70216aab0c57362c3d4240e7 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* sensor: Add support for multiple sensor naming patternTom Joseph2018-01-303-0/+71
| | | | | Change-Id: Ibf58d4a4f5a2783a9152f4b5f685e28ef527c5e2 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Increase timeout for host to respond to attentionsAndrew Geissler2018-01-291-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenBMC is dealing with some performance issues right after a reboot. Systemd does almost too good a job at parallelizing all of the services which causes a 6X hit on the processor during the initial boot once mapper is ready. In situations where the BMC is rebooted when the host is up, this performance issue coupled with errors queued up by the host to send down to the BMC, can cause OpenBMC to exceed its current 3 second timeout for attentions. This initial message from OpenBMC to the host is done to check if the host is running. If the message times out then it's assumed the host is not running which causes all sorts of issues for the system. Testing has shown it can take up to 10 seconds for the path to complete. Given the uncertainty of future performance, the unknowns on how many errors the host may have queued up, and the minimal impact a larger timeout has, this commit is increasing the timeout to 30 seconds. Resolves openbmc/openbmc#2832 Change-Id: I0d1baf601b6441a149e786e1f5de607862d86a52 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
* Remove unwarranted call to free()Deepak Kodihalli2018-01-291-1/+0
| | | | | | | | | | | Do not free() the pointer allocated by sd_bus_message_read(), because systemd will free that once the message is unreferenced. The free() in question here was causing an ipmid core dump. Resolves openbmc/openbmc#2846. Change-Id: I118f6947e7292b68744d0034c72572e4dcb99f01 Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
* watchdog: Fix enabled value typeWilliam A. Kennington III2018-01-291-1/+1
| | | | | | | | | | | | | | When deserializing a bool with sd_bus_message_read, it expects the storage of the passed in container to be 4 bytes. A bool is not guaranteed to be this large and will cause sd_bus_message_read to scribble on the stack. Change enabled to int to guarantee enough space to deserialize the result. For reference libsystemd is doing: *(int*) p = !!*(uint8_t*) q; Change-Id: Ic299e303fcb70941757c453a7b4f643337220afb Signed-off-by: William A. Kennington III <wak@google.com>
* Add Get System GUID command to whitelist configurationMarri Devender Rao2018-01-251-0/+1
| | | | | Change-Id: I476a5ac2d645792f5ec8cceca9f094724b2c0422 Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>
* watchdog: Implement error on reset of disabled watchdogWilliam A. Kennington III2018-01-242-1/+31
| | | | | | | | | This enables the host to recover when the BMC resets or the daemon loses state for some reason. A well formed host will resend the SetTimeout command if it encounters this error code. Change-Id: Ib5fd50ac3ad83ef820f0209354aa8f084a563995 Signed-off-by: William A. Kennington III <wak@google.com>
* Add channel-gen.cpp to compilation unitsTom Joseph2018-01-242-8/+11
| | | | | | | | | The commit c01edf283dca792d1eecedd5c03b69b7eebb6f23 in phosphor-host-ipmid had introduced a breaking change. This commit would fix that. Change-Id: Id3aa18bcc3b7f054b8c659916896de146064d8bb Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Add sensor entry for power supply redundancy enabled.Dhruvaraj Subhashchandran2018-01-222-1/+36
| | | | | | | | | | | IPMI to dbus lookup contained only mapping for PS redundancy disabled, adding the mapping for enabled. Changing the PS redundancy sensor type from D8 to CA. Resolves openbmc/openbmc#2810 Change-Id: I2399ce76a168f63f6a4528cff8aa397ef12d5e1e Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* DCMI : Implement Get System GUID commandMarri Devender Rao2018-01-192-0/+75
| | | | | | | | | | | Implemented IPMI Get System GUID command. It reads data from the DBUS object which is in RFC4122(MSB) format and converts to LSB format and returns. Resolves openbmc/openbmc#2620 Change-Id: I95f0aa596695bf1f903b4c2cc1d64df80bdd3de9 Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>
* LANConf: Minor FixesRatan Gupta2018-01-171-12/+9
| | | | | | | | | | | 1) Get the interface mode of the system if it is not given so that we can set the same interface mode as it was before. 2) Removed the unnecessary condition of getting the VLAN. Resolves openbmc/openbmc#2738 Change-Id: I1658fbf78627e7cc1c7e1e5875964ed30c58d6dc Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
* multiple-channel configuration via yamlPatrick Venture2018-01-177-13/+101
| | | | | | | | | Handles converting a yaml file mapping IPMI channel to ethernet device and using this instead of a hard-coded map. Change-Id: Iedfe7cb52a2d0663b9c8a0f6f9d37fe733b63a58 Signed-off-by: Patrick Venture <venture@google.com>
* Get Device ID - JSONDavid Cobbley2018-01-042-59/+93
| | | | | | | | | | | | | | This reads in all the get device ID parameters via a JSON file in the rootfs. Using a file in the rootfs will give much more flexibility to consumers of openbmc. Each ODM can simply bbappend their dev_id.json with their own specific get device ID info in. Now you can compile in the required info at build time, or modify during run time if needed. It also does not require any additional compilers/scripts to generate a yaml file. Change-Id: I44dfda54fa1762f88973ad709bf7a50bf32e492d Signed-off-by: David Cobbley <david.j.cobbley@linux.intel.com>
* Add chassis identify ipmi command.James Feist2017-12-132-2/+118
| | | | | | | | | Add command with support for chassis identify. Resolves openbmc/openbmc#2621 Change-Id: Ie656b71eba68141117838363456c6e075225e3e6 Signed-off-by: James Feist <james.feist@linux.intel.com>
* multiple channel configuration supportPatrick Venture2017-12-127-103/+220
| | | | | | | | | | | | | | Previously, the ipmi daemon only supported eth0 and hard-coded it to channel 1. This allows one to map via a configuration. The channel number provided is checked against a configuration to retrieve the ethernet device identifier, e.g. eth0. Tested: Ran on a quanta-q71l and was able to properly set MAC, IP, Netmask, Gateway IP, and then verified the data was set for the eth1 via `ip addr show eth1`. Change-Id: I92f63188297304e9454fd0d6fe32bc6cf84bb181 Signed-off-by: Patrick Venture <venture@google.com>
* Update .gitignoreTom Joseph2017-12-121-0/+1
| | | | | Change-Id: I062c27173e0279759ca14fb49304e5a54ac35dbe Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* sensorhandler: allow preconfigured unit and scaleEmily Shaffer2017-12-103-22/+46
| | | | | | | | | | | Allow specifying the scale and unit for a sensor in the YAML configuration. This can save clock time by no longer requiring the daemon to reach out to the sensor owner for the information. Change-Id: I5f63286fc32fb9d64ebab7d86d1dbb7ff40591f4 Signed-off-by: Emily Shaffer <emilyshaffer@google.com> Signed-off-by: Patrick Venture <venture@google.com>
* ipmisensor.cpp: Fix msg from "Undetermine" to "Undetermined"Adriana Kobylak2017-12-051-1/+1
| | | | | Change-Id: If647149928f9bafb0e0c2cfa33485b3f46328733 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* IPMI device ID command mismatch with BMC current side issue fix.Dinesh Chinari2017-12-051-32/+66
| | | | | | | | | | Revisited convert_version sub routine. It should now work for also v1.x.y strings, e.g: ibm-v1.99.10-113-g65edf7d-r3-0-g9e4f715. Resolves: openbmc/openbmc#1480 Signed-off-by: Dinesh Chinari <chinari@us.ibm.com> Change-Id: I5acf028a907af8a1a3bbecd6709bcbac45c877e1
* sensor: Modify the service lookup for set sensor commandTom Joseph2017-12-041-6/+4
| | | | | | | | | | | With the current implementation of the generated code for the sensors, the object path corresponding to the sensor is present. But lookup was done again for the object path which was unnecessary. The current change would would only lookup the service implementing the object path and the interface corresponding to the sensor. Change-Id: I185bc49f6387428d62ab0e5cb8326497837aa67f Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Document OpenBMC OEM Extension NumberingPeter Hanson2017-11-301-0/+172
| | | | | | | | Includes table of OpenBMC OEM Extension command codes, and describes message layout of I2C extension. Change-Id: Idafce7959348fca1e072c0bad09b58bf6c6931ab Signed-off-by: Peter Hanson <peterh@google.com>
* Fix the getLan configRatan Gupta2017-11-284-32/+36
| | | | | | | | | | | | | | | We did the filtering during IPAddress parameter to avoid link local address but left it for subnetMask and vlan parameter. With the introduction of zeroconfig IP we have multiIPaddress can exist on the interface. This commit introduces the filtering for subnetmask and vlan parameter also. Resolves openbmc/openbmc#2664 Change-Id: I244bfe8b9d7efbf55fc1b7051489a8a204182906 Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
* transporthandler: lan_set_in_progress to per channelPatrick Venture2017-11-222-23/+22
| | | | | | | | | The IPMI specification indicates that this value is per channel, therefore goes in the channelconfig object. Change-Id: Iab5861651518ac80d797faa9d9f092933cc1886e Signed-off-by: Patrick Venture <venture@google.com>
* transporthandler: minor cleanup unused variablesPatrick Venture2017-11-141-6/+0
| | | | | | | | | Simple cleanup to remove obj, ifc, and nwinterface varibles likely holdovers from before the refactor to using util methods. Change-Id: Icf55cdcbe8cb75a08d1d32df4f23112b142bf55b Signed-off-by: Patrick Venture <venture@google.com>
* watchdog: cleanup style and similar fixesPatrick Venture2017-11-102-25/+40
| | | | | | | Some style cleanup. Change-Id: I4f8ce595294797cc015a55cc6c9477aee7b6938a Signed-off-by: Patrick Venture <venture@google.com>
* Commit a MaintenanceProcedure log entry on a 0xDE SEL recordTom Joseph2017-11-035-2/+214
| | | | | | | | | | | | In the case of a procedure callout, HB sends a eSEL of 0xDF type. It is followed by a Add SEL record with OEM record type 0xDE and byte 11 in the record indicate the procedure associated with the eSEL. Resolves openbmc/openbmc#2368 Change-Id: Ia57f423c9d533cd8968b613d7522b409a9820198 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Fixed the duplicated event string in error messageMarri Devender Rao2017-11-033-15/+6
| | | | | | | | | | The message for the host event was org.open_power.Host.Event.Error.Event, it is corrected to org.open_power.Host.Error.Event. Resolves openbmc/openbmc#1960 Change-Id: I86304b1f2e4bec740e2e9ec58f98ea9df0d752ea Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>
* Spelling fixesGunnar Mills2017-10-3111-12/+12
| | | | | | | | | Spelling errors found using github.com/lucasdemarchi/codespell A tool to fix common misspellings. This tool is licensed under GNU General Public License, version 2. Change-Id: I78e9d126f19fd9fb2e3f2fa9fe8c2404dc505f82 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* apphandler: channel: split out commandsPatrick Venture2017-10-265-415/+490
| | | | | | | | | | | | | | I split out the channel commands into their own subordinate file from the apphandler.cpp. There are three commands in apphandler for the channel information. There are other commands in the transporthandler that correlate. Moving this is step one in a larger task to enable multiple channels. Change-Id: I2e434a1da942325fc420079415edb39622f4e346 Signed-off-by: Patrick Venture <venture@google.com>
* watchdog: split out commandsPatrick Venture2017-10-254-169/+208
| | | | | | | | | | I split out the watchdog command handlers into their own subordinate file from the apphandler. This reduces the size of the contents of the apphandler file, and logically cuts out code into its own files. Change-Id: Idc70acad6c93c12456cc7092786715643c9c1ffb Signed-off-by: Patrick Venture <venture@google.com>
* Add IBM OEM NetFn(0x3A)Tom Joseph2017-10-251-1/+2
| | | | | Change-Id: If6c4b2c031981f0dba70799dc8cb42840def2dd2 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Update Journal Variable Names in utils.cppGunnar Mills2017-10-191-8/+8
| | | | | | | | | Journal entry variable names should be uppercase. https://www.freedesktop.org/software/systemd/man/sd_journal_print.html Also fixed indentation. Change-Id: I02d30971123c2bb526f19e00b534e06fbcd9ee59 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Update Journal Variable NamesGunnar Mills2017-10-193-6/+9
| | | | | | | | | Journal entry variable names should be uppercase. https://www.freedesktop.org/software/systemd/man/sd_journal_print.html Also, fixed indentation. Change-Id: I2c838332ab7811ccc9a2c99f5b1f558c48f25f76 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* storagehandler: Use new phosphor-timemanager interfaceLei YU2017-10-191-89/+84
| | | | | | | | Update SEL-Time handlers to use sdbusplus and new phosphor-timemanager interface. Change-Id: Ib931a6bedc14037fc1a0a7c25698f67272520bb5 Signed-off-by: Lei YU <mine260309@gmail.com>
* storagehandler: sort include filesLei YU2017-10-171-11/+14
| | | | | Change-Id: Iaf49ed787a2e077af27f28d22507456e8efa2b41 Signed-off-by: Lei YU <mine260309@gmail.com>
* Add DCMI Get/Set Management Controller Id StringVladislav Vovchenko2017-10-162-1/+187
| | | | | | | Resolves openbmc/openbmc#1855 Change-Id: I878c7bcb1ea8b46cd3e932b1cbb2290fe612f652 Signed-off-by: Vladislav Vovchenko <vlad.vovchenko93@gmail.com> Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
* Don't set/get zeroconfig address if other IP address is presentNagaraju Goruganti2017-10-114-14/+82
| | | | | | | Resolves openbmc/openbmc#2265 Change-Id: I65b54358f13231c78b3c6488a59b94bc9323484c Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
* IPMI changes to mark non present as non functionalDhruvaraj Subhashchandran2017-10-114-33/+103
| | | | | | | | | When marking a unit as functional, both functional state and presence need to be checked to avoid marking non-present units as functional. Change-Id: If7b710c39f1c2590b82378ebdb7014dc924599ff Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* IPMI changes to skip updating non present coresDhruvaraj Subhashchandran2017-10-114-6/+65
| | | | | | | | | Cores which are not present need not to be updated to inventory. This change is for skipping several updates to inventory based on skipOn value. Change-Id: I29e005a715ccae1df6eeaf35561a20896ecde0ac Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* Revert "Remove legacy reading of PS derating"Dhruvaraj Subhashchandran2017-10-041-0/+1
| | | | | | | This reverts commit 1bf3b749e9217f03fbc55bbb45802df9e715e3b0. Change-Id: Ib364199f4d676c2003450cad4b4d3d6077356fc1 Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* boot policy: Support boot parameter #4 (boot info)Tom Joseph2017-10-042-2/+10
| | | | | | | Resolves openbmc/openbmc#2356 Change-Id: If775a01a97f29a60575c03f26d32bba0315af920 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Handle std::runtime_error exception in get sensor readingTom Joseph2017-10-031-0/+9
| | | | | | | Resolves openbmc/openbmc#2374 Change-Id: I596b5f0662b2506c8af4143ffa6438320d7bf4a2 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* boot policy: Correct the logic of setting the boot policyTom Joseph2017-09-281-53/+34
| | | | | | | Resolves openbmc/openbmc#2355 Change-Id: Ic7b0efb35887c987a1626e5d88f8a9513d22004f Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
* Use static path for inventory managerDhruvaraj Subhashchandran2017-09-261-5/+2
| | | | | | | | | | | During boot after sending the inventory details host is asking for the a sensor value, that request is getting blocked because the ipmid on BMC is busy with processing the inventory data. Adding an optimization in processing inventory, which will reduce the wait. Change-Id: I490c98220e0244fb6c766432aa1ea8cf25ae1502 Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* Remove legacy reading of PS deratingDhruvaraj Subhashchandran2017-09-251-1/+0
| | | | | | | Resolves openbmc/openbmc#2154 Change-Id: Ia5e150951fd077eddb4ee5a11d361eceee404e44 Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
* typofix: s/impelmented/implemented/gPatrick Venture2017-09-211-2/+2
| | | | | | | Just noticed in my systemd journal. Change-Id: I0f958750cd5936079e41e819956d079baec26875 Signed-off-by: Patrick Venture <venture@google.com>
* Move error msg for trying wildcard into debug onlyPatrick Venture2017-09-201-0/+3
| | | | | | | | | | My logs are effectively full of this message, hiding out other useful messages because we run a lot of OEM traffic. Also, until the daemon fails to find the command via wildcard, it's not really an error worth reporting in most cases. Change-Id: Id6674f3e9a2f237de6bd37d6c9f89931a99d0951 Signed-off-by: Patrick Venture <venture@google.com>
* sensor: Pass the dbus property type as a template parameterTom Joseph2017-09-141-64/+7
| | | | | | | | | | | | readingAssertion and reading type of sensors, take the dbus property type as template parameters. Instead of generating code to handle that, the function parameter is updated with the template parameter. Resolves openbmc/openbmc#2220 Change-Id: Ib9e15727ba96e3a53c46f17bffc9ef68dbf73194 Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
OpenPOWER on IntegriCloud