C
cyclon1978
Fortgeschrittenes Mitglied
- 521
Anleitung zum Kompilieren des X5 Plus Originalkernels.
"Hard way" - BQ git tags auschecken nach BQ Anleitung.
"Easy way":
neues Basisverzeichnis anlegen und rein gehen.
git clone GitHub - cyclon1978/aquaris-X5-plus kernel
git clone GitHub - bq/wlan_module_qcom: Wlan module source code for bq qcom devices wlan
git clone platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 - Git at Google
cd wlan
git checkout 1.5.1_20161117-1500
cd ..
mkdir KERNEL_OUT
mkdir kernel-assembly
make -C kernel O=../KERNEL_OUT ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- gohan_defconfig
make O=../KERNEL_OUT -C kernel ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- -j 2
# make wlan module
make -C kernel M=../wlan O=../KERNEL_OUT ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- modules WLAN_ROOT=../wlan/ MODNAME=wlan BOARD_PLATFORM=msm8952 CONFIG_PRONTO_WLAN=m
# strip module of debug code
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./wlan/wlan.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/crypto/ansi_cprng.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/arch/arm/mach-msm/dma_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/evbug.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_axis.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_event.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_input.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_matrix.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_output.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/gud/mcDrvModule.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/gud/mcKernelApi.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/mmc/card/mmc_block_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/mmc/card/mmc_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/arch/arm/oprofile/oprofile.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/spi/spidev.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/block/test-iosched.ko
# sign module
./kernel/scripts/sign-file sha512 ./KERNEL_OUT/signing_key.priv ./KERNEL_OUT/signing_key.x509 ./wlan/wlan.ko
echo "Building flashable AnyKernel2 zip"
AK2BASE_DIR=./AnyKernel2-master
rm -rf $AK2BASE_DIR
unzip ./AnyKernel2-master.zip
# cleanup
rm $AK2BASE_DIR/zImage
rm $AK2BASE_DIR/modules/placeholder
rm -rf $AK2BASE_DIR/patch
rm -rf $AK2BASE_DIR/ramdisk
# kernel: use zImage-dtb instead of zImage
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/boot/zImage-dtb $AK2BASE_DIR/
# modules: copy modules
cp /home/aquaris-X5-plus/KERNEL_OUT/crypto/ansi_cprng.ko $AK2BASE_DIR/modules/
### no core_ctl.ko - leave original one
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/mach-msm/dma_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/evbug.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_axis.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_event.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_input.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_matrix.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_output.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/gud/mcDrvModule.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/gud/mcKernelApi.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/mmc/card/mmc_block_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/mmc/card/mmc_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/oprofile/oprofile.ko $AK2BASE_DIR/modules/
mkdir $AK2BASE_DIR/modules/pronto
cp /home/aquaris-X5-plus/wlan/wlan.ko $AK2BASE_DIR/modules/pronto/pronto_wlan.ko
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/spi/spidev.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/block/test-iosched.ko $AK2BASE_DIR/modules/
# create flashable zip
TARGET=UNMODIFIED-01.001
rm $TARGET.zip
cd $AK2BASE_DIR
zip -r9 ../$TARGET.zip * -x README.md
----------------------------------------------
fertig!
Vorher aber noch AnyKernel2 runterladen (xda), in kernel-assembly/AnyKernel2-master.zip ablegen und das anykernel.sh Skript im Zip bereinigen:
block=/dev/block/bootdevice/by-name/boot;
is_slot_device=0;
do.initd=0
do.modules=1
do.devicecheck=1
device.name1=Aquaris_X5_Plus
device.name2=gohan
device.name3=
device.name4=
device.name5=
und alles zwischen
# begin ramdisk changes
# end ramdisk changes
auskommentieren.
"Hard way" - BQ git tags auschecken nach BQ Anleitung.
"Easy way":
neues Basisverzeichnis anlegen und rein gehen.
git clone GitHub - cyclon1978/aquaris-X5-plus kernel
git clone GitHub - bq/wlan_module_qcom: Wlan module source code for bq qcom devices wlan
git clone platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 - Git at Google
cd wlan
git checkout 1.5.1_20161117-1500
cd ..
mkdir KERNEL_OUT
mkdir kernel-assembly
make -C kernel O=../KERNEL_OUT ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- gohan_defconfig
make O=../KERNEL_OUT -C kernel ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- -j 2
# make wlan module
make -C kernel M=../wlan O=../KERNEL_OUT ARCH=arm CROSS_COMPILE=../arm-eabi-4.8/bin/arm-eabi- modules WLAN_ROOT=../wlan/ MODNAME=wlan BOARD_PLATFORM=msm8952 CONFIG_PRONTO_WLAN=m
# strip module of debug code
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./wlan/wlan.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/crypto/ansi_cprng.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/arch/arm/mach-msm/dma_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/evbug.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_axis.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_event.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_input.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_matrix.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/input/misc/gpio_output.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/gud/mcDrvModule.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/gud/mcKernelApi.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/mmc/card/mmc_block_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/mmc/card/mmc_test.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/arch/arm/oprofile/oprofile.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/drivers/spi/spidev.ko
./arm-eabi-4.8/bin/arm-eabi-strip --strip-debug ./KERNEL_OUT/block/test-iosched.ko
# sign module
./kernel/scripts/sign-file sha512 ./KERNEL_OUT/signing_key.priv ./KERNEL_OUT/signing_key.x509 ./wlan/wlan.ko
echo "Building flashable AnyKernel2 zip"
AK2BASE_DIR=./AnyKernel2-master
rm -rf $AK2BASE_DIR
unzip ./AnyKernel2-master.zip
# cleanup
rm $AK2BASE_DIR/zImage
rm $AK2BASE_DIR/modules/placeholder
rm -rf $AK2BASE_DIR/patch
rm -rf $AK2BASE_DIR/ramdisk
# kernel: use zImage-dtb instead of zImage
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/boot/zImage-dtb $AK2BASE_DIR/
# modules: copy modules
cp /home/aquaris-X5-plus/KERNEL_OUT/crypto/ansi_cprng.ko $AK2BASE_DIR/modules/
### no core_ctl.ko - leave original one
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/mach-msm/dma_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/evbug.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_axis.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_event.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_input.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_matrix.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/input/misc/gpio_output.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/gud/mcDrvModule.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/gud/mcKernelApi.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/mmc/card/mmc_block_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/mmc/card/mmc_test.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/arch/arm/oprofile/oprofile.ko $AK2BASE_DIR/modules/
mkdir $AK2BASE_DIR/modules/pronto
cp /home/aquaris-X5-plus/wlan/wlan.ko $AK2BASE_DIR/modules/pronto/pronto_wlan.ko
cp /home/aquaris-X5-plus/KERNEL_OUT/drivers/spi/spidev.ko $AK2BASE_DIR/modules/
cp /home/aquaris-X5-plus/KERNEL_OUT/block/test-iosched.ko $AK2BASE_DIR/modules/
# create flashable zip
TARGET=UNMODIFIED-01.001
rm $TARGET.zip
cd $AK2BASE_DIR
zip -r9 ../$TARGET.zip * -x README.md
----------------------------------------------
fertig!
Vorher aber noch AnyKernel2 runterladen (xda), in kernel-assembly/AnyKernel2-master.zip ablegen und das anykernel.sh Skript im Zip bereinigen:
block=/dev/block/bootdevice/by-name/boot;
is_slot_device=0;
do.initd=0
do.modules=1
do.devicecheck=1
device.name1=Aquaris_X5_Plus
device.name2=gohan
device.name3=
device.name4=
device.name5=
und alles zwischen
# begin ramdisk changes
# end ramdisk changes
auskommentieren.