Η Qualcomm είναι σε θέση να κυκλοφορήσει τον πηγαίο κώδικα Snapdragon 845 σε 6 εβδομάδες

Το σύστημα-on-chip Qualcomm Snapdragon 845 ανακοινώθηκε τον Δεκέμβριο και βρίσκεται σε κορυφαίες συσκευές όπως το Samsung Galaxy S9, το Xiaomi Mi Mix 2S και το OnePlus 6. Η εταιρεία επιβεβαίωσε ότι ο πηγαίος κώδικας του πυρήνα θα κυκλοφορήσει σε περίπου 6 εβδομάδες.

Qualcommτο πιο πρόσφατο high-end system-on-chip, το Qualcomm Snapdragon 845, ήταν ανακοινώθηκε στο Snapdragon Tech Summit τον Δεκέμβριο. ο προσφορές chipset 4 πυρήνες CPU Kryo 385 (A75 «απόδοση») και 4 Kryo 385 (Α55 «αποτελεσματικότητα»), η τελευταία GPU Adreno 630, το Spectra 280 ISP, το Hexagon 685 DSP, το μόντεμ Snapdragon X20 LTE και μια νέα μονάδα ασφαλούς επεξεργασίας (SPU). Το Snapdragon 845 SoC είναι α μονάδα παραγωγής ισχύος σε σημεία αναφοράς και είναι ήδη διαθέσιμο σε συσκευές όπως το Samsung Galaxy S9/S9+, Xiaomi Mi Mix 2S, και το OnePlus 6. Οι προγραμματιστές στα φόρουμ μας διψούσαν να πάρουν στα χέρια τους μια συσκευή με την πιο πρόσφατη και κορυφαία της Qualcomm, αλλά υπάρχει μόνο ένα πράγμα που έχει κάνει οι προγραμματιστές ανησυχούν για το μέλλον της ανάπτυξης στην πλατφόρμα: Η έλλειψη δημοσίως διαθέσιμου πηγαίου κώδικα για τον πυρήνα, τα HAL, τους κλάδους πλαισίου και άλλα ο

Φόρουμ CodeAurora.


Qualcomm και τα φόρουμ CodeAurora

