Commit Graph

17 Commits

Author SHA1 Message Date
Chen Qi
a0614c91a7 psplash: consider the situation of psplash not exist for systemd
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: c1d57880c786b3650f29afb89530941797e85560)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7a62ff9ed39c179d2b9b0c40f4f8423ced413063)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-13 15:23:34 +00:00
Trevor Woerner
a12ba3994d PSPLASH_FIFO_DIR: refactor
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>
2021-01-05 13:48:41 +00:00
Alex Kiernan
ce987c6ae8 psplash: Set RemainAfterExit on systemd units
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>
2020-03-29 12:05:31 +01:00
Richard Purdie
92e172b5b4 systemd: Fix service file for race issues
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>
2020-03-03 13:06:29 +00:00
Scott Murray
bd5635d7ae psplash: update to latest git revision and clean up
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>
2020-03-03 13:06:28 +00:00
Richard Purdie
950615f34d psplash: Fix systemd service dependencies
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>
2020-02-25 10:41:22 +00:00
Stefan Agner
9ae26cfeea psplash: add systemd support
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>
2020-02-25 10:41:22 +00:00
Torbjörn Svensson
8ea756fbdc psplash: Do mount psplash tmpfs if not mounted
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>
2019-11-05 10:37:11 +00:00
Kevin Hao
f45a48887f psplash: Avoid mount the psplash tmpfs twice
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>
2019-08-21 15:29:02 +01:00
Stefan Agner
dda8f1bab2 psplash: create psplash tmpfs mount directory in psplash-init
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>
2019-07-22 17:31:04 +01:00
Mark Hatle
499d109529 psplash: Initialize psplash only if a framebuffer exists
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>
2017-09-11 17:30:28 +01:00
Juro Bystricky
934e486af6 psplash: update to latest git version
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>
2015-12-01 21:32:13 +00:00
Khem Raj
9d46958079 psplash: Turn psplash_fb_plot_pixel() into static inline
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>
2015-08-30 12:35:54 +01:00
Andrea Adami
f7d7ebc497 psplash: use default OE vga logo (from kernel bootlogo)
* this resolution allows to use one single logo

(From OE-Core rev: a6471990e9d9cd71ca797dddf0db1e52eaa9a935)

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:29:28 +01:00
Paul Eggleton
5dc51532b6 psplash: use OpenEmbedded logo
Use the OpenEmbedded logo for psplash in OE-Core.

(From OE-Core rev: cd321b83c78c00003f1ce06ac3ca85647cf9df51)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24 17:01:44 +00:00
Mei Lei
e5a629f314 psplash_svn.bb: Change poky boot logo to yocto logo
Change the boot logo to yocto logo

Signed-off-by:Mei Lei <lei.mei@intel.com>
2011-01-18 17:54:52 +00:00
Richard Purdie
29d6678fd5 Major layout change to the packages directory
Having one monolithic packages directory makes it hard to find things
and is generally overwhelming. This commit splits it into several
logical sections roughly based on function, recipes.txt gives more
information about the classifications used.

The opportunity is also used to switch from "packages" to "recipes"
as used in OpenEmbedded as the term "packages" can be confusing to
people and has many different meanings.

Not all recipes have been classified yet, this is just a first pass
at separating things out. Some packages are moved to meta-extras as
they're no longer actively used or maintained.

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-27 15:29:45 +01:00