RTL drivers require some fixes for Linux 5.15
Systemd has also some issues due to changes in headers (on 5.15)
While at this, bump Mesa minor release for some extra panfrost fixes
When running kernel-overlays-setup as a systemd service we have
a short window where /lib/firmware isn't available.
This causes drm edid override to occasionally fail if the edid file
is requested between switching to sysroot and completion of the
kernel-overlays-setup script.
Setting up firmware and module overlays in init, before switching
to sysroot, closes the gap and also has the benefit that we no longer
need to care about the rather tedious systemd unit ordering.
Signed-off-by: Matthias Reichl <hias@horus.com>
kernel-overlays.service needs to be ordered before the modprobe@
instances, which were introduced in systemd 245, otherwise
modprobe@drm.service can run before /lib/firmware exists and
edid-override will fail.
Fix that by adding modprobe@.service template drop-in to order it
after kernel-overlays.service
Signed-off-by: Matthias Reichl <hias@horus.com>
This fixes systemd hanging on boot if no LAN cable is plugged
in (and thus time not set from NTP) with one core spinning at
100% CPU load.
Signed-off-by: Matthias Reichl <hias@horus.com>
This fixes partitions not showing up in kodi's "Files"
and "Media sources" sections.
See https://github.com/systemd/systemd/pull/17267
Signed-off-by: Matthias Reichl <hias@horus.com>
Use systemd-hwdb instead of deprecated udevadm hwdb command
and fix ordering - it should be pulled in by sysinit.target,
not basic.target.
Signed-off-by: Matthias Reichl <hias@horus.com>
Create the module and firmware symlink trees in /run/kernel-overlays
instead of /var/lib as recommended by FHS 3.0. This also allows us
to drop the After=var.mount ordering in the systemd service.
Signed-off-by: Matthias Reichl <hias@horus.com>
The bluetooth remote configuration (missing OK button on o2.cz
remote) can be useful for all LE installations so make it globally
available.
Signed-off-by: Matthias Reichl <hias@horus.com>
connman's NTP client can't be used if it's not managing the network
interface so use systemd's timesyncd as we already build it.
timesyncd is automatically configured to use the NTP servers provided
by kernel ip config, if they are missing the default fallback NTP
servers (currently the ones from Google) are used.
Users can also provide timesyncd configuration files via
/storage/.config/timesyncd.conf.d/ eg to change the (fallback) servers.
Signed-off-by: Matthias Reichl <hias@horus.com>
Setup system hostname, /etc/resolv.conf and /etc/hosts in a service
that can be run independently of connman.
The volatile etc files are created in /run/libreelec instead of
/run/connman so they can be modified similarily to standard linux
installations with a writable /etc. Connman can then hook into
that and move resolv.conf management to /run/connman/resolv.conf when
it's started.
If kernel IP configuration is used the resolv info from the kernel
will be used to create resolv.conf. Users can also provide their
own resolv.conf file in /storage/.config/resolv.conf which takes
precedence over ther kernel info. If no resolv.conf info is present
a fallback with use the Google nameservers is created (as before).
Loopback network interface setup has been removed, this is already
set up by systemd.
Signed-off-by: Matthias Reichl <hias@horus.com>
/storage will be unmounted by systemd-shutdown, like /flash.
As the squashfs root has several symlinks to /storage it
should not be unmounted during the normal shutdown process.
This prevents the symlinked files/directories vanishing too early
and also removes the "unmount /storage failed" messages when
netbooting.
Signed-off-by: Matthias Reichl <hias@horus.com>
This removes the root mount dependency on systemd-journal.socket
and fixes drop-in loading for storage.mount.
See https://github.com/systemd/systemd/pull/14040
Signed-off-by: Matthias Reichl <hias@horus.com>
With systemd-debug-generator installed we can use the standard
"systemd.debug_shell" kernel command line parameter to enable the debug
shell. Since systemd 243 the tty can also be changed by appending
"=ttyXYZ" to that parameter.
Use this method instead of enabling the debug shell on all systems
by default.
Signed-off-by: Matthias Reichl <hias@horus.com>
add drop-in to set DefaultDependencies=no on /flash mount. This
removes the Conflicts=umount.target and /flash won't be unmounted
by systemd. systemd-shutdown will then later remount it ro and
try to unmount it.
Signed-off-by: Matthias Reichl <hias@horus.com>