Pull in upstream changes for fix the build with gcc 15 and README tweaks.
(From OE-Core rev: 0ba624f30d482c0c7d86202d46abdab9d148c9b0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
psplash-systemd.service depends on FIFO created by psplash-start@fb0.service.
This FIFO can be removed due to signals or /dev/fb0 related errors
when psplash-start@fb0.service exits. This exit can happen
when psplash-systemd.service is being started. Thus ignore
all errors in psplash-systemd.service startup.
There are too many ways things can go wrong and all of them
leave open race conditions unless a single process handles
all of the psplash usecases including progress bar updates.
(From OE-Core rev: 580ae81e102bf999cb89f05430c737210253d90a)
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
systemd ignores the typo and continues but startup fails later due to
missing fifo file. Fixes:
systemd[1]: /usr/lib/systemd/system/psplash-systemd.service:8: Unknown key 'ConditionFileExists' in section [Unit], ignoring.
(From OE-Core rev: c7215ad8599a4b792d7edefb46861c94a7ba79b3)
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
psplash-start.service expected to find /dev/fb0 and failed
if device was not found. This failure breaks systemd
oeqa runtime test with "runqemu nographic". Starting
psplash based on detected framebuffer device fixes systemd
boot status and systemd oeqa runtime tests for qemu
boots with and without graphics support.
Note that psplash-systemd.service still depends on /dev/fb0
so startup with multiple framebuffer devices may not work
correctly. I don't have devices with multiple framebuffer
devices to test with.
On qemu machine with graphics, psplash displays yocto
logo correctly and boot progress bar as well. Once boot completes
to systemd "running" state, the logo is replaced by login prompt.
On qemu machine without graphics, boot completes without psplash
or failures and login over serial console works normally.
Tested with genericarm64 machine poky-altcfg distro and core-image-base
image on qemu. AMD kv260 tested as well but graphics stack is not yet
working there so boot is similar to qemu without graphics.
(From OE-Core rev: 3820f6f342c2309ba7d51d3c08b3a951c2c17781)
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace references of WORKDIR with UNPACKDIR where it makes sense to do
so in preparation for changing the default value of UNPACKDIR.
(From OE-Core rev: 1f18b9a512800860d5153d89eb82b56388efad6f)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Since we want to be able to stop unpacking to WORKDIR, correct the WORKDIR
references in recipe do_compile/do_install tasks to use UNPACKDIR in the
appropraite places instead.
(From OE-Core rev: d73595df69667fe9d12ecd407b77a0b8dae2109c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that SRCPV isn't needed we can simplify things in a few places...
(From OE-Core rev: 843f82a246a535c353e08072f252d1dc78217872)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes the image easier to modify.
People may not realize they can pass a .png image
to SPLASH_IMAGES, and producing a .h file is more
complicated.
Also provide the source SVG file (though the recipe doesn´t
use it, for easier modification) and support for higher resolutions
than the initial 640x480 image. This SVG file was reconstituted manually
to reproduce what was shown on the qemu86-64 image.
(From OE-Core rev: 46bc280f86f77eb10c810eef55111c0e8246d834)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
by setting PACKAGECONFIG entries
- fullscreen wasn't set by default but caused
issues displaying the image (image translated upwards,
white stripe at the bottom)
- startup-msg was set by default but didn't seem
to work, showing a white stripe in the lower half
of the display.
- progress-bar was already enabled, but it can
now be disabled through PACKAGECONFIG.
(From OE-Core rev: 31be4944528c6266eda6e8ab07cdc81a6c906c8b)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Suggested-by: Alexander Kanavin <alex.kanavin@gmail.com>
CC: Tim Orling <ticotimo@gmail.com>
CC: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The recommendation from server maintainers is that the https protocol
is both faster and more reliable than the dedicated git protocol at this point.
Switch to it where possible.
(From OE-Core rev: 139102a73d4151f4748b4a861bd4ab28dda7dab7)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In current psplash framework, the psplash might not exist at all.
For example, in case DSITRO is set to nodistro, the psplash does
not exist.
In our psplash recipe, we have:
SPLASH_IMAGES = "file://psplash-poky-img.h;outsuffix=default"
This variable is parsed to if psplash-poky-img.h exists, a package
named psplash-default is created and is added to RDEPENDS:${PN}.
We can see that the psplash-poky-img.h resides in meta-poky,
and in psplash_git.bbappend file in meta-poky, we have:
FILESEXTRAPATHS:prepend:poky := "${THISDIR}/files:"
So this file is only available in case poky distro is used.
To fix this issue, add condition check in the corresponding systemd
services.
(From OE-Core rev: 7a62ff9ed39c179d2b9b0c40f4f8423ced413063)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otherwise when the installation of recommended packages is prevented
(NO_RECOMMENDATIONS = "1"), then splash screen will not be cast.
(From OE-Core rev: 2a0928532b8303858980d6df6271669dbb69e224)
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
An automated conversion using scripts/contrib/convert-spdx-licenses.py to
convert to use the standard SPDX license identifiers. Two recipes in meta-selftest
were not converted as they're that way specifically for testing. A change in
linux-firmware was also skipped and may need a more manual tweak.
(From OE-Core rev: ceda3238cdbf1beb216ae9ddb242470d5dfc25e0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is uncertainty about the default branch name in git going forward.
To try and cover the different possible outcomes, add branch names to all
git:// and gitsm:// SRC_URI entries.
This update was made with the script added to contrib in this patch which
aims to help others convert other layers.
(From OE-Core rev: b51c405faf6f8c0365f7533bfaf470d79152a463)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Repo-wide replacement to use newer variable to represent systemd
system unitdir directory.
(From OE-Core rev: 5ace3ada5c54500c71becc8e0c6eddeb8bc053e3)
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is the result of automated script conversion:
scripts/contrib/convert-overrides.py <oe-core directory>
converting the metadata to use ":" as the override character instead of "_".
(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The psplash program has a mechanism for showing updates graphically in the
form of a progress bar. The program is told when and how much to fill the
progress bar via text messages sent through a fifo. If the fifo doesn't exist
when the psplash program starts, it tries to create it. If the fifo doesn't
exist or can't be created, the psplash program will refuse to run.
In various circumstances when a system is booted for the very first time,
the filesystem is mounted, initially, read-only. As a result the psplash
program is not able to run. On systems where the root filesystem is not
meant to be read-only, it will eventually be mounted read-write. Therefore the
psplash program can run on shutdown, and all subsequent boots. Only the first
boot is affected.
If a fifo is created and included in the filesystem as part of the recipe,
then filesystems that are meant to be read-only will have psplash work, as
well as the cases where (on first boot) a read-write filesystem is initially
mounted read-only.
NOTE: this is only an issue with sysvinit, and non-qemu machines.
systemd-based systems don't suffer from this first-boot issue, and neither
do the qemu machines.
NOTE 2: when psplash is done, it removes the fifo. Therefore the fifo used
for communicating with psplash doesn't hang around unnecessarily in the
filesystem.
(From OE-Core rev: d20978f9bce3caf473f5b4f55d645dbeabc1642d)
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add an entry for the psplash fifo directory to /etc/default/rcS and have the
pieces of code that need it source it from there rather than duplicating the
definition in multiple places throughout the code.
(From OE-Core rev: dc4065b6f101e6418301e0cb8d73ae3a1b2bdfb2)
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There are issues with multilib due to the ordering of events where some
functions see the remapped multilib dependencies and some do not. A significant
problem is that the multilib class needs to make some changes before key expansion
and some afterwards but by using existing event handlers, some code sees things
in a partially translated state, leading to bugs.
This patch changes things to use a new event handler from bitbake which makes the
ordering of the changes explcit.
The challenge in doing this is that it breaks some existing anonymous python and
dyanmic assignments. In some cases these used to be translated and no longer are,
meaning MLPREFIX has to be added. In some cases these are now translated and the
MLPREFIX can be removed.
This change does now make it very clear when MLPREFIX is required and when it is
not, its just the migration path which is harder. The patch changes the small number
of cases where fixes are needed.
In particular, where a variable like RDEPENDS is conditionally extended (e.g.
with an override), MLPREFIX is now required.
This patch also reverts:
base: Revert 'base.bbclass: considering multilib when setting LICENSE_EXCLUSION'
This reverts 6597130256a1609c3e05ec5891aceaf549c37985 as the changes
to multilib datastore handling mean its no longer necessary.
(From OE-Core rev: b3fda056a674889cd9697e779de023d4f993d3ce)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
psplash is only expected to run during startup, but if any dependency is
pulled into a transaction and the unit is inactive, then it can be
restarted.
Set RemainAfterExit to ensure that the unit remains active and is not
gratuitously restarted.
Drop the nonexistent systemd-start.service from the unit.
(From OE-Core rev: 618bd9a10c27d13a4420638d82618ac41935cfda)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It seems this service needs both Requires: and After: according to the definitions
in the systemd docs, else we see boot race failures.
(From OE-Core rev: d6b1809e8cd7ca78c5b442177393d4299a96ec65)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Update SRCREV to pick up:
c359546 Fix psplash-systemd failures
3c0a4f3 Remove generated psplash-poky-img.h
Also:
* set the unit type in psplash-start.service to "notify" to
complete the psplash-systemd race fix
* remove the rest of the now unnecessary has_png logic bits
* change the generated image header destination to B instead of S
since that now works after the recent makefile changes, and will
avoid unnecessarily polluting the source tree
(From OE-Core rev: 6f31da5632220a09ac65b8f361cdc9c64e64ce35)
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Image files are always generated now so make the gdk-pixbuf dependency
required.
(From OE-Core rev: f273684f75c050ce3c7c4d93d73a27c973f84df5)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Avoid:
qemux86-64 psplash-systemd[135]: Error unable to open fifo
by adding the missing dependency on /run/ where the fifo resides.
Also, psplash-systemd requires psplash-start, not the other way around
as the splash creates the fifo which the other then needs to open.
(From OE-Core rev: e31ad1b58e8dbac2e299bc0cb872c3a82db14717)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Make use of the recently added systemd support in psplash. The utility
psplash-systemd communicates boot progress to the splash screen. The
splash is disabled once systemd consideres the system fully booted
(progress is at 1.0). Note that this can take a while if systemd is
stuck on a failing unit.
This change adds two systemd services. One service starts psplash itself
(psplash-start.service) and the second service starts the helper utility
psplash-systemd (psplash-systemd.service). The units are written such
that psplash-systemd.service can be used indepenendenly. This is useful
when starting psplash in initramfs (not using systemd).
(From OE-Core rev: b4063b16082604554c7c19b369ebddd27061f372)
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The change in 5cea0448c5c75b9defc5fc2582e9b0c14e26a4e9 cases the
following to be printed during boot:
/etc/rcS.d/S00psplash.sh: line 28: [: -q: binary operator expected
and the volume is thus never mounted, neither when invoked during
boot nor shutdown/reboot.
(From OE-Core rev: 7a84ef8effcbb4770b27f0af59d84db343d05701)
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The /etc/init.d/psplash.sh will be invoked both in boot and
shutdown/reboot. And the psplash tmpfs will be mounted twice. This
will trigger a bug in umount and let the system hang when
shutdown/reboot. I already made a patch [1] to fix the issue in
umount, but there is no reason for the psplash to do the twice mount.
So also fix it.
[Yocto 13461]
[1] https://lore.kernel.org/util-linux/20190819083022.12289-1-kexin.hao@windriver.com/T/#u
(From OE-Core rev: 5cea0448c5c75b9defc5fc2582e9b0c14e26a4e9)
Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The psplash binary uses TMPDIR as directory to store the FIFO to
communicate with the psplash tools. This directory can be in any
location an init system determines to be suitable, psplash-init
uses /mnt/ for it. Rather than creating the mount directory in
the recipe, just create it in the init script itself. This allows
other init scripts to use a different location without having
an unnecessary .psplash directory in /mnt.
(From OE-Core rev: dd8c7f2466d94fd8326b962e9bcfc4f42a35da38)
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Simplify make-image-header.sh call and make sure it gets called in
the current working directory. Also check the return value of the
function call.
(From OE-Core rev: d4c55e2448053b51eb217c61328a2ca25bec0461)
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace usage of oe.utils.getstatusoutput() with direct subprocess calls.
(From OE-Core rev: 2a06abb258768504a3ad97f61c987709227d7109)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This greatly reduces the amount of recipes for which upstream
version check fails: from about 30 to about 8.
(From OE-Core rev: bb9066670a6096aa4134bebc84132b4eb3964b6d)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
psplash-init exits if there is no framebuffer device detected.
This is done to avoid the following error message from
occurring when booting up:
"Error opening /dev/fb0: No such file or directory"
(From OE-Core rev: 2348dda6b8a86352e72ef41b24df3a19e8bc98ce)
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The postinstall needs systemd-systemctl-native, mark the dependency
(From OE-Core rev: 14388db7f0b605536129c925aa667998777b4077)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.
Search made with the following regex: getVar ?\(( ?[^,()]*), True\)
(From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Latest git version contains various changes, including
fix for big endian RGB888 rendering. It also makes the patch:
"0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch"
unnecessary, as this patch has been upstreamed.
[YOCTO#7236]
(From OE-Core rev: f9450bf01a792e29bf83c820aae431483caff508)
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This function is not used anywhere except psplash-fb.c so make it static
inline function which is portable across compilers
Fixes issues like
psplash-fb.o: In function `psplash_fb_draw_rect':
|
/mnt/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-glibc/work/i586-oe-linux/psplash/0.1+gitAUTOINC+14c8f7b705-r15/git/psplash-fb.c:363:
undefined reference to `psplash_fb_plot_pixel'
(From OE-Core rev: 2429932c2dc1f81bf04f4377911094e2c8a04a19)
(From OE-Core rev: 443f9efa457ab57be8f79bccec8250678d4065c5)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need to prevent the psplash init script from running via systemd
because the script is supposed to be used by sysvinit system and it
doesn't have any real effect in a systemd based system.
(From OE-Core rev: 2e847db3ac3333a68b721b11624f4f515bda7ccf)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Completes previous commit b5292d4115a4555a66b5e35acdc67dd71fb8577f.
Updates SUMMARY[doc] (meta/conf/documentation.conf).
Changes:
- rename DESCRIPTION with length < 80 to (non present tag) SUMMARY
- drop final point character at the end of SUMMARY string
- remove trailing whitespace of SUMMARY line
Note: don't bump PR
(From OE-Core rev: ad17dfd31a2b97b3e610a0ea0889f5ecb2a63b97)
Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
During parsing this recipe builds up a list of splash image files,
however it was recording full paths to local files (i.e. the files next
to the recipe) and then in do_compile it was pointing to those instead
of the fetched files in WORKDIR. Fix it to use the fetched files which
has the added benefit of the do_compile signature not changing if the
recipe is moved around.
Fixes [YOCTO #5250].
(From OE-Core rev: f1850f9835651baee8d3a0858d00a5d22efcab19)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It's not necessary to specify the protocol parameter when it's the
default protocol for the fetcher, e.g. the default protocol for
git fetcher it git, "protocol=git" isn't needed.
(From OE-Core rev: a2bab241c64428d5109c3c5ac5de4463fbad70c5)
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
PRINC usage is removed from meta-intel, bump core PR values to ensure
no version regressions.
(From OE-Core rev: c6108ebe116eafaf0a22b5f22a3eec87c86859f4)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I mistakenly thought subprocess had getcmdstatus in python 2. It doesn't so lets
add a wrapper and have this work in both worlds.
(From OE-Core rev: 2253e9f12734c6e6aa489942b5e4628eca1fa29d)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>