Coder Social home page Coder Social logo

facebook / openbmc Goto Github PK

View Code? Open in Web Editor NEW
615.0 120.0 278.0 52 MB

OpenBMC is an open software framework to build a complete Linux image for a Board Management Controller (BMC).

Shell 7.62% BitBake 4.85% Makefile 0.47% C 61.08% C++ 8.08% Python 15.47% CMake 0.08% JavaScript 0.01% Perl 0.01% Starlark 0.01% NASL 0.02% Meson 0.39% Go 1.91% SourcePawn 0.01% Assembly 0.01% HTML 0.01% Rust 0.01% Jinja 0.01%

openbmc's Introduction

OpenBMC

OpenBMC is an open software framework to build a complete Linux image for a Board Management Controller (BMC).

OpenBMC uses the Yocto Project as the underlying building and distro generation framework.

Board Description
Wedge A 40G OS-agnostic TOR switch
Yosemite An open source modular chassis for high-powered microservers
Lightning A flexible NVMe JBOF
Wedge100 A 32x100G TOR switch
Backpack LC/FC Linecard and fabric card in a 128x100G modular open switch
Backpack CMM Chassis management module in a 128x100G modular open switch
Tioga Pass A dual-socket compute platform
YosemiteV2 A refresh of Yosemite
Bryce Canyon Disk Storage platform
Grand Canyon Disk Storage platform

Contents

This repository includes 3 set of layers:

  • OpenBMC Common Layer - Common packages and recipes can be used in different types of BMC.
  • BMC System-on-Chip (SoC) Layer - SoC specific drivers and tools. This layer includes the bootloader (u-boot) and the Linux kernel. Both the bootloader and Linux kernel shall include the hardware drivers specific for the SoC.
  • Board Specific Layer - Board specific drivers, configurations, and tools. This layer defines how to configure the image. It also defines what packages to be installed for an OpenBMC image for this board. Any board specific initialization and tools are also included in this layer.

File structure

The Yocto naming pattern is used in this repository. A "meta-layer" is used to name a layer or a category of layers. And recipe-abc is used to name a recipe. The project will exist as a meta layer itself! Within the Yocto Project's distribution call this project meta-openbmc.

The recipes for OpenBMC common layer are found in common.

The BMC SoC layer and board specific layer are grouped together based on the vendor/manufacturer name. For example, all Facebook boards specific code should be in meta-facebook. Likewise, meta-aspeed includes source code for Aspeed SoCs.

How to build

Note: In the instruction set below, references to for some of the steps is an example only and need to be replaced with the respective platform when setting up for a different platform.

  1. Set up the build environment based on the Yocto Project's Quick Start Guide.

  2. Clone the OpenBMC repository and other open source repositories:

$ git clone -b helium https://github.com/facebook/openbmc.git
$ cd openbmc
$ ./sync_yocto.sh
  1. Initialize a build directory for the platform to build. In the openbmc directory:
$ source openbmc-init-build-env wedge

Choose between wedge, wedge100, yosemite, or any of the other platforms listed in the meta-facebook directory. After this step, you will be dropped into a build directory, openbmc/build.

  1. Start the build within the build directory: In general to build for the platform:
$ bitbake <platform>-image

The build process automatically fetches all necessary packages and builds the complete image. The final build results are in openbmc/build/tmp/deploy/images/<platform>. The root password will be 0penBmc, you may change this in the local configuration.

Build Artifacts

  • u-boot.bin - This is the u-boot image for the board.
  • uImage - This the Linux kernel for the board.
  • -image-.cpio.lzma.u-boot - This is the rootfs for the board
  • flash- - This is the complete flash image including u-boot, kernel, and the rootfs.

Kernel & U-Boot Development

By default, OpenBMC build process fetches and build Linux kernel and U-boot directly from GitHub repository.

  • To make local kernel changes and build with the modified kernel:

In the build directory, run

$ devtool modify linux-aspeed

or

$ devtool modify u-boot

This will create local Linux package under /workspace/sources/linux-aspeed for development

  • To go back to default recipes, run
$ devtool reset linux-aspeed

FAQ