Αν έχετε αναρωτηθεί ποτέ γιατί οι προγραμματιστές στα φόρουμ μας προτιμούν την εργασία σε συσκευές με chipset της Qualcomm σε σχέση με συσκευές με chipset από HiSilicon, Samsung, MediaTek, και άλλοι, ο λόγος είναι αυτός της φιλικότητας της Qualcomm με την κοινότητα προσαρμοσμένης ανάπτυξης. Το Android από το οποίο δημιουργούν οι προγραμματιστές προσαρμοσμένης ROM βασίζεται στο Android Open Source Project (AOSP). Η Google κυκλοφορεί α δημόσιο τμήμα του AOSP αλλά αναπτύσσουν επίσης μέρη του Android ιδιωτικά (γι' αυτό αν δημιουργήσετε μια ROM από την AOSP σήμερα, δεν θα λάβετε κανένα από τα φανταχτερά νέα χαρακτηριστικά σε Android P.) Για τους προγραμματιστές προσαρμοσμένης ROM, η μόνη επιλογή που έχουν για τη συγχώνευση των πιο πρόσφατων λειτουργιών πλατφόρμας του Android είναι να περιμένουν την Google να κυκλοφορήσει τον πηγαίο κώδικα με την τελική έκδοση. Οι πωλητές chipset, ωστόσο, έχουν ένα συμφωνία με την Google για έγκαιρη πρόσβαση στην επόμενη έκδοση του Android— αποχωρούν από τα ιδιωτικά αποθετήρια AOSP, τροποποιούν τον κώδικα του chipset ώστε να είναι συμβατός και, στη συνέχεια, διανέμουν αυτόν τον κώδικα σε OEM για να δημιουργήσουν και να διανείμουν ROM για τις συσκευές τους.

Γενική διαδικασία ενημέρωσης για κάθε έκδοση του Android. Πηγή: Google.

Για να συμμορφωθείτε με τη Γενική Άδεια Δημόσιας Χρήσης GNU (GPL) βάσει της οποίας παρέχεται άδεια χρήσης του πυρήνα Linux, το chipset Οι προμηθευτές και οι OEM υποχρεούνται να απελευθερώσουν τον πηγαίο κώδικα του πυρήνα, αλλά αυτό είναι το μόνο που απαιτείται ελευθέρωση. Ο πηγαίος κώδικας του πυρήνα για τον Qualcomm Snapdragon 845 Samsung Galaxy S9/S9+, Xiaomi Mi Mix 2S, και το OnePlus 6 είναι ήδη διαθέσιμα, για παράδειγμα. Αυτό αρκεί για να ξεκινήσουν οι προγραμματιστές να μεταφέρουν προσαρμοσμένες ROM που βασίζονται σε AOSP σε αυτές τις συσκευές, αλλά η πρόσβαση στον πηγαίο κώδικα του πυρήνα δεν σημαίνει ότι θα είναι εύκολη η μεταφορά LineageOS 15.1 σε αυτές τις συσκευές (αν και αυτό αλλάζει χάρη σε Project Treble). Όλος ο ειδικός κώδικας chipset για νέες δυνατότητες chipset δεν είναι συνήθως διαθέσιμος σε αυτόν τον πυρήνα εκδόσεις πηγαίου κώδικα, κάτι που αναμένεται, καθώς ο κώδικας θα αποκάλυπτε πώς λειτουργεί το ιδιόκτητο chipset δουλειά. Οι προγραμματιστές έχουν πρόσβαση σε αυτόν τον κώδικα με τη μορφή προμεταγλωττισμένων δυαδικών αρχείων (που ονομάζεται Binary Large Object ή BLOB), αλλά είναι σχεδόν αδύνατο να συνδυαστούν αυτά τα BLOB με την εργασία τους σε μια ROM AOSP, καθώς δεν υπάρχει τεκμηρίωση για το πώς θα δουλειά.

Ευτυχώς για τους προγραμματιστές, εκεί είναι χρήσιμο το CodeAurora Forums (CAF) της Qualcomm. Στο CAF, η Qualcomm απελευθερώνει τα δημόσια μέρη του συγκεκριμένου κώδικα του chipset με τρόπο που το κάνει πραγματικά εύκολο για τους προγραμματιστές ROM να δημιουργήσουν για την πλατφόρμα χωρίς να χρειάζεται να γνωρίζουν πώς λειτουργεί το νέο chipset δουλειά. Οι προγραμματιστές πρέπει απλώς να διαχωρίσουν το δημόσια μέρη των αποθετηρίων της νέας πλατφόρμας (όπως hardware/qcom/display και vendor/qcom-opensource/bluetooth) και συνδυάστε το με τα προμεταγλωττισμένα δυαδικά αρχεία και βασικά θα λειτουργήσει ως επί το πλείστον. Η Qualcomm κυκλοφόρησε τον συγκεκριμένο κώδικα chipset στο CAF για προηγούμενα SoC, όπως το Qualcomm Snapdragon 820/821 και Snapdragon 835, και συνήθως εντός ημερών από την ανακοίνωση του chipset! Ωστόσο, ήταν 5 μήνες από τότε που ανακοινώθηκε ο Snapdragon 845, και έχουμε ακόμα για να δούμε ότι ο συνήθης πηγαίος κώδικας της εταιρείας πέφτει κάτω από τον κλάδο sdm845.

Αναζήτηση στο CAF για τον πηγαίο κώδικα που σχετίζεται με το Qualcomm Snapdragon 835 SoC

Η καθυστερημένη κυκλοφορία των πηγών sdm845 στο CAF έχει οδηγήσει ορισμένους προγραμματιστές να ανησυχούν ότι η Qualcomm θα εγκαταλείπουν το φόρουμ, στην πραγματικότητα γίνονται σαν την MediaTek μοιράζοντας μόνο πηγές με τους συνεργάτες τους και όχι με τους κοινότητα. Οι προγραμματιστές με τους οποίους μιλήσαμε ανησυχούν ότι αυτό θα ήταν επιζήμιο για την ανάπτυξη προσαρμοσμένης ROM σε συσκευές από εταιρείες όπως η Xiaomi, καθώς οι πηγές CAF είναι συχνά απαραίτητες για τη δημιουργία σταθερών ROM για το Snapdragon της Xiaomi συσκευές. Επικοινωνήσαμε με την Qualcomm για να μάθουμε τι συμβαίνει και επιτέλους έχουμε μερικά καλά νέα να μοιραστούμε: Το CAF δεν εγκαταλείπεται, απλώς η απόρριψη κωδικού Qualcomm Snapdragon 845 δεν θα συμβεί έως ότου η Qualcomm ανακοινώσει τις νέες πλατφόρμες για κινητές συσκευές. Ο λόγος? Εξαιτίας διαρροές.


CodeAurora Forum και Qualcomm Chip Leaks

Όταν οι μηχανικοί της Qualcomm εργάζονται σε νέες δυνατότητες πλατφόρμας για τα chipsets τους, είναι σπάνιο να αναπτύξουν αυτές τις δυνατότητες μόνο με ένα chipset στο μυαλό τους. Είναι πιθανό τα μη κυκλοφορημένα chipset να χρησιμοποιούν το ίδιο λογισμικό που βρίσκεται σε ήδη ανακοινωθέντα chipsets όπως το Snapdragon 845. Ενώ οι εταιρείες χρησιμοποιούν συχνά κωδικές ονομασίες για να αποτρέψουν τις διαρροές, ακόμη και αυτό δεν αποτρέπει εντελώς τις διαρροές. Για παράδειγμα, λεπτομέρειες των ακυκλοφόρητων Ο Qualcomm Snapdragon 670 βρέθηκε στο CAF από τον Roland Quandt από WinFuture. Αργότερα μάθαμε από το CAF ότι ήταν ο Qualcomm Snapdragon 670 μετονομάζεται σε Qualcomm Snapdragon 710. Η Qualcomm δεν έχει επιβεβαιώσει την ύπαρξη του Snapdragon 670/Snapdragon 710, αλλά χάρη στις αναφορές στο CAF γνωρίζουμε ήδη πολλά για το επερχόμενο chipset.

Έτσι, για να αποτρέψει την εμφάνιση διαρροών όπως αυτή, η Qualcomm επέλεξε να καθυστερήσει την κυκλοφορία του πηγαίου κώδικα για τον Snapdragon 845. Μας είπαν ότι η εταιρεία δεν θα κυκλοφορήσει τον πηγαίο κώδικα για το chipset έως ότου ανακοινωθούν οι νέες πλατφόρμες για κινητά. Μετά περίπου 6 εβδομάδες από τώρα, η εταιρεία θα μπορεί να κυκλοφορήσει τις πηγές sdm845 στο CAF. Ένας εκπρόσωπος της Qualcomm ζήτησε συγγνώμη για την καθυστέρηση στην κυκλοφορία του πηγαίου κώδικα, δηλώνοντας ότι η εταιρεία εξετάζει τις συμβάσεις ονοματοδοσίας των chipset σε κώδικα, ώστε να μπορούν να απελευθερώνουν κώδικα για ήδη ανακοινωθέντα chipset, ενώ εξακολουθούν να αποφεύγουν διαρροές.