How do Devs Patches/Updates Closed Source Binaries or Drivers for AOSP/CM Based Rom ? - Nexus 5 Q&A, Help & Troubleshooting

Well as you all know, Nougat just landed officially on Newer Nexuses & AOSP Source code. and unfortunately N5 wasn't "good enough" to get official google support, but we'll soon get Nougat test on our beloved N5 thanks to great Dev community supporting it.
but i was wondering the Question that title says !
though AOSP Source code is uploaded for 7.0 release , there are some binaries that i believe closed source https://developers.google.com/android/nexus/drivers#hammerhead , and i think they should be updated as well to properly work any new update on device , that's why we see binary files updated by google till now for every official update.
but as N5 is now drop-out of Official support,so google surly will not provide updated binary patches, so does hardware company (Broadcom, Qualcomm , LG ) provides these patches after official support OR our Dev do some digging even though they are closed source and finally by trial & error they fix/updates these binaries ? if it's done by Devs individually, wouldn't everyone's thought for dealing with problem might be different which ends up making some ROMs more stable on one area and others in some different area !
( PS: Well you might got it from Question it self that i'm not a proper technical person in Android and even in that matter in coding , i'm just a guy who wonder these thing & tried to find answer on google but didn't get any satisfactory so end up asking in new thread instead on QA thread so that some one like me also get to know about it also , my previous device (Samsung i9070 ), having closed source CPU (NovaThor U8500) & CPU maker drifted from business , gave insane trouble to XDA devs while porting unofficial updates, so they fed-up and drifted away to new device within months which makes me more curious about this Question, hopefully i'll get proper answer from a Dev/Experienced Member )

jineshpatel30 said:
Well as you all know, Nougat just landed officially on Newer Nexuses & AOSP Source code. and unfortunately N5 wasn't "good enough" to get official google support, but we'll soon get Nougat test on our beloved N5 thanks to great Dev community supporting it.
but i was wondering the Question that title says !
though AOSP Source code is uploaded for 7.0 release , there are some binaries that i believe closed source https://developers.google.com/android/nexus/drivers#hammerhead , and i think they should be updated as well to properly work any new update on device , that's why we see binary files updated by google till now for every official update.
but as N5 is now drop-out of Official support,so google surly will not provide updated binary patches, so does hardware company (Broadcom, Qualcomm , LG ) provides these patches after official support OR our Dev do some digging even though they are closed source and finally by trial & error they fix/updates these binaries ? if it's done by Devs individually, wouldn't everyone's thought for dealing with problem might be different which ends up making some ROMs more stable on one area and others in some different area !
( PS: Well you might got it from Question it self that i'm not a proper technical person in Android and even in that matter in coding , i'm just a guy who wonder these thing & tried to find answer on google but didn't get any satisfactory so end up asking in new thread instead on QA thread so that some one like me also get to know about it also , my previous device (Samsung i9070 ), having closed source CPU (NovaThor U8500) & CPU maker drifted from business , gave insane trouble to XDA devs while porting unofficial updates, so they fed-up and drifted away to new device within months which makes me more curious about this Question, hopefully i'll get proper answer from a Dev/Experienced Member )
Click to expand...
Click to collapse
Short answer: they don't. Either they use old binaries that still work, or they use binaries from similar devices that are updated. For example, the nougat build available here for the nexus 5 has been built on old marshmallow binaries. Only the kernel can be modified since it's open source. There is not much we can do with closed source blobs unfortunately...

Related

[Q] Noob development question

