commit | ab6183645c4717e6cf58ca9ef89e9958ba804824 | [log] [tgz] |
---|---|---|
author | Milton D. Miller II <miltonm@us.ibm.com> | Wed Mar 02 15:23:22 2016 -0600 |
committer | Milton D. Miller II <miltonm@us.ibm.com> | Mon Mar 07 15:22:29 2016 -0600 |
tree | 006abc24adfdb5e9f5565f382221d24890e49a89 | |
parent | 77be704ad77d34bf8682f342ddf7731c456c9e0e [diff] |
init: Look for options in u-boot environment Look in the saved u-boot environment for init options in addition to the kernel command line. This allows setting options to run in the u-boot environment instead of setting bootargs. Look at specific variables but not the whole environment so that users can setup variable to run. Look at two variables so scripts can automatically clear one on successful boot as one-time options (defer that to the full filesystem). Instead of having the full fw_setenv / fw_getenv binaries which would overflow the existing space for the initramfs, just use the busybox strings command to extract the variables. The oldest variable might get a crc32 character or flag byte if redundant environment were configured for nand but that is not expected to be these user defined variables. [1] The environment consists of a crc32, a flag byte if a redundant environment is configured, then a series of var=value strings separated by NUL bytes. The flag byte is 1 (active) or 0 (obsolete) for NOR flash, or a counter 0-255 in nand, the flag byte cycles through 0-255. Signed-off-by: Milton Miller <miltonm@us.ibm.com>
OpenBMC uses Yocto/Open-Embedded for a build system, which supports an out-of-tree build. It is recommended that you create an empty directory somewhere to hold the build. This directory will get big.
On Ubuntu 14.04 the following packages are required to build the default target
sudo apt-get install -y git build-essential libsdl1.2-dev texinfo gawk chrpath diffstat
On Fedora 23 the following packages are required to build the default target:
sudo dnf install -y git patch diffstat texinfo chrpath SDL-devel bitbake sudo dnf groupinstall "C Development Tools and Libraries"
To start a build:
cd <builddir> . <repodir>/openbmc-env bitbake obmc-phosphor-image