mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-30 14:16:40 +00:00
linux: move .config/firmware handling to kernel overlay system
Creating an updates symlink to /storage/.config/firmware in the kernel firmware directory makes it impossible to add firmware overlays with an updates folder. Furthermore bluez/hciattach only looks for firmware files directly in the /lib/firmware directory and ignores the /lib/firmware/updates directory. So adding BT firmware via .config/firmware didn't work. Solve this by adding files from /storage/.config/firmware as the last step in kernel overlays setup so firmware files from there will show up directly under /lib/firmware and override other firmware files installed by the system and kernel overlays. Signed-off-by: Matthias Reichl <hias@horus.com>
This commit is contained in:
parent
903346fe98
commit
315421e634
@ -296,7 +296,6 @@ makeinstall_init() {
|
|||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
mkdir -p $INSTALL/$(get_full_firmware_dir)/
|
mkdir -p $INSTALL/$(get_full_firmware_dir)/
|
||||||
ln -sf /storage/.config/firmware/ $INSTALL/$(get_full_firmware_dir)/updates
|
|
||||||
|
|
||||||
# regdb and signature is now loaded as firmware by 4.15+
|
# regdb and signature is now loaded as firmware by 4.15+
|
||||||
if grep -q ^CONFIG_CFG80211_REQUIRE_SIGNED_REGDB= $PKG_BUILD/.config; then
|
if grep -q ^CONFIG_CFG80211_REQUIRE_SIGNED_REGDB= $PKG_BUILD/.config; then
|
||||||
|
@ -8,6 +8,7 @@ OVERLAY_CONFIG_DIR=/storage/.cache/kernel-overlays
|
|||||||
KVER=$(uname -r)
|
KVER=$(uname -r)
|
||||||
MODULES_DIR="/var/lib/modules/${KVER}"
|
MODULES_DIR="/var/lib/modules/${KVER}"
|
||||||
FIRMWARE_DIR="/var/lib/firmware"
|
FIRMWARE_DIR="/var/lib/firmware"
|
||||||
|
USER_FIRMWARE_DIR="/storage/.config/firmware"
|
||||||
|
|
||||||
mkdir -p "${MODULES_DIR}"
|
mkdir -p "${MODULES_DIR}"
|
||||||
mkdir -p "${FIRMWARE_DIR}"
|
mkdir -p "${FIRMWARE_DIR}"
|
||||||
@ -73,4 +74,12 @@ if [ -d "${OVERLAY_CONFIG_DIR}" ] ; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -d "${USER_FIRMWARE_DIR}" -a -n "$(ls ${USER_FIRMWARE_DIR})" ] ; then
|
||||||
|
if cp -rfs "${USER_FIRMWARE_DIR}"/* "${FIRMWARE_DIR}" ; then
|
||||||
|
log "added firmware from ${USER_FIRMWARE_DIR}"
|
||||||
|
else
|
||||||
|
log "failed to add firmware from ${USER_FIRMWARE_DIR}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
log "done"
|
log "done"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user