Qualcomm kan släppa Snapdragon 845-källkoden om 6 veckor

Qualcomm Snapdragon 845 system-on-chip tillkännagavs redan i december och finns på flaggskeppsenheter som Samsung Galaxy S9, Xiaomi Mi Mix 2S och OnePlus 6. Företaget har bekräftat att kärnans källkod kommer att släppas om cirka 6 veckor.

Qualcomms senaste avancerade system-på-chip, den Qualcomm Snapdragon 845, var meddelat vid Snapdragon Tech Summit i december. De chipset erbjuder 4 Kryo 385 (A75 "prestanda") och 4 Kryo 385 (A55 "effektivitet") CPU-kärnor, den senaste Adreno 630 GPU, Spectra 280 ISP, Hexagon 685 DSP, Snapdragon X20 LTE-modemet och en ny Secure Processing Unit (SPU). Snapdragon 845 SoC är en kraftpaket i benchmarks och det är redan tillgängligt i enheter som Samsung Galaxy S9/S9+, Xiaomi Mi Mix 2S, och den OnePlus 6. Utvecklare på våra forum har längtat efter att lägga vantarna på en enhet med Qualcomms senaste och bästa, men det finns bara en sak som har gjort vissa utvecklare oroar sig för framtidens utveckling på plattformen: Bristen på allmänt tillgänglig källkod för kärnan, HAL: er, ramverksgrenar och mer på de CodeAurora-forum.


Qualcomm och CodeAurora-forum

Om du någonsin har undrat varför utvecklare på våra forum föredrar att arbeta på enheter med Qualcomm-kretsuppsättningar framför enheter med styrkretsar från HiSilicon, Samsung, MediaTek, och andra, anledningen är Qualcomms vänlighet med den anpassade utvecklingsgemenskapen. Den Android som anpassade ROM-utvecklare bygger från är baserad på Android Open Source Project (AOSP). Google släpper en offentlig del av AOSP men de utvecklar också delar av Android privat (vilket är anledningen till att om du bygger en ROM från AOSP idag, kommer du inte att få någon av snygga nya funktioner i Android P.) För anpassade ROM-utvecklare är det enda valet de har för att slå samman Androids senaste plattformsfunktioner att vänta på att Google släpper källkoden med den slutliga versionen. Chipset-leverantörer har dock en avtal med Google för att få tidig tillgång till nästa version av Android— de delar sig från de privata AOSP-förråden, modifierar sin chipsetkod för att vara kompatibel och distribuerar sedan denna kod till OEM-tillverkare för att bygga och distribuera ROM för sina enheter.

Allmän uppdateringsprocess för varje version av Android. Källa: Google.

För att följa GNU General Public License (GPL) under vilken Linux-kärnan är licensierad, måste chipsetet leverantörer och OEM: er måste släppa kärnans källkod, men det är allt de är skyldiga att göra släpp. Kärnans källkod för Qualcomm Snapdragon 845 Samsung Galaxy S9/S9+, Xiaomi Mi Mix 2S, och den OnePlus 6 finns till exempel redan tillgängliga. Det räcker för att utvecklare ska komma igång med att porta AOSP-baserade anpassade ROM på dessa enheter, men att bara ha tillgång till kärnans källkod betyder inte att det blir lätt att portera LineageOS 15.1 till dessa enheter (även om det förändras tack vare Projekt Treble). All chipsetspecifik kod för nya chipsetfunktioner är vanligtvis inte tillgänglig i dessa kärnor källkodssläpp, vilket förväntas eftersom koden skulle avslöja hur proprietära chipset fungerar arbete. Utvecklare har tillgång till den här koden i form av förkompilerade binärer (kallas ett binärt stort objekt eller BLOB), men det är nästan omöjligt att kombinera dessa BLOB med deras arbete på en AOSP ROM eftersom det inte finns någon dokumentation om hur det skulle arbete.

Lyckligtvis för utvecklare är det där Qualcomms CodeAurora Forums (CAF) kommer till användning. På CAF släpper Qualcomm de offentliga delarna av sin chipsetspecifika kod på ett sätt som gör det verkligen lätt för ROM-utvecklare att bygga för plattformen utan att behöva veta hur den nya chipseten fungerar arbete. Utvecklare behöver bara dela offentliga delar av de nya plattformsförråden (som hårdvara/qcom/display och leverantör/qcom-opensource/bluetooth) och kombinera det med de förkompilerade binärfilerna så kommer det i princip bara att fungera för det mesta. Qualcomm har släppt sin chipsetspecifika kod på CAF för tidigare SoCs som t.ex Qualcomm Snapdragon 820/821 och Snapdragon 835, och vanligtvis inom några dagar efter att styrkretsen tillkännagavs! Det har det dock varit 5 månader sedan Snapdragon 845 tillkännagavs, och det har vi ännu att se företagets vanliga källkod faller under sdm845-grenen.

Söker i CAF efter källkod relaterad till Qualcomm Snapdragon 835 SoC

Den försenade utgivningen av sdm845-källor i CAF har fått vissa utvecklare att oroa sig för att Qualcomm skulle vara överge forumet, i praktiken bli som MediaTek genom att bara dela källor med sina partners och inte gemenskap. Utvecklarna vi pratade med är oroliga för att detta skulle vara skadligt för anpassad ROM-utveckling på enheter från företag som Xiaomi, eftersom CAF-källor ofta är nödvändiga för att bygga stabila ROM för Xiaomis Snapdragon enheter. Vi tog kontakt med Qualcomm för att ta reda på vad som händer, och vi har äntligen några goda nyheter att dela med oss ​​av: CAF överges inte, det är bara det att Qualcomm Snapdragon 845-kodsläppet inte kommer att hända förrän Qualcomm tillkännager sina nya mobila plattformar. Anledningen? Därför att läckor.


CodeAurora Forum och Qualcomm Chip Leaks

När Qualcomms ingenjörer arbetar med nya plattformsfunktioner för sina styrkretsar är det sällsynt att de bara utvecklar dessa funktioner med en styrkrets i åtanke. Det är möjligt för outgivna styrkretsar att använda samma programvara som finns i redan annonserade styrkretsar som Snapdragon 845. Medan företag ofta använder kodnamn för att förhindra läckor, förhindrar inte ens det helt att läckor inträffar. Till exempel detaljer om de outgivna Qualcomm Snapdragon 670 hittades i CAF av Roland Quandt från WinFuture. Vi fick senare reda på från CAF att Qualcomm Snapdragon 670 var ommärkes till Qualcomm Snapdragon 710. Qualcomm har inte bekräftat existensen av Snapdragon 670/Snapdragon 710, men tack vare referenser i CAF vet vi redan mycket om den kommande styrkretsen.

För att förhindra att sådana här läckor uppstår valde Qualcomm att fördröja utgivningen av källkoden för Snapdragon 845. Vi får veta att företaget inte kommer att släppa källkoden för chipsetet tills efter att de nya mobila plattformarna tillkännages. Efter ca 6 veckor från nu, kommer företaget att kunna släppa sdm845-källorna på CAF. En representant från Qualcomm bad om ursäkt för förseningen i källkodens utgivning och uppgav att företaget granskar deras namnkonventioner för chipset i kod så att de kan släppa kod för redan annonserade chipset samtidigt som de undviker läckor.