1- BMC will take care of the controlling the system / fan based on the sensor/device status (I assume it may even shutdown in case of multiple failures or high temperature). How can we debug such issues? Is there any event/critical logs maintained in the the BMC? Can we have list of files which we can be looked into in case of such issues?

Answer: To debug those issues, you will have to refer to the logs. A: For Rest api related issues, please look at the rest logs under /tmp/ (example: /tmp/rest.log) B: For FSCD related issues, please look at the fscd logs for /var/log/ (example: /var/log/fscd.log) C: For mTerm log (data from the X86 CPU side), please look at /var/log/mTerm.log (it's usually /var/log/mTerm_wedge.log on most platform) D: Some persistent log also go to /mnt/data/ partition E: For everything else, look at /var/log/messages

  1. How do we configure the BMC sensor thresholds for fan / temp / others ? Do we have any command which can be used from the OpenBmc shell?

A- For fan RPM, you can run set_fan_speed.sh to change it (use get_fan_speed.sh to read the value back) from the OpenBMC shell. Some platforms, especially storage/compute ones, use fan-util. Those scripts are under /usr/local/bin on the BMC. Please keep in mind that fscd process will change the fan speed RPM based so your changed values won't stay for long unless you turn off the watchdog and kill fscd. if you want to change the temperature threshold, you will have to modify the codes and build a new BMC image.

How can I contribute

If you have an application that can be used by different BMCs, you can contribute your application to the OpenBMC common layer.

If you are a BMC SoC vendor, you can contribute your SoC specific drivers to the BMC SoC layer.

If you are a board vendor, you can contribute your board specific configurations and tools to the Board specific layer. If the board uses a new BMC SoC that is not part of the BMC SoC layer, the SoC specific driver contribution to the BMC SoC layer is also required.

openbmc's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openbmc's Issues

Install instructions do not work.

As per instructions in README.md:

$ git clone [email protected]:facebook/openbmc.git meta-openbmc

Expected:
A git clone...

Actual:

Cloning into 'meta-openbmc'...
Warning: Permanently added the RSA host key for IP address '192.30.252.131' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

ftgmac error - NO_RXBUF and RPKT_LOST

Hi,

I get the attached error when i try to do an SCP of a file via ethernet interface to OpenBMC running in AST2520 from an external server. So far, i have faced this issue whenever i try to do a SCP.
ErrorLog.txt

Can you kindly confirm which version of OpenBMC addresses this ftgmac issue.

Kindly note that I get the error in system that is Linux bmc 4.1.15 armv6l GNU/Linux . The file /etc/os-release does not seem to exist in the system. However, the /etc/issue seems to convey as 'OpenBMC Release cmm-v11' ...

Can you kindly provide me some pointers on what should be taken care and steps to overcome this issue.

Thanks in advance,
Karthik Balaguru

Identify list of Linux + Uboot drivers for upstreaming

There are several patches to Linux and uboot, inline with the recipes, which should be upstreamed. We should first identify a list of drivers and then begin on upstreaming / staging each when it feels sane and appropriate.

Build fail in obmc-pal

try to use config TEMPLATECONF=meta-openbmc/meta-facebook/meta-fbtp/conf to build image.
I meet the build error

[ 50%] Building C object CMakeFiles/obmc-pal.dir/obmc-pal.c.o
| /home/ukao/openbmc/poky/build/tmp/sysroots/x86_64-linux/usr/bin/arm-fb-linux-gnueabi/arm-fb-linux-gnueabi-gcc -march=armv6 --sysroot=/home/ukao/openbmc/poky/build/tmp/sysroots/fbtp -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/ukao/openbmc/poky/build/tmp/work/armv6-fb-linux-gnueabi/obmc-pal/0.1-r1=/usr/src/debug/obmc-pal/0.1-r1 -fdebug-prefix-map=/home/ukao/openbmc/poky/build/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/home/ukao/openbmc/poky/build/tmp/sysroots/fbtp= -o CMakeFiles/obmc-pal.dir/obmc-pal.c.o -c /home/ukao/openbmc/poky/build/tmp/work/armv6-fb-linux-gnueabi/obmc-pal/0.1-r1/obmc-pal.c
| /home/ukao/openbmc/poky/build/tmp/work/armv6-fb-linux-gnueabi/obmc-pal/0.1-r1/obmc-pal.c:30:24: fatal error: openbmc/kv.h: No such file or directory
| compilation terminated.

Please help to resolve this issue

How to tell bitbake not to fetch?

Hi All
Every time bitbake will to do_fetch for the internet,but now I need work in a place whithout network. use BB_NO_NETWORK="1" ,bitbake still to fetch. What Can I do ,Help me,Thanks a lot !

i2c-tools fetch error

Build Configuration:
BB_VERSION = "1.22.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "Ubuntu-12.04"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "wedge"
DISTRO = "poky"
DISTRO_VERSION = "1.6.3"
TUNE_FEATURES = "armv5 thumb dsp arm926ejs"
TARGET_FPU = "soft"
meta
meta-yocto
meta-yocto-bsp = "daisy:240da756168b58eb05300a23c8282942f913db2d"
meta-oe
meta-networking = "daisy:d3d14d3fcca7fcde362cf0b31411dc4eea6d20aa"
meta-openbmc
meta-aspeed
meta-wedge = "master:2a51b7c1c2165ddb188c511e192b75f0aa0fbead"

NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: Failed to fetch URL svn://lm-sensors.org/svn/i2c-tools/branches/;protocol=http;module=i2c-tools-3.1, attempting MIRRORS if available
ERROR: Fetcher failure: Fetch command failed with exit code 1, output:
svn: E175002: Unable to connect to a repository at URL 'http://lm-sensors.org/svn/i2c-tools/branches/i2c-tools-3.1'
svn: E175002: OPTIONS of 'http://lm-sensors.org/svn/i2c-tools/branches/i2c-tools-3.1': could not connect to server (http://lm-sensors.org)

ERROR: Function failed: Fetcher failure for URL: 'svn://lm-sensors.org/svn/i2c-tools/branches/;protocol=http;module=i2c-tools-3.1'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: /home/fillmore/poky/build/tmp/work/arm926ejste-poky-linux-gnueabi/i2c-tools/3.1.1-r0/temp/log.do_fetch.9458
ERROR: Task 326 (/home/fillmore/poky/meta-openbmc/common/recipes-core/i2c-tools/i2c-tools_3.1.1.bb, do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2548 tasks of which 2547 didn't need to be rerun and 1 failed.
No currently running tasks (1701 of 2561)

Summary: 1 task failed:
/home/fillmore/poky/meta-openbmc/common/recipes-core/i2c-tools/i2c-tools_3.1.1.bb, do_fetch
Summary: There was 1 WARNING message shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
fillmore@SDD2:~/poky/build$

glibc-2.23-r0 do_package: Function failed: do_package

Hi,

I got the below error while bitake wedge-image. Could anyone provide the help ? Thanks.

ERROR: glibc-2.23-r0 do_package: QA Issue: glibc: Files/directories were installed but not shipped in any package:
/usr/share
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
glibc: 1 installed and not shipped files. [installed-vs-shipped]
ERROR: glibc-2.23-r0 do_package: Fatal QA errors found, failing task.
ERROR: glibc-2.23-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/user/openbmc/poky/build/tmp/work/armv5e-fb-linux-gnueabi/glibc/2.23-r0/temp/log.do_package.100145
ERROR: Task 781 (/home/user/openbmc/poky/meta/recipes-core/glibc/glibc_2.23.bb, do_package) failed with exit code '1'

is there pldm and ncsi support available?

i looked at the code, i can see, only mctp over i2c code is available, but README doesn't say any thing about its availability, i just wanted to know if it is working and also if PLDM over MCTP, NCSI over MCTP support is also available?

New system overlay technique

I noticed you have wedge specific changes in the meta-aspeed directories...
i.e. 0000-u-boot-aspeed-064.patch directs uboot to print to UART3...

define CONFIG_ASPEED_COM 0x1e784000

i.e. 0000-linux-openbmc.patch disables the LPC

If I was to create a new system that uses UART1 and needs LPC from the Aspeed (i.e. slice) I was first thinking it should be meta-openbmc/meta-company/meta-slice, but that would pick up wedge specific changes for meta-aspeed.

What is your expectation for patch management and directory layout?

Question about IPMI interface support: SOL, etc

the openbmc seems only support IPMI's KCS messge interface, about other message interface(such as LAN, serial/modem) is not support. While openbmc may support SOL, without lan and serial interface, the SOL function seem useless.

Arrow keys not working properly in mTerm_client

Hello,

I am running mTerm_client on my OpenBMC and everytime I try to use the arrow keys, either for recalling previous command or to make selections in the BIOS, it drops me out of mTerm_client much like pressing CTRL-X and I am back in the root@bmc shell.

Not seeing where in the code this is breaking. When I try to connect with microcom, the display is unusable, but the arrow keys appear to be actually working instead of dropping me back to the bmc shell.

This is on an Accton Wedge 100.

How to flash the new image

Hello,

I acquire an Accton Wedge-100 and wanted to upgrade OpenBMC, the build process went fine I have the following artifacts:
./u-boot-wedge100-v2016.07-r0.bin
./wedge100-image-wedge100-20170725181816.rootfs.cpio.lzma
./flash-wedge100-20170725181816
./wedge100-image-wedge100-20170725181816.rootfs.tar.gz
./modules--4.1.15-r1-wedge100-20170725181816.tgz
./wedge100-image-wedge100-20170725181816.rootfs.cpio.lzma.u-boot
./uImage--4.1.15-r1-wedge100-20170725181816.bin
./wedge100-image-wedge100-20170725181816.rootfs.manifest
./README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt

My current mtd scheme is like this
root@bmc:/tmp# cat /proc/mtd
dev: size erasesize name
mtd0: 00060000 00010000 "u-boot"
mtd1: 00020000 00010000 "env"
mtd2: 00200000 00010000 "kernel"
mtd3: 00c00000 00010000 "rootfs"
mtd4: 01100000 00010000 "data0"

mtd2 is too small for the new kernel
root@bmc:/tmp# flashcp -v uImage--4.1.15-r1-wedge100-20170725181816.bin /dev/mtd2
flashcp: uImage--4.1.15-r1-wedge100-20170725181816.bin bigger than /dev/mtd2

How can I proceed to flash the complete mtd to the latest release ?

Thanks in advance

/Patrick

README and CONTRIBUTING docs say what you can contribute, but not how

The "How can I contribute" section of README.md simply says what can be contributed, now how to contribute it.

While elsewhere it says you support git pulls, it would be nice to have information about any discussion mailing lists, IRC channels etc, where people can contribute things other than code as well as provide a forum for people getting into the code.

Error while building the image after changing the patch file

Hi ,

We are changing some value in the patch file "https://github.com/facebook/openbmc/blob/master/meta-aspeed/recipes-kernel/linux/files/patch-2.6.28.9/0000-linux-aspeed-064.patch" for baud rate calculation and building the image for our wedge100 like platform.

But it is showing Hunk failure error everytime.

When checked , the change in patch file is reflected in the files in the build directory.

Is there some additional steps to be done to change the patch file?

Thanks and Regards

cat /etc/issue

I believe is supposed to contain the current loaded version of software but mine is empty
How do I get the build string copied to this location?

root@bmc:~# cat /etc/issue
OpenBMC Release

Build U-boot failed

#47
When run "bitbake wedge100-image " or "bitbake u-boot" the issue will appear.
the system is Ubuntu 16.04

snip20170510_1
snip20170510_2

In addition,“bitbake core-image-minimal” can run success on my Ubuntu.

Please help me !!!

OpenBMC and kernels

Hi,

I find the following versions of kernel recipes are present, however unable to find the the one that is based on version 4.7 kernel which is claimed to be stable for AST25XX series.... Can someone kindly confirm the availability of the kernel 4.7 ?

https://github.com/facebook/openbmc/blob/helium/meta-facebook/meta-cmm/recipes-kernel/linux/files/defconfig -> linux kernel 4.1.15 (CMM OpenBMC)
https://github.com/facebook/openbmc/blob/helium/meta-facebook/meta-wedge100/recipes-kernel/linux/files/defconfig -> linux kernel 4.1.15 (wedge-100)
https://github.com/facebook/openbmc/blob/helium/meta-facebook/meta-wedge/recipes-kernel/linux/files/defconfig -> linux kernel 4.1.15 (wedge)
https://github.com/facebook/openbmc/blob/helium/meta-facebook/meta-galaxy100/recipes-kernel/linux/files/defconfig -> linux kernel 2.6.28.9 (OpenBMC for LC/FC )

Also, the code in below link (AST2520 header) states 2 versions as preferred. However i find that 4.7 is commented with '#'. Does it mean that the kernel version 4.7 is not supported ...
Reference : https://github.com/facebook/openbmc/blob/helium/meta-aspeed/conf/machine/include/ast2520.inc
PREFERRED_VERSION_linux-aspeed ?= "4.1.15"
#PREFERRED_VERSION_linux-aspeed ?= "4.7"

If 4.7 kernel is not available, can someone confirm whether those improvements are incorporated as part of 4.1.15 kernel of helium itself ?

Thanks in advance,
Karthik Balaguru

Won't compile: Makefile:442: *** mixed implicit and normal rules. Stop.

I'm running this on a CentOS 7 box (don't think that's relevant). About halfway through bitbake, I'm getting the following:

ERROR: Function failed: do_configure (log file is located at /home/brak/poky/build/tmp/work/wedge-poky-linux-gnueabi/linux-aspeed/2.6.28.9-r1/temp/log.do_configure.6767)
ERROR: Logfile of failure stored in: /home/brak/poky/build/tmp/work/wedge-poky-linux-gnueabi/linux-aspeed/2.6.28.9-r1/temp/log.do_configure.6767
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: Executing shell function do_configure
| NOTE: make wedge_defconfig
| Makefile:442: *** mixed implicit and normal rules.  Stop.
| ERROR: oe_runmake failed
| WARNING: /home/brak/poky/build/tmp/work/wedge-poky-linux-gnueabi/linux-aspeed/2.6.28.9-r1/temp/run.do_configure.6767:1 exit 1 from
|   exit 1
| ERROR: Function failed: do_configure (log file is located at /home/brak/poky/build/tmp/work/wedge-poky-linux-gnueabi/linux-aspeed/2.6.28.9-r1/temp/log.do_configure.6767)
ERROR: Task 71 (/home/brak/poky/meta-openbmc/meta-aspeed/recipes-kernel/linux/linux-aspeed_2.6.28.9.bb, do_configure) failed with exit code '1'

perl-5.20.0-r1 package failing

Slightly unfamiliar with yocto but can't seem to get past this in the build process.

I'm building inside a centos 6.3 vagrant project which i can share if that helps.

ERROR: objcopy failed with exit code 256 (cmd was 'arm-poky-linux-gnueabi-objcopy' --only-keep-debug '/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/generate_uudmap' '/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/.debug/generate_uudmap'):
arm-poky-linux-gnueabi-objcopy:/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/generate_uudmap: File format not recognized
Function failed: split_and_strip_files
DEBUG: Executing python function sstate_task_prefunc
DEBUG: Python function sstate_task_prefunc finished
DEBUG: Executing python function do_package
DEBUG: Executing python function package_get_auto_pr
DEBUG: Python function package_get_auto_pr finished
DEBUG: Executing python function perform_packagecopy
DEBUG: Python function perform_packagecopy finished
DEBUG: Executing shell function perl_package_preprocess
DEBUG: Shell function perl_package_preprocess finished
DEBUG: Executing python function split_and_strip_files
ERROR: objcopy failed with exit code 256 (cmd was 'arm-poky-linux-gnueabi-objcopy' --only-keep-debug '/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/generate_uudmap' '/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/.debug/generate_uudmap'):
arm-poky-linux-gnueabi-objcopy:/mnt/build/openbmc/poky/build/tmp/work/armv5e-poky-linux-gnueabi/perl/5.20.0-r1/package/usr/lib/perl/ptest/generate_uudmap: File format not recognized
DEBUG: Python function split_and_strip_files finished
DEBUG: Python function do_package finished
ERROR: Function failed: split_and_strip_files

certificate-store.dts is mssing?

During the bitbake, I received the "certificate-store.dts is missing" error for u-boot_2016.07.bb.

I cannot find the certificate-store.dts in these meta folders, How to get this file?

qsfp cpld driver

Hi,
I find that there is driver for fancpld, syscpld(meta-wedge100 - linux kernel 4.1.15) or syscpld, scmcpld (meta-galaxy100 - linux kernel 2.6.28.9) in the respective /recipes-kernel/cpld-mod folder. However, did not come across a driver for that of qsfp cpld for LC in either meta-wedge100 or meta-galaxy100... Did i miss it somewhere ? Can you kindly let me know if it is present in some other location or in some other form.

Thanks in advans,
Karthik Balaguru

Question about defining UBOOT_MACHINE names

I have a new machine and in meta-newmachine/meta-foo/conf/machine/foo.conf I defined
UBOOT_MACHINE_foo= "foo_config"
but this will not compile. Fails in u-boot_2016.07.bb (or possibly u-boot-fw-utils_2016.07.bb, not sure which.)
If I rename it to any of the facebook configs (i.e. fbwedge_config) it compiles fine which tells me there is some further configuration I am not doing.

Would appreciate any help with this, in particular to whatever documentation I should be referencing.

Is it possible to "freeze" my local source?

One of my bosses wants our complete openbmc implementation frozen and archived locally. I have explained I don't think that is possible since many repos are pulled during the build process (not to mention the syncing nightmare that would eventually lead to). But I understand the concern, how would I maintain the code for our product if the source can and will change?

Differences between facebook/openbmc and openbmc/openbmc

For openBMC, there seem to be two yocto based projects -
facebook/openbmc
openbmc/openbmc

How similar or how different are these ? Are there any plans to merge the two efforts ? Can the utilities from openbmc/openbmc be used with this openbmc project and vica versa ?

Open BMC can be used with IPMI tools

From the code, I understand Open-BMC uses local socket instead of internet socket, but a BMC is supposed to be managed remotely, how this can be achieved with Open-BMC.

AST_I2CD_INTR_STS_ARBIT_LOSS error on BMC console

I am on the Helium branch and seeing this error semi regularly on my BMC console. Searching for this string in the repo leads to no hits. Will probably have a HW guy probe this bus but wondered what this meant exactly.

ast-i2c ast-i2c.8: M clear isr: AST_I2CD_INTR_STS_ARBIT_LOSS = 8
tx 5 pbmast-i2c ast-i2c.8: I2C(8) ast_i2c_wait_bus_not_busy slave_op=0 (ctrl=1,cmd=a050020)
ast-i2c ast-i2c.8: I2C(8) bus hang! Slave dead: (ctrl=1,cmd=a050020)
ast-i2c ast-i2c.8: Bus recover with sts= 2000, slave mode: 0
ast-i2c ast-i2c.8: I2C(8) bus hang! Slave dead: Recovery Success (ctrl=1,cmd=a060000)
ast-i2c ast-i2c.8: I2C(8) recover completed (ctrl,cmd): before(1,a050020) after(1,a060000)
ast-i2c ast-i2c.8: I2C(8) M|&S disable completed (ctrl,cmd): before(1,a060000) after(0,a060000)
ast-i2c ast-i2c.8: I2C(8) reset completed (ctrl,cmd): before(0,a060000) after(1,a060000)

Permission denied

Hi All,

I can not clone the openbmc codes. The issue is "Permission denied ".

XXX@DZ-PC-099:~/openbmc$ git clone [email protected]:facebook/openbmc.git
Cloning into 'openbmc'...
Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Build OpenBMC for VmWare x86

Hi all, I've built an version of OpenBMC but for Wedge machine.
Now I need to build another for virtual machine x86 to test it, I changed MACHINE = "qemux86" in file local.conf but it didn't work.
Did I do wrong? Or there are some other steps that I need to do?
Please help me!!!
Thank you

IPMI interface

I need to use IPMI from the Tomahawk switch software to the BMC.
OpenBMC has an ipmitool implementation. So does the software running on the Tomahawk. How do these two "talk" to each other?

Clone meta-openbmc error: Permission Denied (publickey)

I can't clone repository meta-openbmc with
git clone [email protected]:facebook/openbmc.git meta-openbmc

It say that:
anhbh@ubuntu:~/wedge/poky$ git clone [email protected]:facebook/openbmc.git meta-openbmc
Cloning into 'meta-openbmc'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Anyone has solution? Tks.

Random MAC address on each boot

I wrote a local mac into the board id eeprom (wedge_eeprom) and expected that to be used to configure eth0 but on each boot I see a different, presumably randomly generated MAC being used. Can someone help resolve this please?

Wedge specific and non-specific code

Hi,

I've been working my way through the openBMC code, in particular the new software in userspace which I understand to be in meta-openbmc/meta-facebook/meta-wedge/recipes-wedge.

It seems to me that several of these apps shouldn't be in this layer as they don't appear to be Wedge specific. These are:

  • fblibs/ipmi
  • Some of ipmid (which also contains platform specific code)
  • rackmon (though I should note that I am not certain on this as I am not fluent enough in C)
  • usb-console

In addition, I would suggest the following software needs to be modified to decouple platform dependent code:

  • oob_nic
  • sms-kcs
  • alert_control

It could be that I have misunderstood your intentions, and you would rather these did stay where they are and remain platform dependent. Either way, I'd be grateful if you could let me know your opinions.

Thanks in advance for your time!

Licensing issues

Main issue:

I'm interested in cloning and modifying this repo, but after checking
the licensing, I'm worried that I can't legally do that yet. At the moment,
some makefiles and setup scripts say only 'Copyright Facebook.
All Rights Reserved.' (with no mention of the GPLv2), so I don't think
I can currently distribute them.

If the intent of the licensing is to allow people to distribute and modify all
files in the repo, then Facebook may wish to license those files differently
(eg: make it explicit within the files that they are licensed under GPLv2).
I'm not an expert, but I'd rather not distribute/modify the
contents of the repo until this is clarified within the repo itself, and I
think other potential contributors may feel similarly worried.

Other, smaller things:

The'All Rights Reserved' statement no longer has legal weight and conflicts with
the GPL; see the conversation here:
https://lists.debian.org/debian-legal/2007/06/msg00253.html
for more. The address of the Free Software Foundation is also out of date in
some files.

Question about Redfish

Hello,

Are there plans to support the Redfish/Swordfish APIs/schemas in the future?

Thanks,
Curt

u-boot-mkimage build error

I encountered this bitbake error for u-boot-mkimage package:
/bin/sh: cc: command not found

Any suggestions/comments about such error message?

Enabling I2Cs in openbmc master branch

Hi,

We are working on a wedge100 like platform and while listing I2Cs using the command "i2cdetect -l" found that the I2C 9 and 11 is not enabled .Please find the snapshot below

root@bmc:~# i2cdetect -l
i2c-0 i2c ast_i2c.0 I2C adapter
i2c-1 i2c ast_i2c.1 I2C adapter
i2c-2 i2c ast_i2c.2 I2C adapter
i2c-3 i2c ast_i2c.3 I2C adapter
i2c-4 i2c ast_i2c.4 I2C adapter
i2c-5 i2c ast_i2c.5 I2C adapter
i2c-6 i2c ast_i2c.6 I2C adapter
i2c-7 i2c ast_i2c.7 I2C adapter
i2c-8 i2c ast_i2c.8 I2C adapter
i2c-12 i2c ast_i2c.12 I2C adapter

We need to enable the I2Cs 9 and 11 i.e SCL10,SDA10 & SCL 12,SDA12 in the code.
Could anyone please point the method to enable the I2C controller ?

Thanks and Regards

Clone "meta-openbmc" failed

Dear sirs,

I tried to get the code with the method in README.md, but failed. Seems that I have no rights to access the server. Could you help me about this issue? Thank you very much.

git clone [email protected]:facebook/openbmc.git meta-openbmc
Cloning into 'meta-openbmc'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

BR,
Andy

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.