I don't know a whole lot about how android phones work so this is probably a stupid question.
If the android operation system code is open source and available for anyone to download what's stopping people from putting pure AOSP goodness on any given phone? Is it the kernel or bootloader or what?
Fe_Man said:
I don't know a whole lot about how android phones work so this is probably a stupid question.
If the android operation system code is open source and available for anyone to download what's stopping people from putting pure AOSP goodness on any given phone? Is it the kernel or bootloader or what?
Click to expand...
Click to collapse
from my understanding it has to be completely recoded or whatever to run on the hardware of a new phone, I think Cyanogen and crew just supply the base and framework to build on... but yes its out there for anyone to try and port, typically takes a team of devs with different specialties
blazing through on my VZ Droid Charge 4G
Kernel, RIL, and potentially a number of other things.
Just like drivers has to be ported for Linux on any PC (if the company didn't already code one for it), drivers has to be ported to a pure AOSP ROM from a TouchWiz source (which is still Android-based).
Most company-applied UIs to Android are deep in the system, therefore, you can't just take some files and put it into an AOSP ROM and have it magically work (known as kanging from another ROM), but you have to write in some stuff and build it specially for AOSP before it works.

[Q] Android 3.0 Honeycomb Kernel

can someone explain to me if you were to find the android 3.0-3.2 firmware and or source code files that are used on a tablet (obviously itd be a honeycomb os), with the source code file could work on porting a honeycomb rom be attempted ? or is the firmware/source code im speaking of incorrect of whats needed in rom development. I found an article and have downloaded what was both labeled source code (there were versions used by manufacturer for android 3.0 -3.2) i downloaded the 3.0 version of the "source code" and i also downloaded a matching version of the firmware for android 3.0 used by manufacturer. just looking for more insight before i start posting links or anything, want to make sure I'm giving accurate information .
Jon_Mull said:
can someone explain to me if you were to find the android 3.0-3.2 firmware and or source code files that are used on a tablet (obviously itd be a honeycomb os), with the source code file could work on porting a honeycomb rom be attempted ? or is the firmware/source code im speaking of incorrect of whats needed in rom development. I found an article and have downloaded what was both labeled source code (there were versions used by manufacturer for android 3.0 -3.2) i downloaded the 3.0 version of the "source code" and i also downloaded a matching version of the firmware for android 3.0 used by manufacturer. just looking for more insight before i start posting links or anything, want to make sure I'm giving accurate information .
Click to expand...
Click to collapse
Given that Google has not officially released the source code, you'd be posting warez which is against forum rules. Once Google officially releases source, devs could try to port it to the G2x but with ICS so close to being released/announced, I bet most people would wait for that since it officially supports smaller and lower resolution screens like the ones in phones.
Your correct google has not but other manufactures of tablets using honeycomb have. Following the general public license released the source code which has been made aware of to google by said manufacture. The source code as well as firm ware is readily available without by passing anytype of payment or "pirating" . So how would this be considered warez?
I was under the impression that they only released their specific bits of code and not the entire source code. I may be wrong, this isn't something I've been watching closely.
I don't think Honeycomb has been released yet. All custom roms are stock based. We have OC/UV kernels but the roms are just slight variants of stock.
Sent from my LG-P999 using xda premium
Maybe i misread something , but if you google something along the lines of asus honeycomb source code, you'll find a link to asustek which has said source code for various versions of honeycomb , ie 3.0-3.2 don't quote me on it being 100% being what people are looking for just something i stumbled across

[Q] Source Link for 6210?

OK I'll probably get flamed by people like I did in the Development forum calling my simple question "STUPID"..... but could this be the link to the source code for the P6210?
https://opensource.samsung.com/index.jsp
We already knew where the source code was. The problem is that they have not provided the wifi drivers in the correct form, according to garyd9 the wifi drivers are only binary, so i think that means he won't be able to do much with those wifi drivers. Another problem is that the source has not been updated to work with the newest over the LA3 firmware samsung has provided according to garyd9. If we didn't have the source code, then garyd9 wouldn't have been able to build a custom kernel for our tablet. You can find his kernel here http://forum.xda-developers.com/showthread.php?t=1421466
Sorry if it sounds like if i'm being mean to you, but the source code links had already been posted a long time ago in the development section http://forum.xda-developers.com/showthread.php?t=1375911

Port of released Broadcom CPU and GPU drivers to AOSP based ROMs for BCM21553 SoCs

Hi to all Broadcom BCM215XX armv6 devices running android!
I'm glad to announce that, our organisation, BroadcomCM will start working on the port of AOSP ICS drivers for our CPU and GPU, BCM21553. First of all, I've asked moderators to close all my threads, why? We know we have [GENERAL] Thread for our projects but most users don't care, so this will be the thread to talk about it, development!.
Samsung stopped the development on this devices long ago, but their drivers where not ever released. Thanks to our petition, we have managed to force Broadcom to release the drivers, and we managed to release them on ICS, android 4.0+, way!
Index:
Post 1 (this) ...................................... Information about drivers
Post 2 .............................................. Frequently asked questions
Post 3 .............................................. Drivers on Github (Opensource)
Post 4 .............................................. Videos showing HW working
Click to expand...
Click to collapse
A bit of introduction:
Broadcom gave to us test driver builds, which were prebuilt, .so libraries, and we could not edit them, but they gave us the code to patch framework to make those prebuilt libraries work with our AOSP project (by that time, CyanogenMod 7.2). After some re-search and lot of work on our team (thanks Legolas93), I managed to implement AOSP Alcatel drivers to our CyanogenMod 7.2 Based ROM. This was the biggest change ever happened to that device, as we managed to fix 100% HW and as a cosnequence, libstatgefright was fixed too, and HGL. This resulted on camera/vide recordi (media profiles, encoding and decoding) to work, this was RC1. REMEMBER: As we extracted this libs from sotck AOSP alcatel ROM they are prebuilt, so we can not modify them at all.
SInce that moment, project on HW was stopped, and we focused to fix other issues not releted to HW (ext4, backlight, led, tethering, BT...), and we managed (most of them), and everyone enjoys now a CM, AOSP and Cyanmobile port brought to you by broadcomCM.
What else?
Broadcom released, or seemed to, BCM21553 driver source for AOSP ICS source. They released the source, so now we can know how our chip work. What is weird about it, is that this chip is released for ICS source, when it is an armv6 chip, and any device of our family has official ICS. (Maybe BROADCOM are really nice people, or maybe they trolled us). We will add new tag to be defined on Boardconfig.mk to make the drivers work on it.
So.. We did it?
Yes, we forced Broadcom to release the source, you, we, we all did this possible, and we should be prud of ourselves.
Will with this come BroadcomCM to develop?
Well, yes and no, we already have some surpises for BroadcomCM ROMs owner, which were not reletated to drivers at all, and they affect all devices. As this work is nearly finished (first alpha), we will release this next week, and then we will start working on it. Keep calm, good things make people wait for it don't ?
What is now?
Now, nice question. We will implement this source code on our CM9, ICS, branch. (all sources can be found on our github), and implement them on the build, will that be easy? OF COURSE NOT. Broadcom trolled us with first test builds of drivers, so maybe expect the same from that sources, we don't know and we will not know unitl we build it, and we have to compare each file, ONE PER ONE, so it will be a hard work.
Frequently asked questions can be found on the second post, as well as a video to show you what was having a device with drivers, and what was not. (Qualcomm vs Broadcom [armv6]).
ANY ETA? (Estimated Time of Arrival)
No. I can not tell any eta, I'll maintain you informed to you on this thread. I'll start my work next week (Exams on this one, need to study ), and I'll keep calm, I'm as amazed as you, but we have to be very down to earth. Broadcom lied to us, maybe they made it too. It will take some time to study and implement, and then make them work!
WILL THAT FIX ALL THE ISSUES WE HAVE ON ICS?
No, but will fix the most important one, HW. What I mean by hardware is the animations will be smooth, video on second post. So hopefully we will run a good ICS build, but expect camera and Audio not working too. Audio? Well some progress have been made on shadows, camera? That will be hard, really hard. Even Cooper (Galaxy Ace MSM7x27 based chip wasn't able to run camera at the first, since Qualcomm not release their source too).
AND WHAT ABOUT CM7 (2.3.7 based roms)?
We hope 2.3.7 ROMs will benefict from it, but we are not sure, we will have to test them and implement on our CM7 tree, but as they are for ICS, or this seems to, first goal is ICS, as we have 100% HW working, but with prebuilt, for the moment is OK and not our priority,
CAN I IMPLEMENT THE DRIVERS ON MY DEVICE?
No, to implement those dirvers you will need big knowledge of BroadcomCM devices, and I think our team has. We have managed to solve many bugs, and, talk with broadocm to solve first driver errors we had.
Ok, we have managed to get drivers working on our CyanogenMod 9.1 Ice Cream Sandwich version 4.0.4. Remember the drivers were given in 4.0.1 which were a bit different from actual 4.0.4 used.
After the release of the ROM with first version of those drivers included, we are glad to announce that, as always, we opensourced this "4.0.4 drivers" as well as Broadcom did. Feel free to take them, and use it at your own, to build diferent ROMs, such as AOKP, Paranoid, AOSP... Or Jelly Bean . This are drivers source, you will need to cherry-pick them to your local repo:
/bionic
/frameworks/base
/hardware/libhardware
/system/core
Broadcom was nice, and they created a new HGL lib, which they open-sourced too, and give the name of libv3d, kind of a new HGL lib, which should complish all patches and BCM21553 requiriments, also opensourced on BroadcomCM.
/brcm_usrlib also known as libv3d
You can also find original patch on Broadcom's page (4.0.1 patch) and the diff files I've made, which they will give you more clues on how to implement them on other sources.
On those videos, we can see that those drivers are fully working! Thanks for those youtubers, we can show to the world that WE DID IT!
ME presenting those drivers:
COOPERVE:
TOTORO:
TASSVE:
CORI: (WIP)
you guys are amazing,thanx for all............
Does this mean we can build other roms as well?
like aokp / paranoid android / pac /miui etc.
Anyhoo, I wish you goodluck.
u doing a great job buddy.
keep it up. :thumb:
n best of luck for ur exams..
---------- Post added at 11:18 PM ---------- Previous post was at 11:18 PM ----------
CharsiBabu said:
Does this mean we can build other roms as well?
like aokp / paranoid android / pac /miui etc.
Anyhoo, I wish you goodluck.
Click to expand...
Click to collapse
yup..
Always Great biel and his team..
using the great ace -i
Only these lines in legacy_prebuilts.mk already made me start to give up the drivers must be another troll source, maybe I'm wrong...
libEGL_POWERVR_SGX530_121.so \
libEGL_tegra.so \
libGLESv1_CM_POWERVR_SGX530_121.so \
libGLESv1_CM_tegra.so \
libGLESv2_POWERVR_SGX530_121.so \
libGLESv2_tegra.so \
Maybe they gave us fake one or another test builds. Still will take time months/year. Just buy new phone. This doesnt worth it.
Good luck, BroadcomCM!
It means,that we can expect cm9 only woth not working camera and sound?
This is some real good news if the broadcomCM have given the proper sources... Well, let's hope bielt.v keeps us updates
Dr.Pepper said:
It means,that we can expect cm9 only woth not working camera and sound?
Click to expand...
Click to collapse
If we get stable cm9 thats also great for us..
using the great ace -i
I highly doubt a big manufacturer would "troll" its consumers and volunteer developers with "fake" driver sources.
Sent from my GT-I9195 using xda app-developers app
I don't think they trolled us, they wrote a documentation and made an announcement for Fake drivers? A big manufacturer like broadcom will not play hide and seek with us, they know that they will lose their respect.
Sent from my GT-S5360 using Tapatalk 2
NICE!
CharsiBabu said:
Does this mean we can build other roms as well?
like aokp / paranoid android / pac /miui etc.
Anyhoo, I wish you goodluck.
Click to expand...
Click to collapse
We can leterally "port" those, (copy paste u know, lol)
Mitko said:
I highly doubt a big manufacturer would "troll" its consumers and volunteer developers with "fake" driver sources.
Sent from my GT-I9195 using xda app-developers app
Click to expand...
Click to collapse
Its natural, lol, happens once in a millenium, but these maybe true... but one thing is serioussly doubtful that the readme says
Readme.txt: last line:
make -j8 TARGET_DEVICE=generic_armv5
Click to expand...
Click to collapse
and armv5 doesn't exist ?? && moreover our bcm21553 devices are more likely to be armv6 variations....
really confuses me
Code:
I havent done enough research tho (due to less time on pc)
can anybody explain me that ??
There a long-long way to go. hopefully the awaited days come with good news.
XDA-Developer App
So I'm noodling through the source code, and I guess I'm gonna see what I can do to try and compile something for the Raspberry Pi. Fingers crossed.
EDIT: Also, according to wiki, ARMv5 is in fact a thing. Who knew?
http://en.wikipedia.org/wiki/ARM_architecture

Will there be a Custom Rom?

Does anyone know about this topic?
https://forum.xda-developers.com/mi-note-10/how-to/custom-development-t4018813
In short:there are same some efforts trying to get custom Roms but nothing groundbreaking yet.
I am working on the device tree right now to compile from source. Not ready yet and don't have the device in hand right now (should arrive soon) s.o. else is trying with treble images.
nchantmnt said:
https://forum.xda-developers.com/mi-note-10/how-to/custom-development-t4018813
In short:there are same some efforts trying to get custom Roms but nothing groundbreaking yet.
I am working on the device tree right now to compile from source. Not ready yet and don't have the device in hand right now (should arrive soon) s.o. else is trying with treble images.
Click to expand...
Click to collapse
I thought device tree is something that was used to be leaked from Xiaomi
As far as I can see there is no device tree published by xiaomi for tucana (our device)
Only thing we have rn is kernel source.
But we can create device tree by ourself. There are some basic guides online. Rest is compare with existing device trees for similar devices and copy&paste.
for now I have downloaded k20 device tree, removed everything k20-specific (e. G. Popup Camera) and adapt further files for our device(s)
When my handset arrives (should be today) I can start unlock procedure (should take some time to get the code AFAIK), then I can unlock bootloader, flash custom recovery and see if I can get my device to boot properly after flashing... Then comes troubleshooting.
Right now I am expecting maybe a halfway booting device or broken/missing functionality at best. But we will see
I hope soon
The more people help together the faster we can get some Roms ?
nchantmnt said:
The more people help together the faster we can get some Roms ?
Click to expand...
Click to collapse
If you have a group for this, would you pm?
No group yet, but you still get an pm
Anyone willing to collaborate is welcome to pm me as well
I have seen this Android 9 source code. Is it helpful?
https://github.com/MiCode/Xiaomi_Kernel_OpenSource/tree/tucana-p-oss
I thought this model would have more support and after 4 months there is no Rom. I hope that now that the price is going down more people buy it and we have more community. Thank you for what you know and develop.
ignalop1983 said:
I have seen this Android 9 source code. Is it helpful?
https://github.com/MiCode/Xiaomi_Kernel_OpenSource/tree/tucana-p-oss
I thought this model would have more support and after 4 months there is no Rom. I hope that now that the price is going down more people buy it and we have more community. Thank you for what you know and develop.
Click to expand...
Click to collapse
Just an incomplete kernel sources, I think is useless.
https://www.xda-developers.com/poss...-fcc-certified-snapdragon-730g-penta-cameras/
There will be a lite edition soon. The only difference on hardware is number of pixels.
If its ROM is same or almost the same to current models, we should get some progress around development.
Anything new?
UtkuAblak said:
Does anyone know about this topic?
Click to expand...
Click to collapse
Please look at the existing topics first, before opening another topic!
nchantmnt said:
As far as I can see there is no device tree published by xiaomi for tucana (our device)
Only thing we have rn is kernel source.
But we can create device tree by ourself. There are some basic guides online. Rest is compare with existing device trees for similar devices and copy&paste.
for now I have downloaded k20 device tree, removed everything k20-specific (e. G. Popup Camera) and adapt further files for our device(s)
When my handset arrives (should be today) I can start unlock procedure (should take some time to get the code AFAIK), then I can unlock bootloader, flash custom recovery and see if I can get my device to boot properly after flashing... Then comes troubleshooting.
Right now I am expecting maybe a halfway booting device or broken/missing functionality at best. But we will see
Click to expand...
Click to collapse
Well, just tell me if you need help.
Same here, I am very tempted by the Note 10 but I am waiting for an aosp rom as many people complained about the stock miui rom
Any news or update on this? Would love to buy a Mi Note 10 as their prices have gone down but with the lack of development I'm kind of leaning towards the 9t even tho I'm worried about that front camera as some have had issues. I suspect not many are developing for this device because of the high price. Hopefully whoever said something up there about the Note 10 lite gets custom ROMs going with more devs
I'm still trying here but very short on time. We have some good progress on device tree thanks to someone else (thanks Hlcpereira).
nchantmnt said:
I'm still trying here but very short on time. We have some good progress on device tree thanks to someone else (thanks Hlcpereira).
Click to expand...
Click to collapse
yes he is working on this device.
nchantmnt said:
I'm still trying here but very short on time. We have some good progress on device tree thanks to someone else (thanks Hlcpereira).
Click to expand...
Click to collapse
Awesome news! Thanks :good:
I think the development goes now straight because we have MIUI Stable based on Android 10 now.
Good luck!

Categories

Resources