mbtt
Üye
- Katılım
- 4 Ara 2018
- Mesajlar
- 45
- Tepkime puanı
- 419
- Puanları
- 53
Çevrimdışı
DİPNOT
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.
AÇIKLAMA
Bu kılavuz ile MultiRom aracını derleyebileceksiniz.
Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.
ANLATIM
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.
AÇIKLAMA
Bu kılavuz ile MultiRom aracını derleyebileceksiniz.
Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.
ANLATIM
Gizli İçerik
Hazırlık
Girdileri Ayarlama
Derleme
Portlama
Cihaz treenizin içine ;
Tassadar Twrp Recovery
MultiRom
libbootimg
Yukarıdakileri çekin. Bunu yapmak için;
rm -r bootable/recovery
git clone Tasssadar/Team-Win-Recovery-Project -b android-6.0 bootable/recovery
git clone Tasssadar/multirom -b master system/extras/multirom
git clone Tasssadar/libbootimg -b master system/extras/libbootimg
cd system/extras/multirom
git submodule update --init
Tassadar Twrp Recovery
MultiRom
libbootimg
Yukarıdakileri çekin. Bunu yapmak için;
rm -r bootable/recovery
git clone Tasssadar/Team-Win-Recovery-Project -b android-6.0 bootable/recovery
git clone Tasssadar/multirom -b master system/extras/multirom
git clone Tasssadar/libbootimg -b master system/extras/libbootimg
cd system/extras/multirom
git submodule update --init
Girdileri Ayarlama
BoardConfig.mk dosyanızı açın ve :
Yukarıdaki satırları kendi cihazınıza göre düzenleyin.
Kod:
#MultiROM config. MultiROM also uses parts of TWRP config
MR_INPUT_TYPE :=
MR_INIT_DEVICES :=
MR_RD_ADDR :=
MR_DPI :=
MR_DPI_FONT :=
MR_FSTAB :=
MR_KEXEC_MEM_MIN :=
MR_INFOS :=
Yukarıdaki satırları kendi cihazınıza göre düzenleyin.
Derleme
Derleme için aşağıdaki kodları teker teker girin.
1 - Twrp recovery derler
2 - Multirom kaynağını derler
3 - Multirom taban kaynağını derler
4 - Multirom zipini çıkarır
5 - Multirom kaldırma zipini hazırlar.
1 - Twrp recovery derler
2 - Multirom kaynağını derler
3 - Multirom taban kaynağını derler
4 - Multirom zipini çıkarır
5 - Multirom kaldırma zipini hazırlar.
Kod:
make recoveryimage
make multirom
make trampoline
make multirom_zip
make multirom_uninstaller
Portlama
İyi seviyede C dili gerektirir.
Buradaki sıralı işlemlerde basitçe makodan kendi cihazımıza yama yapıp hex kodlarını düzenleyeceğiz.
İlk olarak hard-reboot yaması yapmalıyız. Bu fonksiyonu yöneten dosya aşağıdakilerden birisi olabilir.
Körnıl kaynağınızı açın ve : arch/arm/kernel/relocate_kernel.S arayın.
Eğer yoksa ;
restart.c ve reboot.c dosyalarına bakabilirsiniz.
Ya da arch/arm/mach-xxx dizinine bakabilirsiniz.
Yapacağımız yama ise şu şekilde olacaktır.
Örneğin : Bir nexus 4 (mako) paketi -> Mako
kexec_hardboot için hafıza ayırma :
Buradan yine patch kısmını bulabilirsiniz.
Mako
KEXEC_HB_PAGE_ADDR ayarlama :
Bu kısım cihaza özgüdür. Genel-geçer bir yöntem yoktur.
Buradan yama paketini bulabilirsiniz.
kexec_hardboot_hook ayarlama :
Buradan yamayı bulabilirsiniz.
Bu yöntem cihaza özel başlatma ve sıfırlama kodları gerektirir.
Bunun için yine restart.c ve reboot.c bölümlerine bakabilirsiniz.
MultiRom'un MR_KEXEC_MEM_MIN bölümü girdisi :
BoardConfig.mk bölümünde ayarladığımız MultiRom girdisine gidin.
Bu değer kernel ve init.rd klasörünün başlatmadan önce yüklendiği değeri atar.
Sistemde mutlaka 256 mb ram boşta olmalıdır.
Ve yeniden başlatılırken tekrar yazılmadığından emin olunmalıdır.
/proc/iomem alt bölümüne bakın.
Örneğin flo cihazı için :
arası düşünülürse değer minimum.
Hafızaa ayarlandıktan sonra ;
0x88dfffff bu girdi +1 değer alıp hex sistemine göre
bu değere dönüşecektir.
Bu değerler sizin cihazınıza göre değişecektir.
Değişik cihazlar değişik hesaplamalar doğurur.
Örnek bir bölümlendirme yukarıdadır.
Buradaki sıralı işlemlerde basitçe makodan kendi cihazımıza yama yapıp hex kodlarını düzenleyeceğiz.
İlk olarak hard-reboot yaması yapmalıyız. Bu fonksiyonu yöneten dosya aşağıdakilerden birisi olabilir.
Körnıl kaynağınızı açın ve : arch/arm/kernel/relocate_kernel.S arayın.
Eğer yoksa ;
restart.c ve reboot.c dosyalarına bakabilirsiniz.
Ya da arch/arm/mach-xxx dizinine bakabilirsiniz.
Yapacağımız yama ise şu şekilde olacaktır.
Örneğin : Bir nexus 4 (mako) paketi -> Mako
kexec_hardboot için hafıza ayırma :
Buradan yine patch kısmını bulabilirsiniz.
Mako
KEXEC_HB_PAGE_ADDR ayarlama :
Bu kısım cihaza özgüdür. Genel-geçer bir yöntem yoktur.
Buradan yama paketini bulabilirsiniz.
kexec_hardboot_hook ayarlama :
Buradan yamayı bulabilirsiniz.
Bu yöntem cihaza özel başlatma ve sıfırlama kodları gerektirir.
Bunun için yine restart.c ve reboot.c bölümlerine bakabilirsiniz.
MultiRom'un MR_KEXEC_MEM_MIN bölümü girdisi :
BoardConfig.mk bölümünde ayarladığımız MultiRom girdisine gidin.
Bu değer kernel ve init.rd klasörünün başlatmadan önce yüklendiği değeri atar.
Sistemde mutlaka 256 mb ram boşta olmalıdır.
Ve yeniden başlatılırken tekrar yazılmadığından emin olunmalıdır.
/proc/iomem alt bölümüne bakın.
Örneğin flo cihazı için :
Kod:
0x80200000-0x88dfffff
arası düşünülürse değer minimum.
Hafızaa ayarlandıktan sonra ;
0x88dfffff bu girdi +1 değer alıp hex sistemine göre
Kod:
0x88e00000
bu değere dönüşecektir.
Bu değerler sizin cihazınıza göre değişecektir.
Değişik cihazlar değişik hesaplamalar doğurur.
Kod:
80200000-88dfffff : System RAM
80208000-810ad21f : Kernel code
8121e000-8163e293 : Kernel data
Örnek bir bölümlendirme yukarıdadır.