Rehber Mi 9T Pro/K20 Pro için Kernel ve DTBO Nasıl Derlenir

mevcetin

Mevlüt Çetin
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
Mevlüt Çetin
Cihazım
Mi 9T Pro
Meslek
3D Designer
Konum
Konya
Katılım
21 Haziran 2018
Konular
162
Mesajlar
2.996
Tepkime puanı
4.178
Puanları
188
Gerekli:
Ubuntu veya diğer Linux tabanlı işletim sistemleri
Kararlı İnternet Bağlantısı
Sabır


Adım 1: Kurulum Ortamını Kurun.
Terminali açın ve aşağıdakileri girin:
Kod:
sudo apt-get install git ccache automake flex lzop bison \
gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 \
g++-multilib python-networkx libxml2-utils bzip2 libbz2-dev \
libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush \
schedtool dpkg-dev liblz4-tool make optipng maven libssl-dev \
pwgen libswitch-perl policycoreutils minicom libxml-sax-base-perl \
libxml-simple-perl bc libc6-dev-i386 lib32ncurses5-dev \
x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev xsltproc unzip


Adım 2: Gerekli Dosyaları İndirin
Cihaz kaynağını indir.
Kod:
git clone --depth=1 https://github.com/MiCode/Xiaomi_Kernel_OpenSource.git -b raphael-p-oss raphael-p-oss


Uyumlu bir GCC araç zinciri indirin (Bu kılavuz için AOSP'nin GCC'si kullanılacak):
Kod:
cd raphael-p-oss
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9 toolchain


Uyumlu bir CLANG araç zinciri indirin (Bu kılavuz için AOSP'un CLANG'i kullanılacak):
İndirilen dosyayı raphael-p-oss klasörüne manuel olarak taşıyın ve aşağıdaki komutu kullanarak çıkartın:
Kod:
tar vxzf linux-x86-android-9.0.0_r48-clang-4691093.tar.gz

Aşağıda bulunan device-tree-compiler dosyasını indirin ve /usr/bin içine yerleştirin.

3. Adım: Cihazda belirli değişiklikler yapın
/kernel/module.c dosyasında yapın.
Github'a aşina değilseniz, şimdilik
dosyasını indirebilir ve /kernel klasöründeki dosyayı indirilen dosya ile değiştirebilirsiniz!
Şimdi, raphael-p-oss dizinine geri dönün ve \arch\arm64\configs içinde bulunan raphael_user_defconfig dosyasını açın.
Aşağıdaki satırları ekleyin:

Kod:
CONFIG_BUILD_ARM64_DT_OVERLAY=y
CONFIG_MODULE_FORCE_LOAD=y
Bu değişiklikleri yapmazsanız WIFI ve Ses çalışmaz.

Adım 4: Kerneli Oluşturma
Kod:
cd raphael-p-oss
rm -rf out
mkdir out
export ARCH=arm64
export SUBARCH=arm64
export DTC_EXT=dtc

make O=out ARCH=arm64 raphael_user_defconfig

PATH="${PWD}/bin:${PWD}/toolchain/bin:${PATH}" \
make -j$(nproc --all) O=out \
                      ARCH=arm64 \
                      CC=clang \
                      CLANG_TRIPLE=aarch64-linux-gnu- \
                      CROSS_COMPILE=aarch64-linux-android- | tee kernel.log

Adım 5: Hatalarla Karşılaşırsanız Ne Yapabilirsiniz?
Raphael-p-oss klasöründe bir kernel.log dosyası oluşturulur, hata yazan satırı bulun ve yorumlayın.

Adım 6: Kerneli Önyükleme
Adım 4 ile işiniz bittiğinde, /out/arch/arm64/boot adresine gidin. Image-dtb dosyasını bulacaksınız (derlenmiş zImage)
raphael_anykernel.zip şablonunu eklerden indirin ve Image-dtb dosyanızı arşive ekleyin.
TWRP'ye girin, stock kernelinizi yedekleyin ve yaptığınız kernel zipini flaşlayın.


Miui Türkiye ve Şahsım herhangi bir işlemden dolayı sorumlu tutulamaz.
 

Ekli dosyalar

  • device-tree-compiler.zip
    111,9 KB · Görüntüleme: 0
  • raphael_anykernel.zip
    1,2 MB · Görüntüleme: 54
Son düzenleme:

mevcetin

Mevlüt Çetin
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
Mevlüt Çetin
Cihazım
Mi 9T Pro
Meslek
3D Designer
Konum
Konya
Katılım
21 Haziran 2018
Konular
162
Mesajlar
2.996
Tepkime puanı
4.178
Puanları
188
Kerneli Derlemek için QCom Clang Kullanılması [Xiaomi Kılavuzu]


Gerekli:
Ubuntu veya diğer Linux tabanlı işletim sistemleri
Kararlı İnternet Bağlantısı
Sabır


Adım 1: Kurulum Ortamını Kurun.
Terminali açın ve aşağıdakileri girin:
Kod:
sudo apt-get install git ccache automake flex lzop bison \
gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 \
g++-multilib python-networkx libxml2-utils bzip2 libbz2-dev \
libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush \
schedtool dpkg-dev liblz4-tool make optipng maven libssl-dev \
pwgen libswitch-perl policycoreutils minicom libxml-sax-base-perl \
libxml-simple-perl bc libc6-dev-i386 lib32ncurses5-dev \
x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev xsltproc unzip


