Age | Commit message (Collapse) | Author | Files | Lines |
|
The phosphor-defaults.inc file has some free-standing line continuations
that aren't in strings. While this might be accepted by bitbake, I
don't think it is intended to be valid syntax, and the upstream
vimsyntax file isn't happy about it. Clean this up by removing the
continuation.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iee63c7eec4f940b28d45d3b9a1d0d97d93fff2e6
|
|
FLASH_SIZE was previously defaulted in a few bbclasses and bbappends,
but this can result in it not being defined in all recipes if the
machine has not overridden the FLASH_SIZE. openbmc/openbmc#3876
reported one such case where the u-boot-fw-utils recipe does not
receive the correct FLASH_SIZE and ends up erasing the wrong flash
region as if it were the u-boot enviroment. Specify it in the common
include so it is available everywhere.
Resolves openbmc/openbmc#3876.
Change-Id: Iacdde1a5d0081b54321110d655da18bb3846cd14
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Creates new DISTRO_FEATURE "etcd" to support etcd package
and associated C++ v3 client API.
etcd will be utilized by new IBM systems to synchronize data across
multiple BMC's within a single system.
Change-Id: I027261789a87ffa0cfc55f16704b256294e672f5
Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
|
|
An upcoming systemd is going to deprecate split-usr support[1] and
Yocto supports 'usrmerge' as a DISTRO_FEATURE. Getting out in front
of the upcoming systemd release by enabling this in meta-phosphor now.
[1]: https://lists.freedesktop.org/archives/systemd-devel/2022-September/048352.html
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6d95ee3fccf35f38b4104da955eae4c19d76bd50
|
|
Some systems, like Bletchley, might be using btrfs file systems and
using the btrfs-tools to format them. They probably don't need the
Python modules by default, so disable them in meta-phosphor.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I87316001f48432db4297656838b750e10651d043
|
|
According to poky/documentation/migration-guides/migration-4.1.rst,
the DISTRO_FEATURE `largefile` no longer exists. Remove it from
our default feature list.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Id6d052c439ea2442dea5cb98468d7e2d68cb7c42
|
|
When upstream adjusted this to mickledore, we missed it and it was still
listed as langdale. Adjust to match.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I5ad4a373f4d4c823ecf9314218c73faf7f23213f
|
|
SBOM support gives a conscise, structured summary of the content of the
image and the licenses used.
More information is provided here:
https://docs.yoctoproject.org/next/dev-manual/sbom.html
Change-Id: Ia0f906b6e2994c030b30cc73c19b5f74b326cda5
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
|
|
For systems with extra flash space, including some additional developer
debug tools can be useful. Instead of having everyone hand code them
into their obmc-apps bbappend files, provide a common include that will
bring them in.
Change-Id: I91a1b29ab4a4ff2efaaf5ea5dfbafd83781168df
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
|
|
The 32MB flash machines typically do not have enough space to hold
a zstd compressed rootfs, so default them to use xz.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6f24d771e41853c13ec55c9a35bc5dff3f523cb2
|
|
The 2.0 version of libgpiod broke backward compatibility and requires
changes in multiple repos within OpenBMC. Set PREFERRED_VERSION back
to 1.6.4, which is still shipping with meta-openembedded, until we have
time to resolve this.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I2aca89e9bc9eaba84f95e006bfa0647553c37f54
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Define a new image type 'static-norootfs' that takes the entire
rootfs and places it as the initramfs for the kernel's FIT image,
so that the BMC is entirely running from a ramdisk.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I0163f5be0a1b176e0db5f89b85f34e4feae8a588
|
|
We have reached branch-capacity in the bb.utils.contains checks
at 3 image types. In order to be able to more easily add additional
image types, split the differences out into additional inc-snippets
for each image type.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ibcdb5c885c67cb6d8728dfd315eb07f99b1a2173
|
|
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I8e54833ac78e540e9dd5011533d53ff9a3af6763
|
|
The org.freedesktop interfaces have the same "use everywhere" status
as xyz.openbmc_project, since they are not specific to any company
or architecture. Enable them in meta-phosphor.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I3261a6777b2c9003f5476061e4df30811321f73d
|
|
Back in 2018 we stopped including poky.conf by default and treated
phosphor as a separate distro. One minor side-effect of this is that
the DISTRO_CODENAME is no longer defined, which is used in some misc.
locations such as os-release. Mirror the current Poky codename with
the intention that we will keep this in sync as upstream moves along.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iabbdd3f6046f2c7b8ffc81536ab4b47f8471ee20
|
|
These variables are unused; remove the dead metadata.
Change-Id: I17d0282277a0231a264773d8bac9afeef69ec8b4
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
All of these abstractions have exactly one implementation. Remove the
indirection to improve at a glance comprehension.
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I5d701aff6d0876fa3b2d16c841cbdcb0433b221f
|
|
Both of the patchsets mentioned in the SECURITY_FLAGS holdouts have been
merged, we can enable the security flags on these projects now.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I62ab78568dac5970f7ab6a05bfe9cd8b99ecc731
|
|
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I65febeeec11e6e5b40ee728f42cfbe77023dae1e
|
|
Nuvoton's npcm8xx full flash image includes TIP FW, Bootblock,
ATF, OPTEE and UBOOT with headers. Generating headers and merging
images are being done by Nuvoton's binary generator tool (Bingo)
which uses external parameters from XML files for that.
Thus, we need to add related fitimage and image type for npcm8xx.
However, before merge this commit, we must wait for below commits were merged.
meta-nuvoton: arm-trusted-firmware: add arm trusted firmware recipe
https://gerrit.openbmc.org/c/openbmc/openbmc/+/55234
meta-nuvoton: add npcm8xx-bootblock recipe
https://gerrit.openbmc.org/c/openbmc/openbmc/+/55117
meta-nuvoton: add npcm8xx-igps recipe
https://gerrit.openbmc.org/c/openbmc/openbmc/+/55099
meta-nuvoton: npcm7xx-bingo: upgrade latest version 0.0.5 support Arbel
https://gerrit.openbmc.org/c/openbmc/openbmc/+/55128
Signed-off-by: Tim Lee <timlee660101@gmail.com>
Change-Id: I4599e39d3873f07cde6904d0f10161964fc45c7a
|
|
We also need to move the conf-notes.txt files.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic44e015c0216b526de4fec277ad42f162bca1f33
|
|
The latest poky commit is requiring us to have all of
our template configs in a subdirectory instead of directly in
the `conf` directory. Without this we end up with errors during
setup like:
```
Error: TEMPLATECONF value (which is .../openbmc/meta-facebook/meta-bletchley/conf) must point to meta-some-layer/conf/templates/template-name
```
Fix this by moving all of our template files into the 'default'
template subdirectory (following the pattern of poky) and modifying
`setup` as necessary to follow.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iecefde73d55acbb6bc63ae3d68c4311adaf327ae
|
|
Some systems wish to override the distro name. Allow this by not
forcefully setting the variable in phosphor-base.
Change-Id: Ie6fc72e92d7bd215dfa6a2835a8022ae8daf51b2
Signed-off-by: Joel Stanley <joel@jms.id.au>
|
|
The only recipes which use content from meta-perl are openpower
machines:
```
meta-openpower/recipes-bsp/pdata/pdata_git.bb: libxml-libxml-perl-native \
meta-yadro/meta-nicole/recipes-phosphor/logging/openpower-esel-parser_git.bb: libxml-libxml-perl-native \
```
Remove meta-perl from the bblayers of every layer except openpower
machines.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I51f1a8fbfbe879295c64d2339fc115dbd8823681
|
|
This was added with cde0f094f for libseccomp, but shortly after that
upstream moved libseccomp from meta-security to core (241c7d2e6). As
such, meta-security is no longer used or required.
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I371e54b11f6336720dfc6edf0ef733d22b7fb4f2
|
|
These layers are all required, so add them to the layer dependencies.
This generates an error earlier in the build process when layers are
missing from the configuration (bblayers.conf).
The dependency list below is informative, but likely not comprehensive:
-meta-python: python3-inflection-native
-meta-networking: net-snmp
-meta-oe: rsyslog, libvncserver, ipmitool, boost-url, libgpiod,
lmsensors-config, openldap
Change-Id: I1b480224e6ec4b8bd61c8f21d6e569d17363a9a6
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
Per [1][2], Yocto is starting to deprecate ABORT and has replaced
the "ABORT" action in BB_DISKMON_DIRS entries with "HALT".
1. https://wiki.yoctoproject.org/wiki/Inclusive_language
2. https://git.yoctoproject.org/poky/commit/?id=4f77505d94a8f6260933f457e9848d1d2fa98ce5
Tested:
Built obmc-phosphor-image successfully and eliminate the following
warnings:
```
WARNING: The BB_DISKMON_DIRS "ABORT" action has been renamed to
"HALT", update configuration
```
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: If57d0ded9fac41e23b31b01e2a0e309ac7388148
|
|
Ensure the vmlinux is archived as part of the build artifacts for
debugging.
Signed-off-by: Joel Stanley <joel@jms.id.au>
Change-Id: If84c284cfc60f6b8ae5c641ef7ee06255f29d8c1
|
|
* Deprecate N-1 release (hardknott).
* Enable N+1 release (kirkstone).
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I39e027e02dab64b4390b46ffbd9c299c858f403e
|
|
We don't need pkcs11 support on the BMC by default and it ends up
causing a dependency chain that brings in Rust.
This packagegroup can only be pulled in when meta-security/meta-tpm is
used, so hook into BBFILES_DYNAMIC to use it when appropriate.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iff12f641e57ace313ad64a402091444edba74ea4
|
|
Switch from custom BBFILE_COLLECTION parsing to relying on
BBFILES_DYNAMIC for any new layers. The existing layers (aspeed,
nuvoton) have already been moved to the BBFILES_DYNAMIC mechanism.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ie67b95684349b6419e4608afba660607d0566803
|
|
The proper way to add extensions to another layer is with
BBFILES_DYNAMIC rather than adding to BBFILES based on
BBFILE_COLLECTIONS. Move nuvoton-layer to a dynamic-layers subdirectory
and hook into layer.conf using BBFILES_DYNAMIC.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic1b1f0ce837a899c5060531735c75c73cf51f1f5
|
|
The proper way to add extensions to another layer is with
BBFILES_DYNAMIC rather than adding to BBFILES based on
BBFILE_COLLECTIONS. Move aspeed-layer to a dynamic-layers subdirectory
and hook into layer.conf using BBFILES_DYNAMIC.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I26e5093d469ce0a57c0b93bcc6b3383dd7bcf264
|
|
www.example.com is having intermittent connection issues, causing a lot
of intermittent openbmc builds fails in CI. Upstream is moving to
https://www.yoctoproject.org/ so we should as well.
Upstream: https://lists.openembedded.org/g/openembedded-core/message/161662
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: Iae7c2debcfe294e3facca25ad47a6b8434449769
|
|
Our builds with MMC will explicitly depend on this as needed. No other
BMC builds should need this utility normally and it gets included with
all builds.
Change-Id: I4ce0303dfd4646579d70f79be3e6af9b191ca45a
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
A few recipes are specifying 'protocol=git' to the git-fetcher, which is
already the default[1]. For github URLs, upstream Yocto / OE suggest
that 'protocol=https' is used[2]. Switch any URL that has a protocol
specified to be 'https' instead of 'git'.
1. https://docs.yoctoproject.org/bitbake/bitbake-user-manual/bitbake-user-manual-fetching.html#git-fetcher-git
2. https://lists.openembedded.org/g/openembedded-devel/message/94255
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ibf1ab0fa2cb83c8cb9f4e535a0781f41e3b0dafe
|
|
`BBLAYERS_NON_REMOVABLE` is obsolete and no longer required.
As it said by Yocto documentation it can be used by `Hob`
https://www.yoctoproject.org/docs/1.5.2/ref-manual/ref-manual.html#var-BBLAYERS_NON_REMOVABLE
that already removed since Yocto-2.1
https://www.yoctoproject.org/tools-resources/projects/hob
Change-Id: Ibc2d8268a9d837a81e9cf6b0131dba8d0a030a3f
Signed-off-by: Alexander Filippov <a.filippov@yadro.com>
|
|
It was reported that after 5a5f33c729e6b5869362172b63595422eb84a418 the
qemu images are not buildable. Treat qemu systems like an 'evb' so that
the obmc-system-mgmt package is not included. Make a minor change to
how evb is specified so that it is treated as a MACHINEOVERRIDE that can
be leveraged in multiple recipes.
Tested by ensuring that `evb-ast2600` still successfully resolves all
package dependencies (with `bitbake -p`).
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iff4573aa3d4aac30a6681ed75741a6e351bda982
|
|
The obmc-system-mgmt feature is currently used in the image to trigger
inclusion of a virtual-provider which provides a number of packages many
systems need. Partially revert the removal of this feature so that
the outcome is:
1. The empty obmc-phosphor-sysd package is still removed.
2. By default the 'obmc-system-mgmt' feature is included, unless
specifically exempted.
3. All EVB platforms remove the 'obmc-system-mgmt' feature since
they have no system they are managing.
This partially reverts commit 060ad3ff7fcc30aff78a9e504efee9d8fa0d4526.
Tested:
* Built `bletchley` and confirmed `packagegroup-fb-apps-system` and
`entity-manager` are present.
```
entity-manager armv7ahf-vfpv4d16 0.1+git0+6bf41588ab-r0
packagegroup-fb-apps-system all 1.0-r1
```
* Built `witherspoon` and confirmed `packagegroup-op-apps-system` and
`pdbg` are present.
```
packagegroup-op-apps-system noarch 1.0
pdbg arm1176jzs 3.3
```
* Ran `bitbake -p` on `evb-ast2600` to confirm the undefined
`virtual-obmc-system-mgmt` is not being included in the image.
Change-Id: I8b7804d5101cc84a2c57473b3f85672bf7767c67
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Every machine layer treats 'system-management' as either part of a
package-group or removes the feature. The sample implementation in
meta-phosphor is a do-nothing shell script (and up until recently was a
Python script). There appears to be no useful purpose to this feature
as a stand-alone concept, so remove it.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I20ca1fa8ff3cb01cac2d07d4ded84e0769e4514b
|
|
Clean up the final part of this indirect, which is the append of the
variable to the MACHINE_FEATURES one.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I2077d7acff5602b7bf333677f5866d979bdaa07c
|
|
The ast2500 shares the RGMII1 pin and the hw strap pins
for SPI interface mode selection ( pin[12:13] ).
In some systems, the RGMII/NCSI interface will use the pin.
It makes the SPI interface mode setting is not correct.
This patch adds a distro feature to enable the SPI master
mode by default.
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I93e5dd5e86870601169974aa1aab4b5480a45ef1
|
|
bitbake offers a choice of DEB, RPM or IPK packaging. To a degree the
choice is functionally arbitrary for image generation but control over
the package format becomes important if we want to:
1. Include runtime package management functionality in the firmware image
2. Mess about with the packages on the build system
With respect to 1 the IPK format and opkg (an ipk package manager) are
designed for embedded systems[1] - by contrast to RPMs have heavier
dependencies and a greater impact on the size and complexity of the
firmware image.
Regarding 2, the embedded nature and the need for opkg to work without
much fuss leads to a lower configuration barrier by comparison to RPMs.
With ipk it becomes possible to reuse the packages built during image
preparation for core analysis without needing to generate an SDK:
```
$ export LD_LIBRARY_PATH=./tmp/work/x86_64-linux/opkg-native/*/recipe-sysroot-native/usr/lib
$ MY_DEBUG_ROOT=tmp/rootfs-debug
$ ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/*/opkg.conf \
-o $MY_DEBUG_ROOT \
update
$ fakeroot ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/1.0-r0/opkg.conf \
-o $MY_DEBUG_ROOT \
install dbus-sensors dbus-sensors-dbg
$ gdb-multiarch
(gdb) set solib-absolute-prefix .../tmp/rootfs-debug
(gdb) add-auto-load-safe-path .../tmp/rootfs-debug
(gdb) file tmp/rootfs-debug/usr/bin/nvmesensor
(gdb) core-file obmcdump_17_9597/core.nvmesensor.0.aae91b519d0e4e0e8bbe746e3f6cd25f.2779.9594000000
Core was generated by `/usr/bin/nvmesensor'.
Program terminated with signal SIGABRT, Aborted.
pthread_kill.c:45
45 pthread_kill.c: No such file or directory.
(gdb) bt
pthread_kill.c:45
../sysdeps/posix/raise.c:26
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
"xyz.openbmc_project.NVMeSensor", this=0x488f04) at
/usr/include/sdbusplus/bus.hpp:234
../../../../../../workspace/sources/dbus-sensors/src/NVMeSensorMain.cpp:159
(gdb)
```
This approach documented in the Poky Reference Manual:
https://www.yoctoproject.org/docs/1.0/poky-ref-manual/poky-ref-manual.html#platdev-gdb-remotedebug-launch-gdb-inferiorbins
Switch all machines to IPK to align the debugging experience with
upstream's documentation and to facilitate efficient use of packaged
software at runtime.
[1] https://openwrt.org/docs/guide-user/additional-software/opkg
Change-Id: I8ef526add2d7a6790de1b3eb3fb85cd39b864f23
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Commit aff0243 added seccomp to the systemd PACKAGECONFIG. The
libseccomp recipe requires seccomp be a DISTRO_FEATURE.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: Iee1d5e9b2efe8284454c0b5125d9de7b43c1bdb0
|
|
The meta-security layer requires the DISTRO_FEATURE 'security' set
otherwise it gives a warning:
WARNING: You have included the meta-security layer, but 'security'
has not been enabled in your DISTRO_FEATURES. Some bbappend files
and preferred version setting may not take effect. See the
meta-security README for details on enabling security support.
This DISTRO_FEATURE doesn't really seem to do anything except enable
an additional include file in the linux-yocto recipe (which itself
then checks other features). It seems entirely safe for us to enable
this feature everywhere to avoid the warning.
$ git grep -A4 "DISTRO_FEATURES" | grep "'security'"
meta-security/README:to have 'security' in DISTRO_FEATURES to have effect.
meta-security/README: 'security' has not been enabled in your DISTRO_FEATURES. Some bbappend files
meta-security/classes/sanity-meta-security.bbclass: if 'security' not in e.data.getVar('DISTRO_FEATURES').split() and not skip_check:
meta-security/classes/sanity-meta-security.bbclass:'security' has not been enabled in your DISTRO_FEATURES. Some bbappend files \
meta-security/recipes-kernel/linux/linux-yocto_5.%.bbappend:require ${@bb.utils.contains('DISTRO_FEATURES', 'security', '${BPN}_security.inc', '', d)}
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ife1549783b356f87f429466f260f34b9a41d002c
|
|
We've typically kept these LAYERSERIES_COMPAT to 2 releases: the current
and the upcoming. Remove 'gatesgarth' is it is now 2 releases back.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I5e812a94fed1738898af75c0fdee81996a5bbf20
|
|
We want to build OpenBMC on ppc64le, so add it to QEMU_TARGETS.
Signed-off-by: Anton Blanchard <anton@ozlabs.org>
Change-Id: Ice8735a105f40c938dde42061d2e33ddf55a07dc
|
|
LAYERVERSION should keep underscore instead of colon.
Change-Id: I53b0af2fd8c756d09a11ee2c970910cdf7331738
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ib334e243bb2293148b6bf3587c79a77e46bd8ce3
|