0

I am trying to build AOSP for nexus devices.

The following page has a list of Source Code Tags and Builds: https://source.android.com/source/build-numbers.html

You will notice that there are multiple builds / branches for the same device. What is the difference ? Is it because of hardware differences between different models of a nexus device (Eg: 16GB vs 32GB etc / Different LTE Bands) ?

How does one determine which branch will be compatible with a given device ? For example, if I synced MRA58K, and purchased a Nexus 5 D821, how will I determine that they are compatible ?

Rahul Iyer
  • 19,924
  • 21
  • 96
  • 190
  • Were you aware that AOSP builds only the OSS bits of Android? There are proprietary bits. You can probably get those bits using $AOSP/device/device/lge/hammerhead/self-extractors/generate-packages.sh and an OTA image or with a small mod and adb, as mentioned here: https://roostertech.wordpress.com/2013/11/11/building-nexus-5-rom-from-aosp/ – G. Blake Meike Nov 05 '15 at 03:25
  • I am aware of that - my question doesn't have anything to do with it. Since there are multiple branches compatible for the nexus 5, I was trying to determine what the difference between each branch was. The person in your post probably didn't read the instructions fully, because the proprietary binaries are available on the android site. – Rahul Iyer Nov 07 '15 at 15:20
  • Great. Just checking. I've built several different versions of AOSP for my Nexus5. All of them worked. The binaries available here (https://developers.google.com/android/nexus/drivers) are only for the Google device. Your device's drivers may be different. – G. Blake Meike Nov 07 '15 at 16:27
  • @G.BlakeMeike What do you mean by "only for the Google device" ? I'm talking about the Nexus 5... I don't understand. The drivers should be the ones listed on the android site. – Rahul Iyer Nov 08 '15 at 04:52
  • @G.BlakeMeike Can you tell me which instructions you followed when building AOSP for your Nexus 5 ? I was just trying to follow the the instructions on the android site. – Rahul Iyer Nov 08 '15 at 04:54
  • There are several versions of the Nexus 5, for several different carriers. No guarantee that they all have identical firmware. Getting a good build is tweaky: depends on the AOSP version, etc. I usually google for recent instructions and follow 2 or 3 at once. – G. Blake Meike Nov 08 '15 at 15:42

2 Answers2

1

To understand what builds goes with what device you might be better off going to the Nexus Factory Images page. Each device has a 'code name' which as you guessed referred to particular models. For example the Galaxy Nexus had 4 versions due to a combination of radios and Google Wallet capability.

Once you know what device/devices you have for building from AOSP you'll need the proprietary drivers from Nexus Driver Binaries. Or extract them from a stock device.

It may also help to read: Android device configuration for AOSP

If you are trying to figure out what was the difference between branches i.e. between say 6.0.0_r1 and 6.0.0_r2 - 'git diff' is the tool. Unfortunately I'm not aware of any official summary of what goes into a branch.

Community
  • 1
  • 1
Morrison Chang
  • 11,691
  • 3
  • 41
  • 77
  • Using the factory image defeats the purpose of why I'm building AOSP - to create ROMS, after modifying the source code. If you look at the page, there in my post, the code name isn't mentioned, just the device. – Rahul Iyer Nov 07 '15 at 15:20
  • Yes, and to figure out what device goes with what code name look at the Factory Images page. The Factory Image also tells what is the latest version of the code that is supported. Or did I misunderstand your question? The changes in each branch (i.e. the different versions of 5.0.x) would require a looking at git diffs. – Morrison Chang Nov 07 '15 at 15:31
1

On this page: https://source.android.com/source/build-numbers.html

You can choose any build, that supports your device. It is unclear what the difference between two branches is, but for example, I had no problem building MRA58K and flashing it to my nexus 5. Things seemed to work.

I also directly flashed the factory image for MRA58N on my device - again everything seemed to work.

I guess in general: If the version number is different, then there are probably bug fixes, optimisations, etc. If the version number is the same (but the build number is different), then it is unclear what the changes are, but you can probably flash both.

But since downloading a branch consumes a lot of bandwidth, in future I would just download the branch with a HIGHER build number, under there is a specific reason (you would know this if it mattered) to download the branch with a lower build number.

Rahul Iyer
  • 19,924
  • 21
  • 96
  • 190