Treble has been around for now 4 years, we can now draw conclusions about the idea, its architecture and how Google follows it up. The architecture pretty much stands strongly. Props to the people who planned it, I was impressed then, and still am. 1/26
I'll only discuss about the Google/AOSP-related stuff. There has been a huge lot of stuff going on related to how OEM/SoC vendors make things complicated (and unlike what many people would believe, Qualcomm is a big offender, while Mediatek is quite okay). 2/26
Also, I'll make some approximations, because the topic is much more complex (and interesting IMO), and roots deeply into the relations between Google, SoC vendors, ODM, OEMs, carriers, IP
vendors, TEE vendors and many more. 3/26
AFAIU the idea initially was that Google would upgrade Android framework, independantly of OEMs, so noone would be left with old Android version. However this has evolved, and now it's still up to the OEM to do the upgrade. Now Treble becomes merely a way to make it easier. 4/26
The implementation has been a very rough road. including for legitimate reasons. SAR, noVNDK/vndklite, SPL-bound keystore to name just a few. Supporting Treble through those was still technically possible (I did!), but I understand Google didn't want this technical debt. 5/26
There has been few things where Google abandonned support, where it was possible and clean to keep up in my opinion, like sdcardfs kernel crashes, bpf, scudo, or Oreo wifi hostapd. 6/26
And then, there are some places where Google clearly didn't bother to try. For instance, audio hal 2.0 support has been removed from Android 12. And for what reason? Because OEMs are not allowed to certify an Android 12 with audio hal 2.0. 7/26
Also, Treble requires Google to standardize comparable hardware. One major issue has been under-display fingerprints, a thing since 2018. This requires extending abstractions to support it. 8/26
Google waited Android 12 and their Pixel 6 to standardize under-display fingerprints, which means that all devices with that feature released until then didn't have the proper compatibilit
y layer, and thus made it much harder to support. 9/26
Treble was the promise for long-term support of all Android smartphones. Since GRF, Treble is real for OEMs, where does it take us? Let's take an Android 12-launching Snapdragon 480 device as a reference. 10/26
Under GRF, this SoC started as Android 11, so it would have Treble upgrades up to Android 14. For our Android 12-launching device, this means 2 Android upgrades. If this sounds familiar, i
t's because it is. Most OEMs already do 2 Android upgrades. 11/26
I said Treble would make upgrades easier. Having only 2 easy upgrades, doesn't mean OEMs will stop upgrading after those 2 upgrades, so that's still a win right? Let's turn to SoC vendor support to see some light... 12/26
So far, SoC vendors haven't promised anything better, the wording merely changed. Let's take the longest-supported (for both upgrades and manufacturing) SoC ever, the Mediatek MT6580. I believe this one started with Android 4.4. And finished with Android Pie. 13/26
Under GRF/Treble, MT6580 would have been released and staid with Android 4.4 vendor. GRF would provide 3 years of upgrades, so uh, that gives us to Android 7.0. MT6580 devices released wit
h Android 7.0 would have remained forever under Android 7.0 without upgrade. 14/26
Obviously, the elephant in the room when speaking about upgradability are iPhones, current state is that iPhone 6, released in september 2015 still gets this year upgrade. Google's then de
vices were Nexus 5X/6P. Those got only 2 major upgrades, ok that's bad. 15/26
But that's why Treble has been created, so let's check in on the first Google device supporting Treble, Pixel 2, released 2 years later. Thanks to Treble it is technically possible to upgrade them to current Android, Android 12, my GSIs are a proof of that. 16/26
So, overall, with 2 fewer years needed (for a device released in 2017, vs one in 2015), the expectation would be that of course Pixel 2 got Android 12! Well, sorry to disappoint, but it stopped at Android 11, and without keeping on with the security patches. 17/26
With Pixel 6 coming, we'll hear a lot of Google blaming SoC vendors for poor upgrades, and how Google being their own SoC vendor will make upgrades much more better. 18/26
Do you remember when Google said carriers were preventing upgrades and became a carrier? Do you remember when Google said OEMs were preventing upgrades, and then became their own OEMs? Nex
us 5 had 2 major upgrades, Pixel 2 had 3. Nexus 5 had 3 years of upgrades, P2 had 3. 19/26
Perhaps most people don't know about it, but there has been some OEMs doing very long-term support of their devices. Fairphone 2 released in 2015 got an upgrade in 2021 (Sadly not for a very recent Android version though). nVidia Shield 2015 still gets upgrades in 2021. 20/26
We'll soon hear how Fuchsia will help bringing forever upgrades to every device in the world. Maybe try to be suspicious about those claims, and analyze everything that's been said over and over again in the past. 21/26
Overall, I think Treble has mainly been an excuse to ask OEMs to improve their upgrade support, but we managed to get only one additional year. This is still very bad. Overall, I believe that no technical measure can fix the upgrade circles. 22/26
Again, I believe that technically Treble has been super impressive work, and I'm still impressed by some new parts. And even though I think that overall the results aren't there, I'm still
really happy about what I can achieve, almost alone, using this technology. 23/26
I believe that OEMs monetary incentives are simply not aligned with repairability or long term software support, and I don't even blame them for that. We had jokes with some former colleagues about how OEMs are just brand stamps, ODMs are just plastic mold injectors. 24/26
No-one in the whole pipeline cares about software, software is merely a comodity to help sell hardware. On PCs the situation is better because there are people selling the software and not
hing else. Maybe it's time some people start to sell smartphone's OS software. 25/26
There has never been a better day to launch into smartphone OS, because thanks to Treble you can target thousands of various Android devices, ranging from 30$ to 2000$, with very little wo
rries about drivers. 26/26

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Husson Pierre-Hugues

Husson Pierre-Hugues Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(