Android: MediaTek BSP Geliştirmeye Giriş
MediaTek, mobil cihaz, ev eğlencesi, bağlantı ve IoT ürünleri için çipler üzerinde sistemler (SoC'ler) geliştiren dünyanın 4. en büyük küresel fabrikasyon yarı iletken şirketidir .
Hepimiz Custom ROM'ların & Custom ROM geliştirmenin farkındayız, insanlar geliştirme için genellikle Qualcomm cihazlarını tercih ediyorlar çünkü MediaTek destekli cihazlarda AOSP'yi başlatmanın mümkün olmadığını düşünüyorlar ki bu kesinlikle yanlış, ancak bugünkü ana bakış açımız bu değil.
Stok ROM'umuzun/firmware'imizin nasıl oluşturulduğunu hiç merak ettiniz mi? Pekala, bugün aynı şeyi ayrıntılı olarak tartışacağız.
BSP'ye Giriş — Pano Destek Paketleri
BSP veya Anakart Destek Paketi, SoC satıcısından (örn. MediaTek veya Qualcomm) gelen tüm android kaynak kodunu ve temel cihaz önyüklemesi için ODM'den (Orijinal Cihaz Üreticisi) yapılan birkaç değişikliği içeren bir pakettir. BSP, tüm HAL'lerin kaynaklarından ve donanıma özgü önyükleme üretici yazılımından oluşur, MediaTek BSP'de önceden oluşturulmuş (araç zincirleri hariç) hiç veya daha az mevcut değildir, her şey bir MTK BSP'de kaynağa göre oluşturulmuştur.
ODM'ye karşı OEM
Orijinal Cihaz/Tasarım Üreticisi (genelde ODM olarak bilinir), OEM'lerin talep ettiği şekilde cihazları tasarlayan ve geliştiren bir şirkettir; Android bileşenleri için dünyanın en büyük kaynağı Çin'de bulunduğundan, büyük ölçüde tüm ODM'ler Çin'de bulunmaktadır. ODM genellikle SoC satıcıları tarafından kendilerine verilen RD'ler (Referans Cihazlar) üzerinde çalışır ve ardından OEM'lerin o platform için talep ettiği cihazları geliştirir ve üretir. Bazı ünlü ODM'ler BYD Electronics, Wingtech, Longcheer vb.
Öte yandan, OEM'ler (veya Orijinal Ekipman Üreticileri), cihazlarının sözleşmeli üretimi için çeşitli ODM'lerle sözleşme yapar ve ardından cihazı markalar ve pazarlara sunar. Bununla birlikte, bazı OEM'lerin kendi iç üretimleri de vardır, dolayısıyla bunun için ODM'lere bağımlı değildirler. Bazı iyi bilinen OEM'ler Xiaomi, OnePlus, realme, Asus vb.
ALPS — MediaTek BSP
Qualcomm'un CAF/CLO'ya sahip olması gibi, MediaTek BSP de "alpler" olarak kodlanmıştır (ve neden kimse bilmiyor?). MediaTek alps, CAF/CLO'dan farklı olarak tamamen kapalı kaynaklıdır, MediaTek yalnızca BSP bileşenlerini Android İş Ortakları ile paylaşır. Alplerin kapalı kaynak olmasının olası ana nedenlerinden biri, CAF'ın aksine Linux Vakfı tarafından finanse edilmemeleridir.
MediaTek, BSP'lerinde “modüler” inşa sistemi yaklaşımını takip eder, yani satıcı/mediatek'ten gelen neredeyse birçok şeyi geçersiz kılar. Böyle bir duruma örnek olarak, paketler/uygulamalar/Ayarlar'daki bazı Ayarlar tercihlerinin satıcı/mediatek/özel/paketler/uygulamalar/Ayarlar'dan geçersiz kılınması verilebilir ve aynı şey birçok başka şey için de geçerlidir.
MediaTek BSP'nin Derlenmesi
Bir MediaTek BSP'yi oldukça kolay bir şekilde derlemek, sadece satıcı/mediatek'ten mtk-build betiğini çağırın, yani,
python vendor/mediatek/proprietary/scripts/releasetools/split_build_helper.py full_$target-$variant
MediaTek Helio ve Daha Eski SoC'ler için:
k$platform_suffixv1_$arch_bsp— burada platform_suffix, soc'un platform adının son iki harfidir, yani Platform — MT6785, ardından BSP-adı k85v1_64_bsp.
MediaTek Dimensity platformları için adlandırma şu şekildedir:
k$platform_namev1_$arch_bsp— yani Platform — MT6833 ise, BSP adı k6833v1_64_bsp.
Mediatek'in build script'ini kullanmaktan hoşlanmıyorsanız, sadece lunch komutunu çağırabilirsiniz, yani lunch full_$target-$variantardından m otapackageveya m updatepackagegerektiği gibi.
MediaTek BSP'deki Makrolar
Bir MediaTek BSP'de tanımlanmış birçok makro vardır, bu makrolar, ProjectConfig.mkBSP ekibinin ortam ve yapı değişkenlerini düzenlemesine ve değiştirmesine izin veren sampledevice'de mevcuttur.
Çözüm
Umarım, bu makaleyi okuduktan sonra MediaTek BSP'nin oluşturulması hakkında biraz fikir edinmiş ve stok üretici yazılımının bir OEM tarafından nasıl üretildiği ve bir ODM'nin bir cihazın üretiminde nasıl önemli bir rol oynadığı hakkında bir fikir edinmişsinizdir.

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