Adım 2: Gerekli Dosyaları İndirin
Cihaz kaynağını indir.
Kod:
git clone --depth=1 https://github.com/MiCode/Xiaomi_Kernel_OpenSource.git -b raphael-p-oss raphael-p-oss


Uyumlu bir GCC araç zinciri indirin (Bu kılavuz için AOSP'nin GCC'si kullanılacak):
Kod:
cd raphael-p-oss
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9 toolchain


Qcom CLANG İndir (Siteye üye olup mail onayı yaptıktan sonra yaklaşık 1-2 gün izin için beklenmeli):
İndirilen dosyayı raphael-p-oss klasörüne manuel olarak taşıyın ve aşağıdaki komutu kullanarak çıkartın:
Kod:
tar vxzf snapdragon-llvm-compiler-android-linux64-609.tar.gz

Aşağıda bulunan device-tree-compiler dosyasını indirin ve /usr/bin içine yerleştirin.

3. Adım: Cihazda belirli değişiklikler yapın
/kernel/module.c dosyasında yapın.
Github'a aşina değilseniz, şimdilik dosyasını indirebilir ve /kernel klasöründeki dosyayı indirilen dosya ile değiştirebilirsiniz!
Şimdi, raphael-p-oss dizinine geri dönün ve \arch\arm64\configs içinde bulunan raphael_user_defconfig dosyasını açın.
Aşağıdaki satırları ekleyin:
Kod:
CONFIG_BUILD_ARM64_DT_OVERLAY=y
CONFIG_MODULE_FORCE_LOAD=y
Bu değişiklikleri yapmazsanız WIFI ve Ses çalışmaz.

Adım 4: Kerneli Oluşturma
Kod:
cd raphael-p-oss
rm -rf out
mkdir out
export ARCH=arm64
export SUBARCH=arm64
export DTC_EXT=dtc
export CROSS_COMPILE=${PWD}/toolchain/bin/aarch64-linux-android-

make O=out REAL_CC=${PWD}/toolchains/llvm-Snapdragon_LLVM_for_Android_6.0/prebuilt/linux-x86_64/bin/clang CLANG_TRIPLE=aarch64-linux-gnu- raphael_user_defconfig
make -j$(nproc) O=out REAL_CC=${PWD}/toolchains/llvm-Snapdragon_LLVM_for_Android_6.0/prebuilt/linux-x86_64/bin/clang CLANG_TRIPLE=aarch64-linux-gnu- 2>&1 | tee kernel.log

Adım 5: Hatalarla Karşılaşırsanız Ne Yapabilirsiniz?
Raphael-p-oss klasöründe bir kernel.log dosyası oluşturulur, hata yazan satırı bulun ve yorumlayın.

Adım 6: Kerneli Önyükleme
Adım 4 ile işiniz bittiğinde, /out/arch/arm64/boot adresine gidin. Image-dtb dosyasını bulacaksınız (derlenmiş zImage)
raphael_anykernel.zip şablonunu eklerden indirin ve Image-dtb dosyanızı arşive ekleyin.
TWRP'ye girin, stock kernelinizi yedekleyin ve yaptığınız kernel zipini flaşlayın.


Miui Türkiye ve Şahsım herhangi bir işlemden dolayı sorumlu tutulamaz.
 
Son düzenleme:

mevcetin

Mevlüt Çetin
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
Mevlüt Çetin
Cihazım
Mi 9T Pro
Meslek
3D Designer
Konum
Konya
Katılım
21 Haziran 2018
Konular
162
Mesajlar
2.996
Tepkime puanı
4.178
Puanları
188
Özel DTBO Nasıl Derlenir
DTBO dosyaları cihazımızda öncelikle yenileme oranlarını değiştirmek için kullanılmıştır.

Önkoşullar:
Hatasız derlenmiş kernel

Adım 1: Gerekli Dosyaları İndirin
libufdt araçlarını indirin.
İndirilen dosyanın konumundaki terminali açın.
Kod:
tar vxzf libufdt-master-utils.tar.gz

Adım 2: dtbo.img Derleme
Kod:
cd libufdt-master-utils/src
python mkdtboimg.py create /home/user/raphael-p-oss/out/arch/arm64/boot/dtbo.img /home/user/raphael-p-oss/out/arch/arm64/boot/dts/qcom/*.dtbo

Adım 3: Derlenmiş dtbo.img Flashlama
Derlenen dtbo.img dosyası /raphael-p-oss/out/arch/arm64/boot/ (zImage ile aynı çıktı klasörü) içinde bulunur.
Stock dtbo.img dosyanızı yedekleyin ve yeni derlenen dtbo.img dosyasını flashlayın.



Miui Türkiye ve Şahsım herhangi bir işlemden dolayı sorumlu tutulamaz.
 
Son düzenleme:

mevcetin

Mevlüt Çetin
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
Mevlüt Çetin
Cihazım
Mi 9T Pro
Meslek
3D Designer
Konum
Konya
Katılım
21 Haziran 2018
Konular
162
Mesajlar
2.996
Tepkime puanı
4.178
Puanları
188
 
Üst Alt