2018-07-16 20:45:36 +02:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
|
|
|
|
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
2013-12-21 08:47:07 +01:00
|
|
|
|
|
|
|
|
PKG_NAME="linux"
|
|
|
|
|
PKG_ARCH="any"
|
|
|
|
|
PKG_LICENSE="GPL"
|
|
|
|
|
PKG_SITE="http://www.kernel.org"
|
2014-01-30 14:42:16 +01:00
|
|
|
PKG_DEPENDS_HOST="ccache:host"
|
2018-01-20 22:51:38 +01:00
|
|
|
PKG_DEPENDS_TARGET="toolchain cpio:host kmod:host pciutils xz:host wireless-regdb keyutils $KERNEL_EXTRA_DEPENDS_TARGET"
|
2016-09-19 11:52:51 -07:00
|
|
|
PKG_DEPENDS_INIT="toolchain"
|
2013-12-21 08:47:07 +01:00
|
|
|
PKG_NEED_UNPACK="$LINUX_DEPENDS"
|
|
|
|
|
PKG_SECTION="linux"
|
|
|
|
|
PKG_SHORTDESC="linux26: The Linux kernel 2.6 precompiled kernel binary image and modules"
|
|
|
|
|
PKG_LONGDESC="This package contains a precompiled kernel image and the modules."
|
2017-10-16 00:01:01 +02:00
|
|
|
PKG_IS_KERNEL_PKG="yes"
|
|
|
|
|
|
2018-03-07 12:10:00 +01:00
|
|
|
PKG_PATCH_DIRS="$LINUX"
|
|
|
|
|
|
2015-05-14 13:35:55 +02:00
|
|
|
case "$LINUX" in
|
2016-05-02 23:16:03 +02:00
|
|
|
amlogic-3.10)
|
2018-03-21 09:18:19 +00:00
|
|
|
PKG_VERSION="95ba9d626c0fce672caa296f5911ab9190881642"
|
|
|
|
|
PKG_SHA256="df34b086993fd3552efae92d84d28990a61a1ca79a8703a4b64241ab80e3b6db"
|
2016-09-13 00:04:28 +02:00
|
|
|
PKG_URL="https://github.com/LibreELEC/linux-amlogic/archive/$PKG_VERSION.tar.gz"
|
2018-08-26 22:52:10 +02:00
|
|
|
PKG_SOURCE_NAME="linux-$LINUX-$PKG_VERSION.tar.gz"
|
2018-04-27 15:09:48 +02:00
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET aml-dtbtools:host u-boot-tools-aml:host"
|
2018-03-06 13:20:29 +01:00
|
|
|
PKG_BUILD_PERF="no"
|
2015-05-14 13:35:55 +02:00
|
|
|
;;
|
2016-05-02 23:16:03 +02:00
|
|
|
amlogic-3.14)
|
2018-09-13 14:25:34 +02:00
|
|
|
PKG_VERSION="6d8fbb4ee61a7779ac57b5961e076f0c63ff8b65"
|
|
|
|
|
PKG_SHA256="ef05c88779c893f92e92e5315d0e5396f34c32289726c301fae7ffe8c4214227"
|
2016-09-13 00:04:28 +02:00
|
|
|
PKG_URL="https://github.com/LibreELEC/linux-amlogic/archive/$PKG_VERSION.tar.gz"
|
2018-08-26 22:52:10 +02:00
|
|
|
PKG_SOURCE_NAME="linux-$LINUX-$PKG_VERSION.tar.gz"
|
2017-07-07 20:10:51 +02:00
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET aml-dtbtools:host"
|
2018-03-06 13:20:29 +01:00
|
|
|
PKG_BUILD_PERF="no"
|
2016-05-02 23:16:03 +02:00
|
|
|
;;
|
2017-11-01 22:57:41 +01:00
|
|
|
rockchip-4.4)
|
2018-10-03 18:39:27 +02:00
|
|
|
PKG_VERSION="aa8bacf821e5c8ae6dd8cae8d64011c741659945"
|
|
|
|
|
PKG_SHA256="a2760fe89a15aa7be142fd25fb08ebd357c5d855c41f1612cf47c6e89de39bb3"
|
2017-11-01 22:57:41 +01:00
|
|
|
PKG_URL="https://github.com/rockchip-linux/kernel/archive/$PKG_VERSION.tar.gz"
|
2018-08-26 22:52:10 +02:00
|
|
|
PKG_SOURCE_NAME="linux-$LINUX-$PKG_VERSION.tar.gz"
|
2017-11-01 22:57:41 +01:00
|
|
|
;;
|
2018-03-05 13:27:49 +01:00
|
|
|
raspberrypi)
|
2018-10-06 14:06:21 +02:00
|
|
|
PKG_VERSION="3a1a31d70660f87ee7ec49ffc3811f633bb0f93d" # 4.18.11
|
|
|
|
|
PKG_SHA256="7daf570037836bf97ba61ff861a45b987cedf192bf44515dddf695824fa87ed1"
|
2018-03-05 13:27:49 +01:00
|
|
|
PKG_URL="https://github.com/raspberrypi/linux/archive/$PKG_VERSION.tar.gz"
|
2018-08-26 22:52:10 +02:00
|
|
|
PKG_SOURCE_NAME="linux-$LINUX-$PKG_VERSION.tar.gz"
|
2018-03-05 13:27:49 +01:00
|
|
|
;;
|
2015-06-11 11:23:00 +03:00
|
|
|
*)
|
2018-10-06 14:06:21 +02:00
|
|
|
PKG_VERSION="4.18.11"
|
|
|
|
|
PKG_SHA256="36d319f5a6caf5dd6ab2a4802b800799b56ef5963d742f2d147fabadf4822c8c"
|
2017-09-04 23:43:31 +01:00
|
|
|
PKG_URL="https://www.kernel.org/pub/linux/kernel/v4.x/$PKG_NAME-$PKG_VERSION.tar.xz"
|
2016-12-06 18:25:25 +00:00
|
|
|
PKG_PATCH_DIRS="default"
|
2015-06-11 11:23:00 +03:00
|
|
|
;;
|
2015-05-14 13:35:55 +02:00
|
|
|
esac
|
2013-12-21 08:47:07 +01:00
|
|
|
|
2018-02-08 04:02:29 +00:00
|
|
|
PKG_KERNEL_CFG_FILE=$(kernel_config_path)
|
|
|
|
|
|
2018-06-14 07:42:40 +02:00
|
|
|
if [ -n "$KERNEL_LINARO_TOOLCHAIN" ]; then
|
|
|
|
|
PKG_DEPENDS_HOST="$PKG_DEPENDS_HOST gcc-linaro-$KERNEL_LINARO_TOOLCHAIN:host"
|
|
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET gcc-linaro-$KERNEL_LINARO_TOOLCHAIN:host"
|
2016-11-24 09:36:06 +01:00
|
|
|
HEADERS_ARCH=$TARGET_ARCH
|
|
|
|
|
fi
|
|
|
|
|
|
2018-04-25 16:12:32 +02:00
|
|
|
if [ "$PKG_BUILD_PERF" != "no" ] && grep -q ^CONFIG_PERF_EVENTS= $PKG_KERNEL_CFG_FILE ; then
|
2018-02-12 21:29:18 +01:00
|
|
|
PKG_BUILD_PERF="yes"
|
|
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET binutils elfutils libunwind zlib openssl"
|
|
|
|
|
fi
|
|
|
|
|
|
2016-09-19 11:52:51 -07:00
|
|
|
if [ "$TARGET_ARCH" = "x86_64" ]; then
|
2018-06-27 09:40:03 +01:00
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET intel-ucode:host kernel-firmware elfutils:host"
|
2016-09-19 11:52:51 -07:00
|
|
|
fi
|
|
|
|
|
|
2015-03-13 15:37:57 +01:00
|
|
|
if [ "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
|
|
|
|
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET mkbootimg:host"
|
|
|
|
|
fi
|
|
|
|
|
|
2014-01-05 20:16:11 +02:00
|
|
|
post_patch() {
|
2018-02-05 15:35:31 +01:00
|
|
|
cp $PKG_KERNEL_CFG_FILE $PKG_BUILD/.config
|
2015-03-13 15:37:57 +01:00
|
|
|
if [ ! "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
2017-02-17 06:40:16 +00:00
|
|
|
sed -i -e "s|^CONFIG_INITRAMFS_SOURCE=.*$|CONFIG_INITRAMFS_SOURCE=\"$BUILD/image/initramfs.cpio\"|" $PKG_BUILD/.config
|
2017-11-13 20:50:55 -08:00
|
|
|
sed -i -e '/^CONFIG_INITRAMFS_SOURCE=*./ a CONFIG_INITRAMFS_ROOT_UID=0\nCONFIG_INITRAMFS_ROOT_GID=0' $PKG_BUILD/.config
|
2015-03-13 15:37:57 +01:00
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
|
2014-10-29 01:52:53 +01:00
|
|
|
# set default hostname based on $DISTRONAME
|
|
|
|
|
sed -i -e "s|@DISTRONAME@|$DISTRONAME|g" $PKG_BUILD/.config
|
|
|
|
|
|
2013-12-21 08:47:07 +01:00
|
|
|
# disable swap support if not enabled
|
|
|
|
|
if [ ! "$SWAP_SUPPORT" = yes ]; then
|
|
|
|
|
sed -i -e "s|^CONFIG_SWAP=.*$|# CONFIG_SWAP is not set|" $PKG_BUILD/.config
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# disable nfs support if not enabled
|
|
|
|
|
if [ ! "$NFS_SUPPORT" = yes ]; then
|
|
|
|
|
sed -i -e "s|^CONFIG_NFS_FS=.*$|# CONFIG_NFS_FS is not set|" $PKG_BUILD/.config
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# disable cifs support if not enabled
|
|
|
|
|
if [ ! "$SAMBA_SUPPORT" = yes ]; then
|
|
|
|
|
sed -i -e "s|^CONFIG_CIFS=.*$|# CONFIG_CIFS is not set|" $PKG_BUILD/.config
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# disable iscsi support if not enabled
|
|
|
|
|
if [ ! "$ISCSI_SUPPORT" = yes ]; then
|
|
|
|
|
sed -i -e "s|^CONFIG_SCSI_ISCSI_ATTRS=.*$|# CONFIG_SCSI_ISCSI_ATTRS is not set|" $PKG_BUILD/.config
|
|
|
|
|
sed -i -e "s|^CONFIG_ISCSI_TCP=.*$|# CONFIG_ISCSI_TCP is not set|" $PKG_BUILD/.config
|
|
|
|
|
sed -i -e "s|^CONFIG_ISCSI_BOOT_SYSFS=.*$|# CONFIG_ISCSI_BOOT_SYSFS is not set|" $PKG_BUILD/.config
|
|
|
|
|
sed -i -e "s|^CONFIG_ISCSI_IBFT_FIND=.*$|# CONFIG_ISCSI_IBFT_FIND is not set|" $PKG_BUILD/.config
|
|
|
|
|
sed -i -e "s|^CONFIG_ISCSI_IBFT=.*$|# CONFIG_ISCSI_IBFT is not set|" $PKG_BUILD/.config
|
|
|
|
|
fi
|
|
|
|
|
|
2017-03-14 12:06:20 -07:00
|
|
|
# install extra dts files
|
2017-03-27 17:57:15 +01:00
|
|
|
for f in $PROJECT_DIR/$PROJECT/config/*-overlay.dts; do
|
2017-07-03 19:13:58 +01:00
|
|
|
[ -f "$f" ] && cp -v $f $PKG_BUILD/arch/$TARGET_KERNEL_ARCH/boot/dts/overlays || true
|
2017-03-27 17:57:15 +01:00
|
|
|
done
|
|
|
|
|
if [ -n "$DEVICE" ]; then
|
|
|
|
|
for f in $PROJECT_DIR/$PROJECT/devices/$DEVICE/config/*-overlay.dts; do
|
2017-07-03 19:13:58 +01:00
|
|
|
[ -f "$f" ] && cp -v $f $PKG_BUILD/arch/$TARGET_KERNEL_ARCH/boot/dts/overlays || true
|
2017-03-27 17:57:15 +01:00
|
|
|
done
|
|
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
}
|
|
|
|
|
|
2018-06-15 15:42:51 +02:00
|
|
|
make_host() {
|
|
|
|
|
make \
|
|
|
|
|
ARCH=${HEADERS_ARCH:-$TARGET_KERNEL_ARCH} \
|
|
|
|
|
HOSTCC="$TOOLCHAIN/bin/host-gcc" \
|
|
|
|
|
HOSTCXX="$TOOLCHAIN/bin/host-g++" \
|
|
|
|
|
HOSTCFLAGS="$HOST_CFLAGS" \
|
|
|
|
|
HOSTCXXFLAGS="$HOST_CXXFLAGS" \
|
|
|
|
|
HOSTLDFLAGS="$HOST_LDFLAGS" \
|
|
|
|
|
headers_check
|
|
|
|
|
}
|
|
|
|
|
|
2013-12-21 08:47:07 +01:00
|
|
|
makeinstall_host() {
|
2018-06-15 15:42:51 +02:00
|
|
|
make \
|
|
|
|
|
ARCH=${HEADERS_ARCH:-$TARGET_KERNEL_ARCH} \
|
|
|
|
|
HOSTCC="$TOOLCHAIN/bin/host-gcc" \
|
|
|
|
|
HOSTCXX="$TOOLCHAIN/bin/host-g++" \
|
|
|
|
|
HOSTCFLAGS="$HOST_CFLAGS" \
|
|
|
|
|
HOSTCXXFLAGS="$HOST_CXXFLAGS" \
|
|
|
|
|
HOSTLDFLAGS="$HOST_LDFLAGS" \
|
|
|
|
|
INSTALL_HDR_PATH=dest \
|
2018-06-11 04:05:01 +01:00
|
|
|
headers_install
|
2013-12-21 08:47:07 +01:00
|
|
|
mkdir -p $SYSROOT_PREFIX/usr/include
|
|
|
|
|
cp -R dest/include/* $SYSROOT_PREFIX/usr/include
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pre_make_target() {
|
2016-09-19 11:52:51 -07:00
|
|
|
if [ "$TARGET_ARCH" = "x86_64" ]; then
|
|
|
|
|
# copy some extra firmware to linux tree
|
2017-02-17 06:40:16 +00:00
|
|
|
mkdir -p $PKG_BUILD/external-firmware
|
2017-08-01 00:06:29 +01:00
|
|
|
cp -a $(get_build_dir kernel-firmware)/{amdgpu,amd-ucode,i915,radeon,e100,rtl_nic} $PKG_BUILD/external-firmware
|
2016-09-19 11:52:51 -07:00
|
|
|
|
2017-07-19 21:51:11 +01:00
|
|
|
cp -a $(get_build_dir intel-ucode)/intel-ucode $PKG_BUILD/external-firmware
|
2016-09-19 11:52:51 -07:00
|
|
|
|
2017-07-19 21:51:11 +01:00
|
|
|
FW_LIST="$(find $PKG_BUILD/external-firmware \( -type f -o -type l \) \( -iname '*.bin' -o -iname '*.fw' -o -path '*/intel-ucode/*' \) | sed 's|.*external-firmware/||' | sort | xargs)"
|
2017-02-17 06:40:16 +00:00
|
|
|
sed -i "s|CONFIG_EXTRA_FIRMWARE=.*|CONFIG_EXTRA_FIRMWARE=\"${FW_LIST}\"|" $PKG_BUILD/.config
|
2016-09-19 11:52:51 -07:00
|
|
|
fi
|
|
|
|
|
|
2018-06-11 04:05:01 +01:00
|
|
|
kernel_make oldconfig
|
2016-09-19 11:52:51 -07:00
|
|
|
|
2018-06-10 17:22:19 +01:00
|
|
|
# regdb (backward compatability with pre-4.15 kernels)
|
|
|
|
|
if grep -q ^CONFIG_CFG80211_INTERNAL_REGDB= $PKG_BUILD/.config ; then
|
|
|
|
|
cp $(get_build_dir wireless-regdb)/db.txt $PKG_BUILD/net/wireless/db.txt
|
|
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
make_target() {
|
2018-06-11 04:05:01 +01:00
|
|
|
kernel_make modules
|
|
|
|
|
kernel_make INSTALL_MOD_PATH=$INSTALL/$(get_kernel_overlay_dir) modules_install
|
2017-09-05 09:17:30 +02:00
|
|
|
rm -f $INSTALL/$(get_kernel_overlay_dir)/lib/modules/*/build
|
|
|
|
|
rm -f $INSTALL/$(get_kernel_overlay_dir)/lib/modules/*/source
|
2013-12-21 08:47:07 +01:00
|
|
|
|
2018-02-05 15:38:18 +01:00
|
|
|
if [ "$PKG_BUILD_PERF" = "yes" ] ; then
|
|
|
|
|
( cd tools/perf
|
2018-02-14 13:37:23 +01:00
|
|
|
|
|
|
|
|
# arch specific perf build args
|
|
|
|
|
case "$TARGET_ARCH" in
|
|
|
|
|
x86_64)
|
|
|
|
|
PERF_BUILD_ARGS="ARCH=x86"
|
|
|
|
|
;;
|
|
|
|
|
aarch64)
|
|
|
|
|
PERF_BUILD_ARGS="ARCH=arm64"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
PERF_BUILD_ARGS="ARCH=$TARGET_ARCH"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
|
2018-02-05 15:38:18 +01:00
|
|
|
WERROR=0 \
|
|
|
|
|
NO_LIBPERL=1 \
|
|
|
|
|
NO_LIBPYTHON=1 \
|
|
|
|
|
NO_SLANG=1 \
|
|
|
|
|
NO_GTK2=1 \
|
|
|
|
|
NO_LIBNUMA=1 \
|
|
|
|
|
NO_LIBAUDIT=1 \
|
|
|
|
|
NO_LZMA=1 \
|
|
|
|
|
NO_SDT=1 \
|
2018-02-14 13:37:23 +01:00
|
|
|
LDFLAGS="$LDFLAGS -ldw -ldwfl -lebl -lelf -ldl -lz" \
|
2018-02-05 15:38:18 +01:00
|
|
|
EXTRA_PERFLIBS="-lebl" \
|
2018-02-14 13:37:23 +01:00
|
|
|
CROSS_COMPILE="$TARGET_PREFIX" \
|
|
|
|
|
JOBS="$CONCURRENCY_MAKE_LEVEL" \
|
|
|
|
|
make $PERF_BUILD_ARGS
|
2018-02-05 15:38:18 +01:00
|
|
|
mkdir -p $INSTALL/usr/bin
|
|
|
|
|
cp perf $INSTALL/usr/bin
|
|
|
|
|
)
|
|
|
|
|
fi
|
|
|
|
|
|
2013-12-21 08:47:07 +01:00
|
|
|
( cd $ROOT
|
2017-02-17 06:40:16 +00:00
|
|
|
rm -rf $BUILD/initramfs
|
2013-12-21 08:47:07 +01:00
|
|
|
$SCRIPTS/install initramfs
|
|
|
|
|
)
|
|
|
|
|
|
2014-03-03 13:43:08 +01:00
|
|
|
if [ "$BOOTLOADER" = "u-boot" -a -n "$KERNEL_UBOOT_EXTRA_TARGET" ]; then
|
|
|
|
|
for extra_target in "$KERNEL_UBOOT_EXTRA_TARGET"; do
|
2018-06-11 04:05:01 +01:00
|
|
|
kernel_make $extra_target
|
2014-03-03 13:43:08 +01:00
|
|
|
done
|
|
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
|
2018-08-23 13:40:39 +02:00
|
|
|
# the modules target is required to get a proper Module.symvers
|
|
|
|
|
# file with symbols from built-in and external modules.
|
|
|
|
|
# Without that it'll contain only the symbols from the kernel
|
|
|
|
|
kernel_make $KERNEL_TARGET $KERNEL_MAKE_EXTRACMD modules
|
2015-03-13 15:37:57 +01:00
|
|
|
|
|
|
|
|
if [ "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
2017-07-07 20:10:51 +02:00
|
|
|
DTB_BLOBS=($(ls arch/$TARGET_KERNEL_ARCH/boot/dts/amlogic/*.dtb 2>/dev/null || true))
|
|
|
|
|
DTB_BLOBS_COUNT="${#DTB_BLOBS[@]}"
|
|
|
|
|
DTB_BLOB_OUTPUT="arch/$TARGET_KERNEL_ARCH/boot/dtb.img"
|
|
|
|
|
ANDROID_BOOTIMG_SECOND="--second $DTB_BLOB_OUTPUT"
|
|
|
|
|
|
|
|
|
|
if [ "$DTB_BLOBS_COUNT" -gt 1 ]; then
|
|
|
|
|
$TOOLCHAIN/bin/dtbTool -o arch/$TARGET_KERNEL_ARCH/boot/dtb.img -p scripts/dtc/ arch/$TARGET_KERNEL_ARCH/boot/dts/amlogic/
|
|
|
|
|
elif [ "$DTB_BLOBS_COUNT" -eq 1 ]; then
|
|
|
|
|
cp -PR $DTB_BLOBS $DTB_BLOB_OUTPUT
|
|
|
|
|
else
|
|
|
|
|
ANDROID_BOOTIMG_SECOND=""
|
|
|
|
|
fi
|
|
|
|
|
|
2017-02-17 06:40:16 +00:00
|
|
|
LDFLAGS="" mkbootimg --kernel arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_TARGET --ramdisk $BUILD/image/initramfs.cpio \
|
2017-07-07 20:10:51 +02:00
|
|
|
$ANDROID_BOOTIMG_SECOND $ANDROID_BOOTIMG_OPTIONS --output arch/$TARGET_KERNEL_ARCH/boot/boot.img
|
|
|
|
|
|
2016-03-01 21:10:56 +01:00
|
|
|
mv -f arch/$TARGET_KERNEL_ARCH/boot/boot.img arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_TARGET
|
2017-07-07 20:10:51 +02:00
|
|
|
|
2015-03-13 15:37:57 +01:00
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
makeinstall_target() {
|
2014-03-03 13:43:08 +01:00
|
|
|
if [ "$BOOTLOADER" = "u-boot" ]; then
|
2014-04-24 17:21:35 +02:00
|
|
|
mkdir -p $INSTALL/usr/share/bootloader
|
2018-01-20 23:11:52 +01:00
|
|
|
if [ -d arch/$TARGET_KERNEL_ARCH/boot/dts/amlogic -a -f arch/$TARGET_KERNEL_ARCH/boot/dtb.img ]; then
|
|
|
|
|
cp arch/$TARGET_KERNEL_ARCH/boot/dtb.img $INSTALL/usr/share/bootloader/dtb.img 2>/dev/null || :
|
2018-02-20 20:19:31 +01:00
|
|
|
else
|
|
|
|
|
for dtb in arch/$TARGET_KERNEL_ARCH/boot/dts/*.dtb arch/$TARGET_KERNEL_ARCH/boot/dts/*/*.dtb; do
|
|
|
|
|
if [ -f $dtb ]; then
|
|
|
|
|
cp -v $dtb $INSTALL/usr/share/bootloader
|
|
|
|
|
fi
|
|
|
|
|
done
|
2016-07-18 23:21:08 +02:00
|
|
|
fi
|
2015-01-25 13:50:44 +01:00
|
|
|
elif [ "$BOOTLOADER" = "bcm2835-bootloader" ]; then
|
|
|
|
|
mkdir -p $INSTALL/usr/share/bootloader/overlays
|
2018-03-08 20:31:03 +00:00
|
|
|
|
|
|
|
|
# install platform dtbs, but remove upstream kernel dtbs (i.e. without downstream
|
|
|
|
|
# drivers and decent USB support) as these are not required by LibreELEC
|
2016-03-01 19:58:31 +01:00
|
|
|
cp -p arch/$TARGET_KERNEL_ARCH/boot/dts/*.dtb $INSTALL/usr/share/bootloader
|
2018-03-08 20:31:03 +00:00
|
|
|
rm -f $INSTALL/usr/share/bootloader/bcm283*.dtb
|
|
|
|
|
|
|
|
|
|
# install overlay dtbs
|
2016-03-14 15:48:24 -07:00
|
|
|
for dtb in arch/$TARGET_KERNEL_ARCH/boot/dts/overlays/*.dtbo; do
|
2015-06-02 14:49:13 +01:00
|
|
|
cp $dtb $INSTALL/usr/share/bootloader/overlays 2>/dev/null || :
|
2015-01-25 13:50:44 +01:00
|
|
|
done
|
2016-03-01 19:58:31 +01:00
|
|
|
cp -p arch/$TARGET_KERNEL_ARCH/boot/dts/overlays/README $INSTALL/usr/share/bootloader/overlays
|
2014-03-03 13:43:08 +01:00
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
make_init() {
|
|
|
|
|
: # reuse make_target()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
makeinstall_init() {
|
|
|
|
|
if [ -n "$INITRAMFS_MODULES" ]; then
|
|
|
|
|
mkdir -p $INSTALL/etc
|
2016-12-04 13:23:44 -08:00
|
|
|
mkdir -p $INSTALL/usr/lib/modules
|
2013-12-21 08:47:07 +01:00
|
|
|
|
|
|
|
|
for i in $INITRAMFS_MODULES; do
|
2017-09-05 09:17:30 +02:00
|
|
|
module=`find .install_pkg/$(get_full_module_dir)/kernel -name $i.ko`
|
2013-12-21 08:47:07 +01:00
|
|
|
if [ -n "$module" ]; then
|
|
|
|
|
echo $i >> $INSTALL/etc/modules
|
2016-12-04 13:23:44 -08:00
|
|
|
cp $module $INSTALL/usr/lib/modules/`basename $module`
|
2013-12-21 08:47:07 +01:00
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ "$UVESAFB_SUPPORT" = yes ]; then
|
2016-12-04 13:23:44 -08:00
|
|
|
mkdir -p $INSTALL/usr/lib/modules
|
2017-09-05 09:17:30 +02:00
|
|
|
uvesafb=`find .install_pkg/$(get_full_module_dir)/kernel -name uvesafb.ko`
|
2016-12-04 13:23:44 -08:00
|
|
|
cp $uvesafb $INSTALL/usr/lib/modules/`basename $uvesafb`
|
2013-12-21 08:47:07 +01:00
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
post_install() {
|
2017-09-05 09:17:30 +02:00
|
|
|
mkdir -p $INSTALL/$(get_full_firmware_dir)/
|
|
|
|
|
ln -sf /storage/.config/firmware/ $INSTALL/$(get_full_firmware_dir)/updates
|
2016-02-28 01:55:02 +01:00
|
|
|
|
|
|
|
|
# bluez looks in /etc/firmware/
|
2017-09-05 09:17:30 +02:00
|
|
|
ln -sf /$(get_full_firmware_dir)/ $INSTALL/etc/firmware
|
2018-06-10 17:22:19 +01:00
|
|
|
|
|
|
|
|
# regdb and signature is now loaded as firmware by 4.15+
|
|
|
|
|
if grep -q ^CONFIG_CFG80211_REQUIRE_SIGNED_REGDB= $PKG_BUILD/.config; then
|
|
|
|
|
cp $(get_build_dir wireless-regdb)/regulatory.db{,.p7s} $INSTALL/$(get_full_firmware_dir)
|
|
|
|
|
fi
|
2013-12-21 08:47:07 +01:00
|
|
|
}
|