linux-obmc: Work around host IPL issues using GPIO hogs in Palmetto devicetree

The commit message in the kernel patch applied by this commit outlines
the critical information on how it was generated and the limitations
that apply to using GPIO hogs to produce a bootable host.

Please refer to the kernel patch commit message.

Note the patch is best applied during the OpenBMC build process, rather
than being carried by the OpenBMC kernel fork. The OpenBMC kernel fork is
used to test Aspeed SoC support at large, often with non-OpenBMC
userspaces. While the OpenBMC userspace is sometimes not used in kernel
testing, the tests often take place on OpenBMC supported machines such as
the Palmetto. As kernel development and maintenance often includes
exporting various GPIOs to poke at, it's best that we minimise the
number of GPIOs tied up in hogs.

It's acknowledged that this opens an opportunity for predictable flaws
if a kernel is booted with the OpenBMC userspace without this patch
applied, but it's assumed the user knows what they are doing in this
case*.

* Having said that, it will no doubt trip me up.

Change-Id: I08f5f5b29cc81257655bb9a35dbb6c5ce3f11292
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
2 files changed
tree: d57e72d66566866835f323cfe728834f54088824
  1. import-layers/
  2. meta-openbmc-bsp/
  3. meta-openbmc-machines/
  4. meta-phosphor/
  5. .gitignore
  6. .gitreview
  7. .templateconf
  8. openbmc-env
  9. README.md
README.md

OpenBMC

Build Status

Building

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