Build the open ath9k firmwares into the kernel image

Make the ath9k firmwares before the kernel so it can be built in
Commented out the code that copies the firmwares into the filesystem
This fixes #103. Since the firmware is built into the kernel image,
the firmware is available during boot time.
This commit is contained in:
SolidHal 2019-07-13 22:53:46 -05:00
parent 61aa9090db
commit 7a671cb692
3 changed files with 12 additions and 13 deletions

View File

@ -1129,7 +1129,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# Firmware loader # Firmware loader
# #
CONFIG_FW_LOADER=y CONFIG_FW_LOADER=y
CONFIG_EXTRA_FIRMWARE="" CONFIG_EXTRA_FIRMWARE="htc_9271.fw htc_7010.fw"
CONFIG_EXTRA_FIRMWARE_DIR="../open-ath9k-htc-firmware/target_firmware"
# CONFIG_FW_LOADER_USER_HELPER is not set # CONFIG_FW_LOADER_USER_HELPER is not set
CONFIG_WANT_DEV_COREDUMP=y CONFIG_WANT_DEV_COREDUMP=y
CONFIG_ALLOW_DEV_COREDUMP=y CONFIG_ALLOW_DEV_COREDUMP=y

View File

@ -28,10 +28,15 @@ TEST_PATCHES=false
ROOT_DIR=`pwd` ROOT_DIR=`pwd`
RESOURCES=$ROOT_DIR/resources/BuildResources RESOURCES=$ROOT_DIR/resources/BuildResources
[ ! -d build ] && mkdir build [ ! -d build ] && mkdir build
cd build cd build
# build AR9271 firmware
[ ! -d open-ath9k-htc-firmware ] && git clone --depth 1 https://github.com/qca/open-ath9k-htc-firmware.git
cd open-ath9k-htc-firmware
make toolchain
make -C target_firmware
cd ..
# build Linux-libre, with ath9k_htc # build Linux-libre, with ath9k_htc
[ ! -f linux-libre-$KVER-gnu.tar.lz ] && wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$KVER-gnu/linux-libre-$KVER-gnu.tar.lz [ ! -f linux-libre-$KVER-gnu.tar.lz ] && wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$KVER-gnu/linux-libre-$KVER-gnu.tar.lz
[ ! -d linux-$KVER ] && tar --lzip -xvf linux-libre-$KVER-gnu.tar.lz && FRESH=true [ ! -d linux-$KVER ] && tar --lzip -xvf linux-libre-$KVER-gnu.tar.lz && FRESH=true
@ -59,12 +64,4 @@ vbutil_kernel --pack vmlinux.kpart \
--config $RESOURCES/cmdline \ --config $RESOURCES/cmdline \
--bootloader bootloader.bin --bootloader bootloader.bin
cd .. cd ..
# build AR9271 firmware
[ ! -d open-ath9k-htc-firmware ] && git clone --depth 1 https://github.com/qca/open-ath9k-htc-firmware.git
cd open-ath9k-htc-firmware
make toolchain
make -C target_firmware
cd ..
cd $ROOT_DIR cd $ROOT_DIR

View File

@ -60,8 +60,9 @@ mount -o noatime ${outdev}p2 $outmnt
dd if=$build_resources/blank_kernel of=${outdev}p1 conv=notrunc dd if=$build_resources/blank_kernel of=${outdev}p1 conv=notrunc
dd if=build/linux-$KVER/vmlinux.kpart of=${outdev}p1 conv=notrunc dd if=build/linux-$KVER/vmlinux.kpart of=${outdev}p1 conv=notrunc
make -C build/linux-$KVER ARCH=arm INSTALL_MOD_PATH=$outmnt modules_install make -C build/linux-$KVER ARCH=arm INSTALL_MOD_PATH=$outmnt modules_install
install -D -m 644 build/open-ath9k-htc-firmware/target_firmware/htc_9271.fw $outmnt/lib/firmware/ath9k_htc/htc_9271-1.4.0.fw #Dont put ath firmware in filesystem, it is now built into the kernel image
install -D -m 644 build/open-ath9k-htc-firmware/target_firmware/htc_7010.fw $outmnt/lib/firmware/ath9k_htc/htc_7010-1.4.0.fw # install -D -m 644 build/open-ath9k-htc-firmware/target_firmware/htc_9271.fw $outmnt/lib/firmware/ath9k_htc/htc_9271-1.4.0.fw
# install -D -m 644 build/open-ath9k-htc-firmware/target_firmware/htc_7010.fw $outmnt/lib/firmware/ath9k_htc/htc_7010-1.4.0.fw
umount -l $outmnt > /dev/null 2>&1 umount -l $outmnt > /dev/null 2>&1
rmdir $outmnt > /dev/null 2>&1 rmdir $outmnt > /dev/null 2>&1