I know the bootloader hasn't been unlocked and the phone hasn't been rooted. I'm working with a few people to try to get this done. However I thought it would be good to setup a canonical repo for the Atrix HD's kernel source for when it is unlocked. I downloaded the kernel from motorola's source forge page and put it up on github for ease of distribution.
Available at https://github.com/C0deMaver1ck/MB886-Kernel for your forking pleasure.
Related
Let's say that I wanted to get into android rom development, what would be a good place to start to learn. I've downloaded several e-books about android development, but they all pertain to writing applications for android OS, not really getting into modding the OS itself. I suspect I'd need to learn about linux then translate that knowledge to android?
Anybody have any good places to start or good reference materials?
It appears that none of the cyanogenmod team is even going to do anything with the Captivate, they're all working on I9000 and Vibrant, totally ignoring the Captivate. So, I thought I'd get in there and try and learn.
Building Android from source - their own site is the best for instructions on how to build android: http://source.android.com/
Building Captivate requires downloading the sources, building the kernel using the build_kernel.sh after you've fixed the toolchain paths. Or you can just use the usual linux kernel building method that the script actually does underneath.
Then you need to build eclair (or froyo). Samsung has opensourced most of the code but not all so you need to figure out how to merge vanilla eclair source into Samsung's tree, and build it. There is a readme in the source from Samsung about what to change in the build files.
You're going to be doing a lot of googling . . . I haven't figured out all the details of the Samsung eclair build so you're on your own there. Maybe others can chime in.
-Atin
atinm said:
Building Android from source - their own site is the best for instructions on how to build android: http://source.android.com/
Building Captivate requires downloading the sources, building the kernel using the build_kernel.sh after you've fixed the toolchain paths. Or you can just use the usual linux kernel building method that the script actually does underneath.
Then you need to build eclair (or froyo). Samsung has opensourced most of the code but not all so you need to figure out how to merge vanilla eclair source into Samsung's tree, and build it. There is a readme in the source from Samsung about what to change in the build files.
You're going to be doing a lot of googling . . . I haven't figured out all the details of the Samsung eclair build so you're on your own there. Maybe others can chime in.
-Atin
Click to expand...
Click to collapse
Thanks. Thats what I'm talking about, a lot of what you said seems Greek to me. I'd like to learn how to do all that. I guess, just read a lot from the google source website?
My advice would be to first learn how to go muck in the linux kernel and the Android sources in general. The Captivate code has been hacked some by Samsung so it doesn't quite follow all the rules about where files are supposed to go (there is no vendor tree for example) but at least it is a start. The google source site is the best for instructions on how to do vanilla stuff that's not hardware specific. Google around for more specific instructions related to the particular problem you are trying to solve after that.
Building working stuff at this level isn't easy. Unless you are somewhat experienced or willing to spend a lot of time learning and making mistakes, I'd say leave this to people who have some experience at this level and come back to it when building for the Captivate is well understood and the knowledge has been distributed enough so lots of people can help you when you have specific questions (no one likes answering general "how to" stuff on a device specific thread).
-Atin
Over the past couple of weeks I was inspired by all the work being done to port ICS over to the Galaxy Tab. My question is- where is the "original" source code coming from for the kernel?
What I am looking for is something equivalent to the GB kernel source code available on the Samsung open source site (opensource.samsung.com). Since there is more "stuff" available regarding the GB kernel on the Galaxy Tab, I got over the learning curve of how to build the whole thing from scratch using the kernel source from the Samsung web site, and the "system" source from source.android.com (branch 2.3.4_r1). I won't say my first build did a whole lot, but it did boot to a working Android desktop.
I know Samsung has not placed a kernel for ICS up there yet for the Galaxy Tab "classic"... but you can pull a Samsung kernel from source.android.com. I compiled and flashed that kernel.. and turned my tab into a soft brick. When I compared the CM9 source that is being used for the ICS port to the tab (Meld Diff Viewer is my best friend), it was VERY different from the kernel source I pulled from source.android.com.
My guess is the ports are based on a HC kernel from the Nexus S. Unfortunately, I can't post this question in the DEV forum to ask directly... I suppose that's my punishment for lurking without posting. ;-)
Appreciate any help on getting this answered.
I've done some searching and found many dated and non-specific references on building AOSP for your device. I didn't even find anything referencing lollipop. I was wondering if somebody had written up some device specific instructions for the m7. I'm looking for information like pulling in the correct binaries and kernel source.
91ludesit said:
I've done some searching and found many dated and non-specific references on building AOSP for your device. I didn't even find anything referencing lollipop. I was wondering if somebody had written up some device specific instructions for the m7. I'm looking for information like pulling in the correct binaries and kernel source.
Click to expand...
Click to collapse
Which ROM are you looking for? I found the instructions for building CyanogenMod for the Nexus 6 to be helpful when I rebuilt CM7 for the original Droid Incredible. I don't see any reason it can't be extended to the M7 and lollipop--I can indicate the appropriate changes, if that's helpful.
wiki.cyanogenmod.org/w/Build_for_shamu
I'm just wanting to build straight from aosp with maybe a custom kernel source.
91ludesit said:
I'm just wanting to build straight from aosp with maybe a custom kernel source.
Click to expand...
Click to collapse
Ah. Well, I'm not an expert by any means, but I don't think it's quite that straightforward. The Android source released by Google has no support for any devices except Nexus devices. Various ROMs, CyanogenMod being the biggest, have created open-source device trees to support additional devices. In the source tree for the device that I built for (Droid Incredible), for example, there is code for "liblights", "libsensors", a kernel module, some firmware, some configuration tweaks for various system apps like Camera and Torch--and a configuration file for the kernel. So if you want to compile AOSP for your m7, you'll have to port all that code over to the AOSP tree.
You might find it valuable to try building CM12 for your device. If you can do that successfully, then you can start tweaking with the kernel config that CM provides to suit your needs. Building CM is also very well documented, and once you've done that, it's more clear how you'd go about trying to build AOSP, and you can use the stuff that CM has done to help you port to AOSP if you want.
Here's Google's information on building straight AOSP:
https://source.android.com/source/building-devices.html
Here are CyanogenMod's guides on building for m7 and tweaking the kernel config:
http://wiki.cyanogenmod.org/w/Build_for_m7
http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
Here is an XDA Developer guide to porting a device from one AOSP-based ROM to another:
http://xda-university.com/as-a-developer/porting-aosp-roms-using-source-code
Thanks for the info, that's what I was afraid of. I was wanting to build something like the Google play edition, but with all the latest security updates.
Hey fellas,
Currently I have CM13 compiled from source and its up and running for trltetmo (love it). I am just trying to see how other people are compiling toolchains and making them work. I have spent way too much time banging my head against the wall trying to get things running but I'm stuck using outdated sources and very buggy code...
Curious if:
- People have experience using SM and how they are updating it from source (osl from their manifest is non existent). Currently I can only find an outdated precompiled zip for SM found here.
- People have any experience using UBER and where is their source directory to pull updated code.
Currently I have several things where they need to be and if I can get some help applying a custom TC I may start to release optimized, minimalist, true (not jimmy rigged vzw files) CM13 zips.
NOTE: if it weren't for @fattire, @ZION959, @BotsOne none of this would be possible.
Hello all! Hope all is well by you.
Based on what I've seen on this forum, the latest available kernel for the Touchpad is version 3.4.x - an older, unmaintained LTS branch, forked from Qualcomm's repos.
It seems that the mainline kernel source has code for the MSM8660 platform (what the Touchpad is based on) which leads me to wonder if it's possible to get a mainline kernel running on the device.
If my optimism serves me right, this could open the doors to running more non-Android systems on the device!
So far my attempts at booting my compilations have yielded nothing more than a hang at the HP splash logo. I've tried different GCC versions from Linaro (targeting arm-eabi) to no avail.
I'm unsure if I'd need to tweak any DTBs, though the 3.4 kernels don't seem to make use of those.
Of course a splash logo isn't too verbose... might anyone know if there's a serial console I can access over USB or some hidden port internally? Has anyone else made a similar attempt with any progress?
Cheers!
PieGuy128 said:
Hello all! Hope all is well by you.
Based on what I've seen on this forum, the latest available kernel for the Touchpad is version 3.4.x - an older, unmaintained LTS branch, forked from Qualcomm's repos.
It seems that the mainline kernel source has code for the MSM8660 platform (what the Touchpad is based on) which leads me to wonder if it's possible to get a mainline kernel running on the device.
If my optimism serves me right, this could open the doors to running more non-Android systems on the device!
So far my attempts at booting my compilations have yielded nothing more than a hang at the HP splash logo. I've tried different GCC versions from Linaro (targeting arm-eabi) to no avail.
I'm unsure if I'd need to tweak any DTBs, though the 3.4 kernels don't seem to make use of those.
Of course a splash logo isn't too verbose... might anyone know if there's a serial console I can access over USB or some hidden port internally? Has anyone else made a similar attempt with any progress?
Cheers!
Click to expand...
Click to collapse
I am not an expert, but have learned a lot by tweaking the kernel for the Hp Touchpad. To my basic understating none of the native driver codes were release as they are not "open source". How the developers got it working is by tweaking the hardware from what is "based on". If the drivers where open source, it could possible be more helpful on getting a lot more done. All I can do is provide some links from others that had tried:
The LuneOS is using the same kernel branch as Android, but there is no development for the kernel:
https://www.webos-ports.org/wiki/Main_Page
https://www.webos-ports.org/wiki/Main_Page
It will be great to have a kernel to run Linux natively.
Here are some work around that others had used:
https://github.com/mikestaszel/ArchLinuxARM-TouchPad
https://github.com/CalcProgrammer1/kernel_tenderloin_debian
https://forum.xda-developers.com/showthread.php?t=2761381
I did the following videos running Ubuntu (arm) as Chroot and is very fast !
https://www.youtube.com/channel/UCKoir6bzzPU-Uq9UjcRR3hw
Good luck learning!
@PieGuy128
Take a look at this post from @elginsk8r about a possible 5.0 Kernel:
There is a 5.0 kernel floating around that looks promising (uses mesa rather than proprietary blobs for display) albeit missing some key hardware support in it's current state. If anyone would like to take a look at the kernel sources and see what can be done it can be found here https://github.com/flto/linux/tree/msm8660. Building and booting instructions are here https://github.com/flto/linux/wiki
original post:
https://forum.xda-developers.com/showpost.php?p=83040029&postcount=273