Assistance adding new system into openbmc project

Joel Stanley joel at jms.id.au
Fri Mar 11 00:47:53 AEDT 2016


Hello Shay,

On Thu, Mar 10, 2016 at 11:33 PM, Shay Slobodkin <shays at mellanox.com> wrote:
> We are newbies for the openbmc project, read through the manuals and would
> like to work under the ast2520 system.

Welcome! It's great to have you here. We look forward to working with
you and your colleagues.

We're a new project that is still finding it's feet, so feel free to
jump in and help out wherever you feel.

Jeremy has spent some time documenting some of our processes
https://github.com/openbmc/docs/blob/master/contributing.md, which I
encourage you and your team to have a read of.

In addition to this list we hang out on irc.freenode.net in #openbmc.
We're globally distributed, but US central time and all three of the
Australian timezones are when you will find the most activity.

> We have several questions regarding the tree structure and building.
> tree additions to support our system.
>
> Please let us know if you find the below as the complete and correct
> additions.

> root
>
> |-- meta-openbmc-bsp
>
> |   `-- meta-aspeed
>
> |       |-- conf
>
> |       |   `-- layer.conf
>
> |       `-- meta-ast2520 (New SoC)

This looks good.

> |           |-- recipes-bsp
>
> |           |   `-- u-boot
>
> |           |       |-- files
>
> |           |       |   |-- config.patch
>
> |           |       |   |-- fw_env.config
>
> |           |       |   `-- patch-2013.07
>
> |           |       |       |-- 0000-u-boot-aspeed-064.patch (Exist)
>
> |           |       |       |-- 0001-u-boot-openbmc.patch (Exist)
>
> |           |       |       `-- 0002-u-boot-aspeed_2520_2500.patch (Patch
> with 2500-2520 u-boot support)

I believe we now build with u-boot from our git tree (which has these
patches applied, plus some more fixes), so these should be removed.

 https://github.com/openbmc/u-boot/tree/v2013.07-aspeed-openbmc

Submit your patch for 2520 support there and I'll get it merged in.

The goal there is to get support for the ast chips in upstream u-boot
so we don't need to carry any local patches.

>
> |           |       |-- u-boot-fw-utils_2013.07%.bbappend
>
>
>
> |           |       `-- u-boot_2013.07%.bbappend
>
> |           |-- recipes-kernel
>
> |           |   `-- linux
>
> |           |       |-- linux-obmc
>
> |           |       |   |-- defconfig
>
> |           |       |   |-- files
>
> |           |       |       `-- patch-4.3-dev (Or later, temporary till code
> upstream)
>
> |           |       |           |-- 0000-kernel-aspeed_soc_2520.patch (Patch
> with 2520 SoC support)
>
> |           |       |           |-- 0001-kernel-aspeed_2500_2520_dts.patch
> (Patch with basic dts support)

Again, send them to the mailing list and we will get them merged into
our kernel tree:

 https://github.com/openbmc/linux/tree/dev-4.3

I've got on a 4.4 based branch ready to go. We planned to switch to
that once the v6 release was tagged, which has happened now, so I'll
upload that change soon.

As with u-boot we intend to upstream support and use that instead of
our own tree.

>
> |           |       |   `-- hwmon.cfg
>
> |           |       `-- linux-obmc_%.bbappend
>
> |           `-- recipes.txt
>
> |-- meta-openbmc-x86-machines
>
> |   `-- meta-mellanox
>
> |   |   |-- conf
>
> |   |   |   |-- layer.conf
>
> |   |   |   `-- machine
>
> |   |   |       `-- include
>
> |   |   |           `-- mellanox.inc
>
> |   |   `-- meta-mellanox-edr
>
> |   |       |-- conf
>
> |   |       |   |-- layer.conf
>
> |   |       |   `-- machine
>
> |   |       |       `-- include
>
> |   |       |           `-- mellanox.inc
>
> |   |       |-- recipes-kernel
>
> |   |       |   `-- linux
>
> |   |       |       |-- linux-obmc
>
> |   |       |       |   |-- files
>
> |   |       |       |       `-- patch-4.3-dev (Or later, temporary till code
> upstream)
>
> |   |       |       |          |-- 0002-kernel-mellanox-dts.patch (Patch
> with Mellanox dts support)

We can include this in kernel tree if you want?

>
> |   |       |       |   |-- mellanox-edr.cfg
>
> |   |       |       |   `-- mellanox-edr.dts
>
> |   |       |       `-- linux-obmc_%.bbappend
>
> |   |       `-- recipes.txt
>
>
>
> =========
>
>
>
> Also, should we add a “local.conf.sample” file under the
> “meta-openbmc-x86-machines/conf” path?

I'll let one of the developers more familiar with our project layout
and build system to help you out with the questions below.
>
> If so, we were wondering about the following variables under the
> local.conf.sample file (we took the phosphor one as example):
>
> PACKAGE_CLASSES ?= "package_rpm"
>
> SANITY_TESTED_DISTROS_append ?= " RedHatEnterpriseWorkstation-6.*"

This is because some of our team members use RHEL6, and bitbake warns
about unsupported distros.

Many of the team use more recent Ubuntu releases, so it's up to you.

>
> EXTRA_IMAGE_FEATURES = "debug-tweaks"
>
> USER_CLASSES ?= "buildstats image-mklibs image-prelink"
>
> PATCHRESOLVE = "noop"
>
> BB_DISKMON_DIRS = "\
>
>     STOPTASKS,${TMPDIR},1G,100K \
>
>     STOPTASKS,${DL_DIR},1G,100K \
>
>     STOPTASKS,${SSTATE_DIR},1G,100K \
>
>     STOPTASKS,/tmp,100M,100K \
>
>     ABORT,${TMPDIR},100M,1K \
>
>     ABORT,${DL_DIR},100M,1K \
>
>     ABORT,${SSTATE_DIR},100M,1K \
>
>     ABORT,/tmp,10M,1K"
>
> Guess we should use the “genericx86-64” as MACHINE variable
>
>
> We were wondering what specific “oe-init-build-env” and similar files we
> should change, in order for the project to compile.


More information about the openbmc mailing list