commit | d81c93d5c54d0f8b3b14907baec645f22b7068d4 | [log] [tgz] |
---|---|---|
author | devenrao <devenrao@in.ibm.com> | Wed Mar 20 13:46:16 2024 +0530 |
committer | devenrao <devenrao@in.ibm.com> | Wed Mar 20 14:44:28 2024 +0530 |
tree | de9ba5a578e919643b5c9b0c2801e06499004841 | |
parent | 16f6271238f476a80acc3ca997562eb345d00726 [diff] |
phosphor-logging libekb ekb and pdbg srcrev bump phosphor-logging: srcrev bump cc9adb7985..4fdb31aa91 devenrao (5): PEL: add new error messages for odyssey sbe related failures PEL: Move definitions and variables to the proper scope PEL: Fix the memory leak error when parsing multiple ffdc packets PEL: Modify the sbe ffdc handler to cater for POZ format PEL: Fix the max packets that can be received for Odyssey OCMB libekb: srcrev bump b62ed786..bc2b16f05 Aravind T Nair (1): phal:EKB: Bump till hw091823a.opmst10 SwethaParasa (3): libekb: Add support for Odyssey SBE Dump HWP Add Odyssey Header files to ekb headerlist phal:EKB: Bump till hw013124a.opmst10 aravnair-in (1): fapi2 compilation fixes devenrao (4): cater for ocmb get/put scom to call fom hwp cater for getcfam odyssey ocmb chip support POZ: cater for POZ sbe ffdc handling POZ: fix memory leak when ffdc data allocated is deleted git shortlog 7fd7e4d6..b372d392 Amita Banchhor (1): back port changes needed to get eff_config compile into SBE Andrew Singer (1): Port over poz_scan_compare support from ekb-src Ben Gass (7): Initial push of odyssey registers with example Initial push of odyssey registers with example Update Odyssey register headers. Update Odyssey register header files with latest figdb Initial push of odyssey registers with example Update Odyssey register headers. Update Odyssey register header files with latest figdb Daniel Crowell (1): Add parameters to allow external polling loops Greg Still (5): PM Safe Mode Index: determine the setting via the worst WOF Table CeffOvrg PPB: define #W trace enablement attribute PM XML: define Saddleback rollover error enablement attribute PM XML: define ATTR_DDR5_VDN_UPLIFT_MV for Denali use PM HWP: uplift VDN voltage if DDR5 memory detected Joe McGill (2): snapshot Odyssey POR HWPs Ody HWP updates -- PG, scan Kahn Evans (2): Only addErrorInfo if iv_info has been allocated - will segfault without this Fix to fully qualify fapi2 namespace by types added in commit 162135 Matthew Raybuck (4): Fix max per proc values to reflect P10 values Changes to various SBE FFDC interfaces to support Odyssey chips Add a unique error for cases where HWP errors arent expected by SBE Add MAX_*_PER_OCMB to convertSbeTargInstanceToFapiPos Prasad Bg Ranganath (3): PPB hwp :Power Capping Extension support ODY HWP: ODY PPE STATE support with OCMB target PM HWP: Add error inject code support in avsbus procedure SWATHIPS (2): pibms_reg_dump for ODY! Linking HWP directly into wrapper to remove dependency on setting HWP PATH Sheldon Bailey (1): Calculate user hard min power cap based on memory and proc config Sreekanth Reddy Kadapala (9): Ody_extract_sbe_rc : correct header names for regs Extract sbe rc files import to P10 ekb repo Ody_extract_sbe_rc : correct header names for regs Remove FSI adresses from SCOM scope Updates to resolve redeclaration issues pibmem dump procedure for odyssey Resolve redefinition errors Adding separate make file for ody_extract_sbe_rc ody_extract_sbe_rc: XML file updates Srikantha Meesala (1): master-p10: Enable FFDC with heap allocation with HW and SBE FFDC Packages Sunil Kumar (2): Parsing of POZ FFDC target for platform. Changes required to parse POZ FFDC HWP BLOB Yue Du (1): QME: Fix LPAR mode change window condition also support sbe attribute Zane Shelley (1): workaround for legacy commit-msg file akhis023 (1): Added attr for Secure Boot Mode hostboot (86): Release tag & head commit information updated for hw070523a.opmst10 Release tag & head commit information updated for hw071023a.opmst10 Release tag & head commit information updated for hw071223a.opmst10 Release tag & head commit information updated for hw071423a.opmst10 Release tag & head commit information updated for hw071723a.opmst10 Release tag & head commit information updated for hw071923a.opmst10 Release tag & head commit information updated for hw072423a.opmst10 Release tag & head commit information updated for hw072623a.opmst10 Release tag & head commit information updated for hw073123a.opmst10 Release tag & head commit information updated for hw080223a.opmst10 Release tag & head commit information updated for hw080723a.opmst10 Release tag & head commit information updated for hw080923a.opmst10 Release tag & head commit information updated for hw081423a.opmst10 Release tag & head commit information updated for hw081623a.opmst10 Release tag & head commit information updated for hw081823a.opmst10 Release tag & head commit information updated for hw082123a.opmst10 Release tag & head commit information updated for hw082323a.opmst10 Release tag & head commit information updated for hw082523a.opmst10 Release tag & head commit information updated for hw082823a.opmst10 Release tag & head commit information updated for hw083023a.opmst10 Release tag & head commit information updated for hw090123a.opmst10 Release tag & head commit information updated for hw090723a.opmst10 Release tag & head commit information updated for hw091123a.opmst10 Release tag & head commit information updated for hw091123b.opmst10 Release tag & head commit information updated for hw091423a.opmst10 Release tag & head commit information updated for hw091823a.opmst10 Release tag & head commit information updated for hw092123a.opmst10 Release tag & head commit information updated for hw092223a.opmst10 Release tag & head commit information updated for hw092523a.opmst10 Release tag & head commit information updated for hw092723a.opmst10 Release tag & head commit information updated for hw100223a.opmst10 Release tag & head commit information updated for hw100423a.opmst10 Release tag & head commit information updated for hw100623a.opmst10 Release tag & head commit information updated for hw101123a.opmst10 Release tag & head commit information updated for hw101423a.opmst10 Release tag & head commit information updated for hw101623a.opmst10 Release tag & head commit information updated for hw101823a.opmst10 Release tag & head commit information updated for hw102123a.opmst10 Release tag & head commit information updated for hw102323a.opmst10 Release tag & head commit information updated for hw102523a.opmst10 Release tag & head commit information updated for hw103023a.opmst10 Release tag & head commit information updated for hw110123a.opmst10 Release tag & head commit information updated for hw110823a.opmst10 Release tag & head commit information updated for hw111323a.opmst10 Release tag & head commit information updated for hw111523a.opmst10 Release tag & head commit information updated for hw112023a.opmst10 Release tag & head commit information updated for hw112123a.opmst10 Release tag & head commit information updated for hw112223a.opmst10 Release tag & head commit information updated for hw112723a.opmst10 Release tag & head commit information updated for hw113023a.opmst10 Release tag & head commit information updated for hw120523a.opmst10 Release tag & head commit information updated for hw120623a.opmst10 Release tag & head commit information updated for hw120823a.opmst10 Release tag & head commit information updated for hw121123a.opmst10 Release tag & head commit information updated for hw121323a.opmst10 Release tag & head commit information updated for hw121923a.opmst10 Release tag & head commit information updated for hw122023a.opmst10 Release tag & head commit information updated for hw122223a.opmst10 Release tag & head commit information updated for hw122623a.opmst10 Release tag & head commit information updated for hw010324a.opmst10 Release tag & head commit information updated for hw010524a.opmst10 Release tag & head commit information updated for hw010824a.opmst10 Release tag & head commit information updated for hw011024a.opmst10 Release tag & head commit information updated for hw011224a.opmst10 Release tag & head commit information updated for hw011524a.opmst10 Release tag & head commit information updated for hw011724a.opmst10 Release tag & head commit information updated for hw011924a.opmst10 Release tag & head commit information updated for hw012224a.opmst10 Release tag & head commit information updated for hw012424a.opmst10 Release tag & head commit information updated for hw012924a.opmst10 Release tag & head commit information updated for hw012924b.opmst10 Release tag & head commit information updated for hw013124a.opmst10 Release tag & head commit information updated for hw020724a.opmst10 Release tag & head commit information updated for hw020924a.opmst10 Release tag & head commit information updated for hw021224a.opmst10 Release tag & head commit information updated for hw021424a.opmst10 Release tag & head commit information updated for hw021924a.opmst10 Release tag & head commit information updated for hw022024a.opmst10 Release tag & head commit information updated for hw022324a.opmst10 Release tag & head commit information updated for hw022824a.opmst10 Release tag & head commit information updated for hw030124a.opmst10 Release tag & head commit information updated for hw030524a.opmst10 Release tag & head commit information updated for hw030624a.opmst10 Release tag & head commit information updated for hw031324a.opmst10 Release tag & head commit information updated for hw031324b.opmst10 Release tag & head commit information updated for hw031824a.opmst10 rajerpp1 (1): Fix compile issues in fips environment sandeep (2): Perl script changes for p10 to generate RC based on sbeError tag Added sbeError tag of missed XML file for p10 EKB it shortlog 3a21a79..e81f3f6 Aravind T (15): Merge pull request #69 from Swarnendu-R-C/master Merge pull request #70 from deepakala-k/master Revert "Sort the targets numerically" Merge pull request #71 from open-power/revert-70-master Revert "Adding helper functions for switching of devtree backend in the same process" Merge pull request #73 from open-power/revert-69-master Merge pull request #76 from Swarnendu-R-C/backend_switching Merge pull request #81 from gcpin/master Merge pull request #80 from devenrao/ody Merge pull request #82 from deepakala-k/chipunit_getscom Merge pull request #84 from devenrao/state Merge pull request #86 from devenrao/defect Merge pull request #87 from deepakala-k/ody_perv Merge pull request #89 from deepakala-k/system_model Merge pull request #88 from devenrao/poz Deepa Karthikeyan (1): Add getscom support for odyssey chipunit Gopichand Paturi (1): OCMB target type renamed to "OCMB" Jayanth Othayoth (3): libpdbg: skip thread state updates during stop chipop failure libpdbg: skip thread state updates during start chipop failure libpdbg: skip thread state updates during sreset chipop failure Marri Devender Rao (1): libsbefifo: Add long timeout to SBE dump chip-op Nicholas Piggin (6): sbefifo: correct typo in thread target name gdbserver: Fix attn enable HID change icache flushing sequence gdbserver: use TRAP for step stop reason p9chip: implement SMT state thread state libpdbg: implement fused-core and lpar-per-thread thread status gdbserver: Add a note about the attn_handler service on the BMC Swarnendu Roy Chowdhury (3): Adding helper functions for switching of devtree backend in the same process Adding helper functions for switching of devtree backend Addition of unit test cases for Switching Backend functionality Swarnendu-R-C (1): Correcting formatting issues deepakala-k (3): sort the class targets numerically Use a unique class name for ody perv target Look for Rainier or Everest substring in Model devenrao (8): get and put scom support for odyssey ocmb with sbefifo backend add get/put scom cfam support for ody ocmb with kernel backend cater for odyssey ocmb chipop for dump and ffdc cater for get sbe odyssey state cater for write odyssey sbe state value add separate backend device tree files for rainier and everest modify to use different device tree for rainier and everest allow other applications to use ody ocmb check method Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com> Change-Id: Iba2d4593cc5e0f192f6d6ff535071f4825bb0d78
OpenBMC is a Linux distribution for management controllers used in devices such as servers, top of rack switches or RAID appliances. It uses Yocto, OpenEmbedded, systemd, and D-Bus to allow easy customization for your platform.
See the Yocto documentation for the latest requirements
sudo apt install git python3-distutils gcc g++ make file wget \ gawk diffstat bzip2 cpio chrpath zstd lz4 bzip2
sudo dnf install git python3 gcc g++ gawk which bzip2 chrpath cpio \ hostname file diffutils diffstat lz4 wget zstd rpcgen patch
git clone https://github.com/openbmc/openbmc cd openbmc
Any build requires an environment set up according to your hardware target. There is a special script in the root of this repository that can be used to configure the environment as needed. The script is called setup
and takes the name of your hardware target as an argument.
The script needs to be sourced while in the top directory of the OpenBMC repository clone, and, if run without arguments, will display the list of supported hardware targets, see the following example:
$ . setup <machine> [build_dir] Target machine must be specified. Use one of: bletchley mori s8036 dl360poc mtjade swift e3c246d4i mtmitchell tatlin-archive-x86 ethanolx nicole tiogapass evb-ast2500 olympus-nuvoton transformers evb-ast2600 on5263m5 vegman-n110 evb-npcm750 p10bmc vegman-rx20 f0b palmetto vegman-sx20 fp5280g2 qcom-dc-scm-v1 witherspoon g220a quanta-q71l witherspoon-tacoma gbs romed8hm3 x11spi greatlakes romulus yosemitev2 gsj s2600wf zaius kudo s6q lannister s7106
Once you know the target (e.g. romulus), source the setup
script as follows:
. setup romulus
bitbake obmc-phosphor-image
Additional details can be found in the docs repository.
The OpenBMC community maintains a set of tutorials new users can go through to get up to speed on OpenBMC development out here
Commits submitted by members of the OpenBMC GitHub community are compiled and tested via our Jenkins server. Commits are run through two levels of testing. At the repository level the makefile make check
directive is run. At the system level, the commit is built into a firmware image and run with an arm-softmmu QEMU model against a barrage of CI tests.
Commits submitted by non-members do not automatically proceed through CI testing. After visual inspection of the commit, a CI run can be manually performed by the reviewer.
Automated testing against the QEMU model along with supported systems are performed. The OpenBMC project uses the Robot Framework for all automation. Our complete test repository can be found here.
Support of additional hardware and software packages is always welcome. Please follow the contributing guidelines when making a submission. It is expected that contributions contain test cases.
Issues are managed on GitHub. It is recommended you search through the issues before opening a new one.
First, please do a search on the internet. There's a good chance your question has already been asked.
For general questions, please use the openbmc tag on Stack Overflow. Please review the discussion on Stack Overflow licensing before posting any code.
For technical discussions, please see contact info below for Discord and mailing list information. Please don't file an issue to ask a question. You'll get faster results by using the mailing list or Discord.
This is a common question, particularly regarding boards from popular COTS (commercial off-the-shelf) vendors such as Supermicro and ASRock. You can see the list of supported boards by running . setup
(with no further arguments) in the root of the OpenBMC source tree. Most of the platforms supported by OpenBMC are specialized servers operated by companies running large datacenters, but some more generic COTS servers are supported to varying degrees.
If your motherboard is not listed in the output of . setup
it is not currently supported. Porting OpenBMC to a new platform is a non-trivial undertaking, ideally done with the assistance of schematics and other documentation from the manufacturer (it is not completely infeasible to take on a porting effort without documentation via reverse engineering, but it is considerably more difficult, and probably involves a greater risk of hardware damage).
However, even if your motherboard is among those listed in the output of . setup
, there are two significant caveats to bear in mind. First, not all ports are equally mature -- some platforms are better supported than others, and functionality on some "supported" boards may be fairly limited. Second, support for a motherboard is not the same as support for a complete system -- in particular, fan control is critically dependent on not just the motherboard but also the fans connected to it and the chassis that the board and fans are housed in, both of which can vary dramatically between systems using the same board model. So while you may be able to compile and install an OpenBMC build on your system and get some basic functionality, rough edges (such as your cooling fans running continuously at full throttle) are likely.
Dive deeper into OpenBMC by opening the docs repository.
The Technical Steering Committee (TSC) guides the project. Members are: