[REAL DEVELOPMENT] ICS Building for Flyer - HTC Flyer, EVO View 4G

This is not a thread to say ‘thanks’ to developers. Only post here if you have some input in this development progress, by either fixing bugs, or coming up with ideas (and ideally, try your idea and report what happens).
Having that said, let’s move on to where we are at the moment. Currently, we have a build which is based upon Ice Cold Sandwich 6.2 Test Edition for the HTC Desire HD. This build boots up by flashing my custom kernel on it, based on Flyer HC Original Kernel Source, with some patches:
-Quota2 Support
-Genlock Support
-Updated KGSL driver by applying Lord Clockans patches from his kernel
The ZIP we are working on now, can be downloaded here:http://w728685.open.ge.tt/1/files/9iI3CbF/0/blob?download
This ZIP contains a build which is mainly Lord Clockans ICS, with essential changes in the ROM to get it booting (we used LeeDroid’s Flyer HC as the donor ROM). This ROM is made for a HoneyComb HBOOT!
After you have flashed that ZIP, this is the kernel you need: http://ge.tt/9iI3CbF/v/1
You MUST flash this kernel to get it up and running, or it’ll just loop in the logcat complaining about unsupported stuff.
This set should do the following:
-Boot up (bootanimation resets after some time, it’s ok, it will boot within 5 minutes).
-Touchscreen works after you did this: open ADB Shell (by entering ‘adb shell’ on your pc,), and send the command “echo ‘1’> /sys/android_touch/event_google”. Now touchscreen should be working. (For some reason the file 90flyerhacks in /system/etc/init.d doesn’t do its job. If anyone has a clue > say so!) Also, the ntrig.c file in /drivers/input/touchscreen/ is modified in the kernel, don’t know if it helped though.
-Full Hardware Accceleration
-Screen is bugged at certain moments (seems to happen especially during things concering wallpapers. Rendering a wallpaper, showing a heavy LWP, etc.). The build.prop file contains some lines such as:
ro.fb.mode=1
debug.composition.type=gpu/mdp
debug.fb.rgb565=0
Perhaps we have to change these lines to get it running without issues (strange thing is, logcat doesn’t seem to make an issue about this). We can also try a recompile of the kernel using the entire driver folder from Lord Clockans kernel (it’s in /drivers/gpu/msm/ in his kernel, and /drivers/video/msm/gpu/kgsl_adreno205_hc in ours, moving the folder to where it should be causes issues, so we keep it like this for the time being).
-Sound is working
-Backcamera seems to be working fine, haven’t tested frontcamera.
-Hardware buttons under the screen aren’t working, and this should be a low
priority for now. It isn’t ideal to use them in ICS anyway (different button functions in comparison with the softbuttons), and I think we shouldn’t focus on this for now.
-GPS switch can be enabled, haven’t tested whether it works.
-Bluetooth switch can be enabled, but turns off automatically after about ten seconds.
-WiFi switch can’t be changed, logcat tells us that it can’t connect with /dev/rfkill, applying this patch in the ramdisk could fix it:
https://github.com/OpenSensation/an...mmit/da09360d70888a7e126871ab2ae5b218514cad18
-Power button and Volume buttons work fine.
-Pen works after we send the event_google command mentioned before.
If the ROM immediately reboots within 10 seconds and it seems like it’s looping, and you can’t even logcat, hold down Power and Volume Down until you get to HBOOT, select FASTBOOT, and enter ‘fastboot erase cache’ in the CMD/Terminal, and reboot, and it should work.
And that’s about it for the current things we know I think. If you manage to fix something, please write down and report what you did to fix it, so we can keep a list. I will work on a vendor folder using the known information, so we can compile a ROM from source, made for our device.
And last, but not least: don’t post here asking for release dates. We will do our utmost best to bring ICS experience to the Flyer, but do not bug us. Thanks.
Now let’s get this up and running guys! I will keep a log of what is fixed and what is not, so we can keep the thread organized. Else we’ll have 50 ZIPs around, not knowing which one is the right one et cetera.
Source code of kernel: http://github.com/Chaosz-X
Ramdisk will be uploaded tomorrow.
Donations are much appreciated, as I'm developing and building atm on a 1.67GHz Dual core...
Donations can me made to [email protected] using Paypal.

i suggest creating two repos... one for ROM and one for kernel... that way single file changes can be tracked even on ROM front, not just kernel...
willing devs can fork those repo and send pull requests to main repo when they get stuff working

I'm not a developer, and I have nothing but love for all the great devs that worked so hard to bring ICS to the Flyer.
Might I suggest, however, that instead of pursuing CM9 builds, the next effort be centered around porting the Android Open Kang Project (AOKP) ROM? In terms of features and customizations, it's considerably ahead of CM9, with numerous supported devices to boot.
I think this ROM, versus CM9, would give users the most flexible and dynamic ICS experience for their Flyer.

Chaosz-X said:
-Touchscreen works after you did this: open ADB Shell (by entering ‘adb shell’ on your pc,), and send the command “echo ‘1’> /sys/android_touch/event_google”. Now touchscreen should be working. (For some reason the file 90flyerhacks in /system/etc/init.d doesn’t do its job. If anyone has a clue > say so!)
Click to expand...
Click to collapse
Does it work if you add
write /sys/android_touch/event_google 1
to the init.rc file?
Could you post the init.rc file where you trigger the init.d scripts?

nickiberli said:
Does it work if you add
write /sys/android_touch/event_google 1
to the init.rc file?
Could you post the init.rc file where you trigger the init.d scripts?
Click to expand...
Click to collapse
yes that should work correctly

No, I didn't add that. I'll try it tomorrow (or one of you, if you have a Linux machine ready. Laptop with Ubuntu is having some issues atm, can fix it tomorrow).
So, assuming that's working, let's get to the display. We know that it causes issues, but how?
-Logcat doesn't error (except for HtcEbdLog, saying something about rotation, which seems to happen when glitches occur. Perhaps we need to swap the files?)
-At the very beginning, it does tell that initOverlay failed. This overlay-thing is baked in the ROM, and can be disabled in the ROM itself by setting an option to 'false' in the vendor setup. We don't know if it fixes the issue, but since the attempts to add this functionality to the kernel failed, it could be a better idea to fix it in the ROM to get rid of the error.
Any other suggestions?
Edit: and before I forget, tomorrow I'll check the ZIP for what is changed in comparison with the ROM it is based upon, so we know what we have to add in to a new build too.

Chaosz-X said:
No, I didn't add that. I'll try it tomorrow (or one of you, if you have a Linux machine ready. Laptop with Ubuntu is having some issues atm, can fix it tomorrow).
So, assuming that's working, let's get to the display. We know that it causes issues, but how?
-Logcat doesn't error (except for HtcEbdLog, saying something about rotation, which seems to happen when glitches occur. Perhaps we need to swap the files?)
-At the very beginning, it does tell that initOverlay failed. This overlay-thing is baked in the ROM, and can be disabled in the ROM itself by setting an option to 'false' in the vendor setup. We don't know if it fixes the issue, but since the attempts to add this functionality to the kernel failed, it could be a better idea to fix it in the ROM to get rid of the error.
Any other suggestions?
Edit: and before I forget, tomorrow I'll check the ZIP for what is changed in comparison with the ROM it is based upon, so we know what we have to add in to a new build too.
Click to expand...
Click to collapse
u want me to add stuff to that ramdisk?
start a github repo for the ramdisk and ROM too... trust me... its VERY helpful...

I'll start installing Ubuntu within 30 minutes, and will add everything to a GitHub by tonight within about 3 hours I think.

Chaosz-X said:
I'll start installing Ubuntu within 30 minutes, and will add everything to a GitHub by tonight within about 3 hours I think.
Click to expand...
Click to collapse
thats great... it should make keeping track of changes much easier and other interested devs can contribute if they want...

Hello, all.
Attempting to help by working on the build.prop settings. I'm S-OFF with revolutionary and have my device fully configured with the Honeycomb HBOOT/radio/bootloader/etc.
After flashing the ROM and the kernel, the device would immediately reboot upon attempting to return to the main recovery menu. I had to fastboot oem rebootRUU and reflash Globatron's PG41IMG-WIFI-light-B10 zip to get recovery back.
The device never proceeded to the boot animation.

Thracks said:
Hello, all.
Attempting to help by working on the build.prop settings. I'm S-OFF with revolutionary and have my device fully configured with the Honeycomb HBOOT/radio/bootloader/etc.
After flashing the ROM and the kernel, the device would immediately reboot upon attempting to return to the main recovery menu. I had to fastboot oem rebootRUU and reflash Globatron's PG41IMG-WIFI-light-B10 zip to get recovery back.
The device never proceeded to the boot animation.
Click to expand...
Click to collapse
I can confirm this happened to me also. The only difference is that I was using the kernel for a port of mine, and it did the same thing.

Yes, it is known that for some reason, Go Back already reboots the device. It's no problem though, it works fine anyway. If it is really looping the bootanimation every ten seconds, keep Vol Down and Power pressed, until you get to HBOOT. Select FASTBOOT, and enter 'fastboot erase cache' in the terminal. Then reboot on the device, and it should boot up fine.
Also, kernel won't work on Honeycomb, haven't checked why it doesn't though (and I won't btw, our goal is not to make a new kernel for Honeycomb, but for ICS, where it does its job fine).
Kernel source is uploaded to my Github: http://github.com/Chaosz-X
Edit the CROSS_COMPILE for your toolchain, and it should compile fine (it does here).
Will add the link to the OP within 5 minutes, ramdisk will be uploaded tomorrow.

If chaos has a device tree set up for the Flyer/View, no build prop editing should be necessary, can just submit requests - but I don't notice it on the git.
Thanks for uploading, I'll have a look and see what has changed so far. It's a little difficult to keep track of the changes since there are no commits that document the patches applied over time, but I'll try to make do with what you've got.
Is this straight from flyer HC kernel source?

I may be doing this wrong, but the touch screen commands do not seem to be working for me

Cimer said:
I may be doing this wrong, but the touch screen commands do not seem to be working for me
Click to expand...
Click to collapse
You have to type it in manually. Copying and pasting does not work, at least it did not for me. I think the issue is with the '

lawguy said:
You have to type it in manually. Copying and pasting does not work, at least it did not for me. I think the issue is with the '
Click to expand...
Click to collapse
It may just be me, I tried manual too. I had to use http://forum.xda-developers.com/showthread.php?t=1379875 since I'm stuck on Windows 8..maybe something is up with that. I guess I will just need to sit and wait =/

Cimer said:
It may just be me, I tried manual too. I had to use http://forum.xda-developers.com/showthread.php?t=1379875 since I'm stuck on Windows 8..maybe something is up with that. I guess I will just need to sit and wait =/
Click to expand...
Click to collapse
Hang tight for now. Wifi Does not work and the screen freaks out. I'm sure that these things will be fixed soon.

Going to upload ramdisk source within an hour, and try to apply a fix for WiFi, and try to fix the touchscreen by using the command in init.rc mentioned here earlier.

The new modem arrived, I have Internet again, so we have remote access to our Linux machine and can start compiling etc again

Indeed, we're grabbing AOKP source code now. Within about 2 hours we think, we'll start compiling the ROM for the HTC Flyer. Don't know if it will work out, but we have to start somewhere

Related

[Q] Where to start?

Hello,
I want to compile Android from source. I want to just build a fully default Gingerbread that would run nice on my phone. I got the Android source, kernel source (kernel-2.6.32-U8800-Froyo) and now I don't know what to do next. I compiled the generic one already (lunch full-eng) and it ran fine on the emulator.
My most important question is, if I make it otapackage and flash it, would it start? If it doesn't, can I recover? What folders/files are essential if I make my own device for example in "device/huawei/u8800"
Also, where can I find a GOOD porting guide? I have found some that are old and not used anymore.
Some links
Start by going through source.android.com for the general basics if you havent already.
Also, even though Google removed the PDK (Platform Developer's Kit) from the site, it has been mirrored on kandroid here: http://www.kandroid.org/online-pdk/guide/index.html
The stuff in the the PDK, although inadequate, is still very important and explains how to create the necessary makefiles to add to the build, configuring for a new market, etc. etc.
Also,
watch these two videos over here. These were very helpful in my ROM development:
http://www.youtube.com/watch?v=1_H4AlQaNa0
http://www.youtube.com/watch?v=rFqELLB1Kk8
Learn to use github. It is helpful for you to keep track of your changes as well as incorporate others works into your own.
http://help.github.com/
Finally, Cyanogenmod repos are your BEST friend. Almost all major AOSP ROM devs owe some sort of thanks to those guys who have done so much. If you want to check out some of the code changes and patches that you want to incorporate look here on their gerrit:
review.cyanogenmod.com
If you want to look at the other changes that are actually in the cyanogenmod builds, best to look at their git repos here:
https://github.com/CyanogenMod
I am still learning right now while I create my ROM but your welcome to PM me if you have any questions
Glad someone helped. Now that ICS is available, I will build that instead. Now, I will follow the kandroid tutorial and add hardware_msm7x30 from cyanogenmod's repos. Then I'll make my own makefiles in the huawei/u8800 and I'll see if that works.
Also, some things I am not still clear. If I am not adding any recovery files, it shouldn't replace it, right? I want to make sure I can recover. However, my phone has a bootloader mode, which should still work, even if other's messed up. And the kernel, if I already have a compiled kernel for android 2.2, should it work for newer versions?
Thanks
Well AOSP as far as I know adds the stock recovery into the build so if you have a stock ROM, then you will lose your recovery (unless you change the source to skip the adding of recovery to otapackage).
Your bootloader should be fine. so you will theoretically be able to re-flash a custom recovery with fastboot as long as your bootloader is unlocked (assuming your phone is already rooted and has a custom rom, then it should be unlocked)
If you are using CM7 as base, then you dont have to worry about it as it is configured to NOT replace the recovery during the building and creating the otapackage.
The kernel should not be compatible as there were significant changes from Froyo and you should not use it. By the way, for now, work on the ROM first. Creating a custom kernel from scratch is hard work and should be left as the last task to do (assuming you know linux kernel development). Just use the stock pre-built kernel that comes with the source.
Also, according to Google:
Starting with IceCreamSandwich, the Android Open-Source Project can't be used from pure source code only, and requires additional hardware-related proprietary libraries to run, specifically for hardware graphics acceleration.
Click to expand...
Click to collapse
This means you need to find the correct hardware drivers first. Where to find that is beyond me. Check CM repos. It would be easy if everyone had a Nexus S/ Galaxy Nexus as the drivers are immediately available on source.android.com. Ah...well....
Personally, I am going to wait a few weeks before dabbling into ICS ROMs. Wait till CM7 comes out with a nightly for my nexus one and then rip the drivers from their ROM and use it for mine
I got ICS source and made the necessary Android.mk, AndroidProducts.mk, BoardConfig.mk and u8800(my device).mk, also vendorsetup.sh . Now, when I am trying to build it doesn't give me an error, more of a suggestion. It says to include "LOCAL_MODULE_TAGS := optional" in the hardware/msm7k/liblights/Android.mk. I added that, and tried again. Got that message again, but with other type /libril/Android.mk
About fastboot, I am not sure if my device has that. It can be turned on with volume up and down + power, but it boots to so called "pink screen". When I mount phone using usb to my pc, I can browse the recovery.img and other related stuff. If I have the otapackage, can I just take the recovery out from there or what should I modify in source? Add something to the makefiles?
Yeah I am pretty sure you should add the LOCAL_MODULE_TAGS to all of the relevant pre-built files. maybe they made the compiler less harsh in ICS when compared to the one for gingerbread. In gingerbread, it outright crashed the compile and asked you to add the tags.
According to Google engineers, here is the reason why they use these tags:
Short answer: lack of time.
The urgent concern was to prevent new modules from using a user tag
(implicitly or explicitly), and we took care of that. We haven't had
time to deal with the existing modules, there are over 1000 of those.
JBQ
Click to expand...
Click to collapse
By the way, I hope you have git setup and the changes you have made are being staged and commited to your repo in github. If you ever make a mistake that hardcore crashes your compile and you dont know what you did, git will be there for you to rollback the changes as well as keep track of everything you have done from commit to commit
As far as I know, CM repos dont have everything complete for a full build of ICS but I could be wrong.
So you are working with AOSP correct?
As for the fastboot every android phone should have a fastboot by default but I believe each phone has a slightly different version. I will post how my fastboot looks like in a bit.
As for the removal of recovery, there should be somewhere in either source, makefiles or argument for the otapackage command that should leave out the recovery when making update.zip. You could just remove the recovery from the update.zip, change the updater-script and repackage it but its not a clean solution and those changes should be done in a uniform manner so you dont repeat this step every time you do a new build.
Where exactly is it, I have yet to know. Still learning much of this myself.
I now completely understand what modes of turning on my phone has... First one is normal, second is recovery, third is update-bootloader(I can access all files with it too) and four being the fastboot. The custom recovery I have on has an issue that it wants to boot to charging mode when I type "adb reboot bootloader". I can get to fastboot with the custom ROM I have on right now though. I think I am safe if I have issues.
I edited msm7k Android.mk to remove libaudio and libgralloc (errors with those), and it compiles to the step where it says it has no rule to make kernel requied by boot.img. I have put into BoardConfig.mk the line TARGET_PREBUILT_KERNEL with my kernel. I don't understand, what's wrong now...
My goal is to simply get it booting up. I'll look into libraries and other later.
-e-
Got the kernel thing sorted out. Copied device.mk from tuna device and edited to fit my device. Also modified full_u8800.mk and made the call to inherit from device.mk. Compiling now and I think I got past that.
-e2-
Got it built successfully. Fastboot won't let it install, because it has no mount points. Added mount points and let's see...
Nice to see you are making progress.
Got it built, but the fastboot is kinda buggy in my device, maybe custom rom issue. I can't make otapackage, it says "no rule to make target otapackage". I have a possible fix, trying that later.
Otherwise, I read its possible to flash system.img from recovery via advanced restore, update.zip package or advanced flash_image, but I don't know. Will post results.
Sent from my u8800
-e-
Tried make otapackage again. It still says "make: *** No rule to make target `otapackage'. Stop.". Maybe some things are still missing, I don't know. adb flash_image command will always post -1 to me, update.zip didn't work, advanced restore is not for this. I have a compiled image and I can't wait to test it, but I can't flash it...
If nothing works I'll revert to stock ROM and try again.
Blefish said:
Got it built, but the fastboot is kinda buggy in my device, maybe custom rom issue. I can't make otapackage, it says "no rule to make target otapackage". I have a possible fix, trying that later.
Otherwise, I read its possible to flash system.img from recovery via advanced restore, update.zip package or advanced flash_image, but I don't know. Will post results.
Sent from my u8800
-e-
Tried make otapackage again. It still says "make: *** No rule to make target `otapackage'. Stop.". Maybe some things are still missing, I don't know. adb flash_image command will always post -1 to me, update.zip didn't work, advanced restore is not for this. I have a compiled image and I can't wait to test it, but I can't flash it...
If nothing works I'll revert to stock ROM and try again.
Click to expand...
Click to collapse
If you successfully compiled, take the boot.img and system.img and package them into a zip and use dsixda's kitchen to make it flashable
Blefish, is it possible for you to share your device/vendor structures somewhere? I just finished setting up a build machine for ICS (using Cyanogenmod's repos in my case), and made a working full-eng image that seems to boot just fine in the emulator, so I'm seemingly all ready to hack around our device's specifics. But I would rather not do duplicate work, so I decided to ask
I'm also grabbing Huawei's new 2.6.35-based package to get the new kernel config, can't wait for them to release the actual sources for the update.
I'll share them on GitHib once I get a working build. I haven't got much time, and I changed to CM9 alpha now (repo branch ics). Since we got a 2.3 update, my first task is to port the latest clockworkmod recovery and then the ICS.
Compiling Android is long task and I'll do it in weekends, but the recovery should be available sometime, it shouldn't be hard to port that.
Oh yeah, look up stockwell's, dzo's and genokolar's github, they have done the device configuration. You can get much help from there. This weekend I'll propably test the build, I got otapackage command working now (it needed some things I can't write on mobile).
Sent from my U8800 using Tapatalk

Building CM7 for the NT

We have been discussing in another thread the possibility of getting a CM7 rom available for the NT.
Now that we have a functional recovery this should seriously help out with testing, if it goes wrong we can just restore to a working rom and start again debuging as we go.
***UPDATED 5TH Feb 2012***
I thought it was about time I updated this post with some up to date info on current state of development.
As many of you will know we got together last week and decided that we would like to build a CM7 rom for the Nook Tablet.
Goncezilla had already been making progress building firmware and a boot.img to get the thing booting up. Initially the system booted and you couldn't do a lot with it, but it prooved it could be done. Here's the vid showing the first boot:
After that it was down to work to make it useable. After a bit of investigation and a lot of man hours this is where we are at now
HARDWARE FUNCTIONS
Touchscreen FULLY WORKING
Orientation sensors FUNCTIONAL
Sound WORKING
SDCard WORKNING
WIFI Fully WORKING
Hardware video acceleration WORKING
SOFTWARE
Custom Kernel BUILT AND FUNCTIONING
Full tablet version on Cyanogen Mod WORKING
Root Access WORKING
Gapps WORKING
Sleep mode WORKING
Brightness control WORKING
BOOT FROM SD CARD SOLUTION AVAILABLE
and the one everyone seems to think is important
Angry Birds YES IT WORKS PERFECTLY lol
Another little video of current progress
Finally we have wifi working!
Sorry it's sideways, it's changing it now but it seems Google have slow computers!
So the main things we have left to fix are
1. Ermm... hmm... I'm sure we'll think of something
Thanks to Celtic for taking on the OP of this forum!
EDIT 2/5/2012Here are the source files used to create the first CM7 beta:
Internal
1. Kernel built from source - http://www.mediafire.com/?tu5lm7q8t5pbqpf
2. Nook Color CM7 Ramdisk (the one we want to modify) - http://www.mediafire.com/download.php?epv9n97evhnuaoi
3. Stock Nook Tablet Ramdisk (the one we need to borrow from) - http://www.mediafire.com/download.php?xms3aeztgupkjco
4. Buawk's Internal Boot.img 2ndboot (this gets appended to the front of a boot.img to get around the locked bootloader) - http://www.mediafire.com/download.php?9l8uxx7rhbqzund
5. Modified CM7 /system partition files (should be good to go for NT) - http://www.mediafire.com/download.php?il5ky2l51q48e8h
6. Modified Ramdisk - http://www.mediafire.com/download.php?9l8uxx7rhbqzund
7. Wifi Driver files (built from Kindle Fire source) - http://www.mediafire.com/?vogxuygrf84xsoe
8. Kernel Config File (settings used to build kernel above) - http://www.mediafire.com/?7vjvqctmlnd4enw
9. GFX Drivers (put in /system/lib/modules and insmod) - http://www.mediafire.com/?5uw4wgytb60n485
SDCard
1. SDRamdisk - http://www.mediafire.com/?4p3wq0u4p9j9mtd
All other files are same as internal.
EDIT 2/4/2012
My Plan for success:
1. Build a boot.img from CM7 NookColor Rom - Done!
3. Get a booting rom working from SDcard to verify steps 1 and 2 - Done! SDcard working great!
4. Port to internal boot partition (CWM) -Done!
5. Tweak to get everything working - Ongoing....
All other ideas welcome here!
I'll flash and test things for you all.
Sent from my Nexus S 4G using Tapatalk
LiuAnshan said:
I'll flash and test things for you all.
Sent from my Nexus S 4G using Tapatalk
Click to expand...
Click to collapse
Thanks
Just to let anybody interested know in advance, this may or may not turn into a working rom, even if it does become a fully functional rom please remember that during testing if your tablet does a nose dive and you can't recover for some obscure reason, we take no responsibility for any damage caused.
Other than that, as and when we have something testers will efinately be needed
Goncezilla said:
Reserved.
Ill post my current working files here soon. Thanks to Celtic!
My Plan for success:
1. Build a boot.img from CM7 NookColor Rom - Kernel built, working on ramdisk
2. Port /system partition -Mostly done but untested
3. Get a booting rom working from SDcard to verify steps 1 and 2
4. Port to internal boot partition (CWM) -2ndboot.img built and waiting
5. Tweak to get everything working
All other ideas welcome here!
Click to expand...
Click to collapse
So i'd thought id put in my two cents here...
First off, whom ever is testing this will want to have 2 sd cards, one of which is the update_acclaim boot disk, so they can "unbrick" their device. This device is nearly unbrickable, and whom ever ends up testing it, can make sure that they can always return it to stock.
Second off, I would HIGHLY recommend using the stock kernel, with the security keys stripped off. This would eliminate any problems that you would encounter with the kernel not causing a boot. I can get you guys a copy of the stock if you want, as it is easiest to just take the first 288 bytes off of the existing kernel, and ramdisk. I don't have an NC, but i'm not sure that the partitions are the same, I would think about building the ramdisk by combining the two ramdisks.
Lastly if someone has the inclination, they COULD eliminate the useless partitions, DO NOT TOUCH THE X-LOADER OR UBOOT PARTITIONS, MODIFYING THEM WILL BRICK YOUR DEVICE. However there is the useless BN and rom partitions that could be consolidated.
Ill be checking in from time to time, I would recommend that you join the CM7 IRC channel and make a new one so that you will not be bothered.
I've done little more than keep the port of miui updated for the Samsung infuse, but I'd be willing to help where I can. I'll probably only be useful for testing, but I'm more than willing to soft brick several times (or risk a hard brick )
Don't modify the rom partition, it forces a wipe of the device and without a proper recovery for that (stock) you're **** out of luck.
Sent from my Nexus S 4G using xda premium
Loglud said:
Second off, I would HIGHLY recommend using the stock kernel, with the security keys stripped off. This would eliminate any problems that you would encounter with the kernel not causing a boot. I can get you guys a copy of the stock if you want, as it is easiest to just take the first 288 bytes off of the existing kernel, and ramdisk. I don't have an NC, but i'm not sure that the partitions are the same, I would think about building the ramdisk by combining the two ramdisks.
Click to expand...
Click to collapse
Interesting about the first 288 bytes. Any specific reason for stripping them? Is this the kernel header or is it for the ramdisk too? The kernel Im using was built from the BN source.
The ramdisk Im putting together is a combo of the NC and NT. Im working on porting the .rc files and build.prop. There is a lot to look at and any help is appriciated. Ill post the files when I get home this weekend.
Lastly if someone has the inclination, they COULD eliminate the useless partitions, DO NOT TOUCH THE X-LOADER OR UBOOT PARTITIONS, MODIFYING THEM WILL BRICK YOUR DEVICE. However there is the useless BN and rom partitions that could be consolidated.
Click to expand...
Click to collapse
Good call here. I was thinking about mounting the 15GB B&N partition as rw and leaving it at that. If we get brave we can try and merge the partitions.
Thanks for the input.
---------- Post added at 08:32 PM ---------- Previous post was at 08:29 PM ----------
Indirect said:
Don't modify the rom partition, it forces a wipe of the device and without a proper recovery for that (stock) you're **** out of luck.
Sent from my Nexus S 4G using xda premium
Click to expand...
Click to collapse
Maybe this is the issue Im seeing. Does this mean we have to use 2ndboot to point to another partition? Is there a mdsum check being done at boot that triggers this?
EDIT: Nevermind was thinking boot partition instead of rom. Rookie mistake No plans to touch rom partition.
Guys, we won't need testers. We all have NT's. You all will get a build once it's in alpha.
Like Indirect said, as far as startup is concerned we'll be able to do the testing, we won't really need external testing until we have something semi stable.
Thanks for all your offers though. I'm sure when we get to alpha/beta stage you'll all get a shot at it
As agreed with OP i am going to move this to general. As soon as development is posted, it will be moved back to Development.
Thanks to the OP for his co-operation, He is a gentleman and exactly the type of member we want at XDA Developers!
Peace!
clock work mod
thanks to Albert I am beginning to understand the early stages of getting things like CM7 or 9 functional for the NT and his his recent video on youtube gives a good idea on the developments going on for the NT. I am trying to understand the possible uses of CWM for the nook other than it being a framework for installing custom roms. .. Thanks
Rafael863 said:
thanks to Albert I am beginning to understand the early stages of getting things like CM7 or 9 functional for the NT and his his recent video on youtube gives a good idea on the developments going on for the NT. I am trying to understand the possible uses of CWM for the nook other than it being a framework for installing custom roms. .. Thanks
Click to expand...
Click to collapse
Link to the video, per chance? Thanks in advance!
Just a quick update before I call it a night.
I've been having a lot of trouble getting a working boot.img built. When I cat the 2ndboot to my boot.img I see the flash screen on bootup but quickly get a black screen followed by a reboot of the system.
I can't even get the stock boot.img to boot after appending the 2ndboot.img file. I was, however, able to boot into CWM from the boot partition by attaching the 2ndboot.img. This tells me that the 2ndboot is working properly.
I'm continuing to deep dive on the boot.img files, but if any other devs want to play around with cat 2ndboot to a boot.img it might help.
All I've been doing to this point is taking the boot.img from a CWM recovery, adding the 2ndboot.img to the front of it, placing the modified boot.img back into a new CWM recovery folder (and rebuilding nandroid.md5), then flashing the boot back on using CWM Advance Recovery.
Well, I can report some partial success!
I was finally able to unpack a stock boot.img, modify the ramdisk (nothing major just a small tweak to test results), repack with another unsigned kernel, flash the new boot.img and get a good boot. I did this by using the kernel extracted from nemith's CWM image and not the custom kernel I've posted, so it seems like there is an issue with that kernel for now.
Anyway, I'll try and post some more files later but in the mean time I'm moving on with trying to get a CM7 ramdisk to boot.
I think this is now at a stage that it can be moved back to development.
Good work Guys!
Goncezilla said:
Well, I can report some partial success!
I was finally able to unpack a stock boot.img, modify the ramdisk (nothing major just a small tweak to test results), repack with another unsigned kernel, flash the new boot.img and get a good boot. I did this by using the kernel extracted from nemith's CWM image and not the custom kernel I've posted, so it seems like there is an issue with that kernel for now.
Anyway, I'll try and post some more files later but in the mean time I'm moving on with trying to get a CM7 ramdisk to boot.
Click to expand...
Click to collapse
Great to see you've made some decent progress. Sorry for my total lack of input, you're a good few steps ahead of me in developing. I'm still on a serious learning curve!
I'm getting there hopefully in time I catch up with you and give some decent worthwhile input!
CelticWebSolutions said:
Great to see you've made some decent progress. Sorry for my total lack of input, you're a good few steps ahead of me in developing. I'm still on a serious learning curve!
I'm getting there hopefully in time I catch up with you and give some decent worthwhile input!
Click to expand...
Click to collapse
Hey if you have any questions throw them out there. I'm learning some things as I go along but don't have all the answers either. Hoping we can start combining efforts to move forward.
---------- Post added at 10:31 PM ---------- Previous post was at 09:31 PM ----------
EDIT:More progress!
Was able to get the stock ramdisk to boot using the compiled kernel I posted. I think the issues were with my compilers. No guarantees they are fixed but we are getting close I can feel it!
I'm not sure but I think this kernel can be overclocked, so if nothing else this should allow you to overclock a rooted stock device for now. I'll do some testing and get back....
EDIT 2:
Well it looks like this kernel should be capable of overclocking, but there are a few other bugs with it (could not turn on wifi) that still need to be worked out so I am moving on for now. I will post the boot.img if anyone else wants to play around with the custom kernel on stock firmware in the meantime.
They had issue with wifi in the cm9 thread which they've now fixed. Perhaps some help from there thread will be available?[/QUOTE]
Good call, maybe we can leverage from them. I think I'm just missing a configuation setting in my kernel build but everything else seemed to be working so I'm not too worried about fixing it right away. Would rather get CM7 to boot
EDIT:
Well more progress to report this morning! I've finally got a CM7 boot screen! I'm stuck in a bootloop but we are really close now!
Turns out my permissions were all jacked up on my system partition and it was refusing to allow the kernel to load divers. I've jacked with files so trying to get a good boot that I'm not even sure what I have right now, so I'll go back to square one and hopefully see a full boot
Whenever you get a boot loop, I suggest that you get a logcat so you know what to look at.
Sent from my Nexus S 4G using xda premium

AOSP build blackscreens on boot.

I got into making applications and such on android recently, and decided to try my hand at starting from an AOSP base and building it up. At this point I got it to compile correctly, I can flash it through CWM, everything works fine. But as soon as it boots, it gives me a flash of purple on the bottom half of the screen on my Nexus 7 with two androids. Only for a split second, then it just stays at a black screen. I don't know why it's doing this, but it's starting to irritate me. I've poured all of my time for the past month into this, and I can't even get it to boot. Even directly from AOSP source with no modifications, I get a black screen. When it's all flashed and I press 'Reboot device' in CWM, I get a warning about disabling stock recovery flash, just in case it tries to wipe CWM, if that helps at all. I can't get a logcat on account of it not booting, though I wish I could. I just need some help before I lose my mind! I really want to develop ROMs and give back to XDA like it gave to me so many times, as well as try to gain some credit in the community and not be such a noob. Somebody please help me!
It's a Nexus 7 Wi-Fi only, (Grouper) sold with 4.1.2.
I'm using CWM touch v6.0.2.8
I'm using the OEM cable for transferring and everything!
On a side note, I'm on Ubuntu 12.10, I set everything up exactly how it says on the Google site to start AOSP builds,
I just don't know what's wrong. Any help at all would be appreciated!
Did you download the proprietary binaries for the Nexus 7 WiFi and include those in your build? If not I would recommend downloading those binaries for your device as they include drivers to make the touchscreen, orientation sensors, Wifi, Bluetooth, and other components work properly. Without these the screen will display a black screen like you mentioned on boot.
shimp208 said:
Did you download the proprietary binaries for the Nexus 7 WiFi and include those in your build? If not I would recommend downloading those binaries for your device as they include drivers to make the touchscreen, orientation sensors, Wifi, Bluetooth, and other components work properly. Without these the screen will display a black screen like you mentioned on boot.
Click to expand...
Click to collapse
no, how exactly would I include those? Like where would I put them? I'm still relatively new to anything besides APKs. Lol. Thank you for the response!
Daltonyx said:
no, how exactly would I include those? Like where would I put them? I'm still relatively new to anything besides APKs. Lol. Thank you for the response!
Click to expand...
Click to collapse
Download the binaries, then place them in the directory you put your AOSP source code in, then extract the binaries using the shell script provided (The binaries you downloaded is the shell script) which should extract them to your vendor folder once you have extracted all the binaries to your vendor folder try another build.
shimp208 said:
Download the binaries, then place them in the directory you put your AOSP source code in, then extract the binaries using the shell script provided (The binaries you downloaded is the shell script) which should extract them to your vendor folder once you have extracted all the binaries to your vendor folder try another build.
Click to expand...
Click to collapse
HOLY CRAP IT WORKS NOW. THANK YOU SO MUCH! I LOVE YOU.
No homo. I just love you now.

[ROM][27Aug][GNU/Linux] Sailfish OS 1.1.6.27 (community port)

Announcing Sailfish for the Sony Xperia SP
This is not Android!
This should be thought of as a development experiment. It may be useful if you are a developer and want to write/port apps the the Sailfish operating system. It is not an end-user product, however, if you wish to experiment and try something different then feel free!
Please do not contact Jolla Care or Jolla Developer Care, as this is not the Jolla phone
Update 15 Feb 2016
I've uploaded a new version of SailfishOS 2.0.0.10 to the Mega folder, called sailfishos-huashan-release-2.0.0.10-1.zip. This is again based off CM-12.1, the same release as stated below. This release fixes a kernel bug which lets a lot of the Sailfish system crash. This also fixes the wlan connectivity, startup-wizard which sets the themes, on-screen keyboard not popping up, and SIM unlock never asked. I've got a fix for the backlight in the works.
Update 14 Feb 2016
A very experimental CM-12.1 based SailfishOS 2.0.0.10 build is uploaded to the Mega folder linked below.
This version is based off cm-12.1-20160212-NIGHTLY-huashan.zip. I want to stress that many things in this build are broken.
Update 05 Feb 2016
This port is heavily outdated. I do not have much spare time on my hands to continue porting but I will try to post a nightly version soon.
This version was based on Sailfish 1.1.6 and CM-11.0, but the world has moved on to Sailfish 2.0 and CM-12.1, and so must this port.
There's a photo up on imgur:
http://i.imgur.com/Vg3SZ6w.jpg
Special thanks to:
All Cyanogenmod devs, since SailfishOS uses drivers from Cyanogenmod to talk with the phone's hardware
Everyone from the SailfishOS team/community, sledges and mal- in particular.
Known issues:
Half the backlight doesnt work, this is clearly visible at the top of the screen
Bluetooth isn't turned on, cause i've put no effort in for that so far
Camera doesn't work, cause it's not hooked up to interface.
No recovery inside hybris bootimage (you need to flash manually to return to cm/use recovery)
Settings hangs for few seconds on first start (this seems to be related to bluetooth not being set up)
What works:
Texting, calling, data over mobile network (2g and 3g tested, 4g should work but is untested)
Wifi, GPS (does take a while to get a fix though), most of the sensors (proximity, lightsensor etc)
The half of the display backlight that does work is adjusted based on lightsensor input.
Charging, bottom ledbar basic functionality, audio works, audio via 3'5 jack also works.
Installation:
Insert default warranty void message here. Your warranty is now void
I have not tested this on locked bootloaders, but since I needed to modify the kernel, I guess that you need an unlocked bootloader.
Note this is not an offical Sailfish OS build, and the Xperia SP is not the Jolla phone, so please don't report bugs to Jolla. If you want to report a bug, search for it first on bit.ly/port-bugs, if your bug is not yet there, you can add it there or post it in this thread (I'll try to keep the xda thread and bugzilla in sync).
The Sailfish OS image does not provide recovery, and since the Xperia SP does not have a recovery partition, you need a seperate bootimage with only recovery on it to flash cm/stock/sailfishos upgrade.
The Sailfish OS image is based on a specific version of Cyanogenmod 11, which you will need to flash first.
You can find all the required files in a Mega folder: http://mega.nz/#F!7YhSTDIA!Akpjs8s3qT5_nEkN04fQ-Q
You can find a bootimage with only TWRP recovery in it called recoveryboot.img
This image can be flashed with fastboot (with phone turned off, hold vol up and plug in usb), then `fastboot flash boot recoveryboot.img`. After that reboot the phone (fastboot reboot), and it will boot into recovery. If you already have recovery from cm, then you can use that as well.
First do a full wipe (make a backup first if needed, TWRP can do this , then install CM11, the specific version you need is called: cm-11-20150712-NIGHTLY-huashan.zip
There is no need to reboot cause you wont use CM11 anyway, so just proceed and flash the Sailfish OS image, which is called: sailfishos-huashan-release-1.1.6.27-UNOFFICIAL-maikel-201508201214.zip
Flashing Sailfish OS is not as fast as flashing cm11, but it shouldn't take more than 10 minutes.
Then reboot. The first boot may take some time, during which the Sony logo is not displayed (WIP).
If the boot takes more than, lets say five minutes, try a reboot. You can power off the device by holding the power button until the LED bar turns red or the display brightness goes back to full, when the leds and display turn off the device is powered off.
If this doesn't work you can remove the back cover and press the little button in the little hole for 5 seconds, the device will vibrate thrice and the phone will be forced off.
If you want to return to your previous rom or restore a backup, use the recoveryboot.img using the commands stated at the top of this document, to boot into TWRP.
FAQ
You can find a FAQ which mentions most common user questions for SailfishOS here: http://forum.xda-developers.com/jolla-sailfish/general/qa-sailfish-n4-thread-devices-t2727330 . It's mainly aimed to the Nexus 4 and 5, but it's fairly applicable for all other ports as well.
Sources
In order to comply with the GPL, the kernel sources used for this port are available here:
CM-11.0 based port: https://github.com/maikelwever/android_kernel_sony_msm8x60
CM-12.1 based port: https://github.com/maikelwever/android_kernel_sony_msm8960t
edit: make links + sailfish 2.0 notice, kernel sources, 2.0 link
You rock! Very interesting project. Sailfish is an unknown world for me (and for most of us I think), I might try this ROM out sooner or later.
Why do we need to install CM11 first? Is it based on it?
Goob job bro!!!!
But I'll try this port later since it's kinda buggy
Hope you will fix those bugs.
Tomoms said:
Why do we need to install CM11 first? Is it based on it?
Click to expand...
Click to collapse
SailfishOS uses libhybris to communicate with the hardware, which in turn is talking to the Android HAL (like hwcomposer), to avoid having to write drivers for each phone, which would be pretty much impossible due to the proprietary blobs used on almost every phone.
The libhybris build included in this SailfishOS port is based on CM11, so that's why you need that.
CM12 based SailfishOS is currently experimental, when that gets more stable I will try to make a CM12 based build.
I tried the earliest version that was available on your git earlier this month, working great, just that it gets frustrating when Settings try to crash when you just opened and i just can't seem to install openrepos Warehouse from the command line...
boylush said:
I tried the earliest version that was available on your git earlier this month, working great, just that it gets frustrating when Settings try to crash when you just opened and i just can't seem to install openrepos Warehouse from the command line...
Click to expand...
Click to collapse
Installing packages from command line was fixed in the version linked in this thread. This had to do with some repositories that were unavailable (cause they pointed to local disk of buildmachine), causing zypper to hang on updating.
Those packages have been moved to the community buildserver, which hosts the packages online, thus fixing the hang you experienced while trying to install openrepos. If you still experience problems with the latest build: try a 'zypper rr adaptation0' before installing an app. If it complains about missing libsailfishapp, do a 'zypper ref' and try installing again.
Ninja edit: I'm considering bundling the openrepos warehouse with the zip, since I use it a lot myself as well, and we are in the process of enabling the official Jolla store (without Android support though), which should smooth out installing apps as well.
maikoool said:
Installing packages from command line was fixed in the version linked in this thread. This had to do with some repositories that were unavailable (cause they pointed to local disk of buildmachine), causing zypper to hang on updating.
Those packages have been moved to the community buildserver, which hosts the packages online, thus fixing the hang you experienced while trying to install openrepos. If you still experience problems with the latest build: try a 'zypper rr adaptation0' before installing an app. If it complains about missing libsailfishapp, do a 'zypper ref' and try installing again.
Ninja edit: I'm considering bundling the openrepos warehouse with the zip, since I use it a lot myself as well, and we are in the process of enabling the official Jolla store (without Android support though), which should smooth out installing apps as well.
Click to expand...
Click to collapse
OMG Sailfish uses zypper? I must try this thing ASAP!
Can we install Android apps in it somehow?
Tomoms said:
OMG Sailfish uses zypper? I must try this thing ASAP!
Can we install Android apps in it somehow?
Click to expand...
Click to collapse
Yes Sailfish uses zypper, and also has pkcon (from PackageKit) available as a frontend. Sailfish is based on Mer, which is it's own Linux distro, so don't expect the huge amount of packages that are available on desktop Linux systems that use zypper. Multiple community members provide repositories with builds of common unix tools that are not bundled by default (openrepos) though. As far as I know, Mer is closest to OpenSUSE with the package guidelines (I'm no expert on this though).
Android apps are supported on the official Jolla hardware using AlienDalvik. AlienDalvik is proprietary and not gratis software and thus not available for community ports like this one. I just added a link to a XDA thread with a Sailfish user FAQ to the startpost, which goes into this subject in more detail and provides anwers to other common questions.
There are multiple community projects going on to provide support for running Android apps, which I'll look into when all the Sailfish native stuff works properly.
There's apkenv, which is a very basic way to run some Android games on Sailfish ports.
There's some way to run full Android in a chroot and pipe the UI to a Sailfish app window.
And then there's shashlick, from the KDE team, which tries to map Android UI to QT.
I have not tested any of these three (yet), and there may be more options than this available.
maikoool said:
Yes Sailfish uses zypper, and also has pkcon (from PackageKit) available as a frontend. Sailfish is based on Mer, which is it's own Linux distro, so don't expect the huge amount of packages that are available on desktop Linux systems that use zypper. Multiple community members provide repositories with builds of common unix tools that are not bundled by default (openrepos) though. As far as I know, Mer is closest to OpenSUSE with the package guidelines (I'm no expert on this though).
Android apps are supported on the official Jolla hardware using AlienDalvik. AlienDalvik is proprietary and not gratis software and thus not available for community ports like this one. I just added a link to a XDA thread with a Sailfish user FAQ to the startpost, which goes into this subject in more detail and provides anwers to other common questions.
There are multiple community projects going on to provide support for running Android apps, which I'll look into when all the Sailfish native stuff works properly.
There's apkenv, which is a very basic way to run some Android games on Sailfish ports.
There's some way to run full Android in a chroot and pipe the UI to a Sailfish app window.
And then there's shashlick, from the KDE team, which tries to map Android UI to QT.
I have not tested any of these three (yet), and there may be more options than this available.
Click to expand...
Click to collapse
man i was waiting for this thing :fingers-crossed:
A small review of this OS:
The flashing process isn't very short, but in my case the OS booted in less than 30 seconds
There are only 10 - 12 installed apps: Settings, Contacts, Camera, Telephone etc.
The terminal emulator is fully-featured but it has got a bug: the screen orentation is the opposite of the real one (when the phone is horizontal, the terminal is vertical and vice versa). But as I've just said, it happens only in terminal.
WiFi doesn't seem to be working, but SIM card signal works (2G and 3G - no LTE); mobile data - I don't know.
The GUI is shiny and transparent and the whole OS is based on gestures. There's a little tutorial after the first boot thats help you understand how to use the phone fastly. I didn't open the Jolla store as I couldn't use mobile data at that moment.
During my 10-minute-long test, the screen randomly locked by itself; there is another bug: when the screen is locked, backlight doesn't turn off unfortunately.
A strange thing of Sailfish is that the app you're using is always fullscreen, there's no notification/status bar at all. The navbar also doesn't exist, as you can go back and to homescreen with gestures.
The developer mode is also interesting, it lets you connect to your phone remotely over the network.
Basically, this port of Sailfish at the moment is a very early alpha, but it's the dream of the geek: a full Linux experience with command-line package manager etc. I hope to see improvements in the future
will follow this thread closely...........
finally something new and different to use.
cheers
avi.singh9993 said:
will follow this thread closely...........
finally something new and different to use.
cheers
Click to expand...
Click to collapse
And now the Jolla Store should be enabled! \o/ Please try it out and tell us 
This looks really good, if it will ever be in daily driver state this will be my go to rom
sledges said:
And now the Jolla Store should be enabled! \o/ Please try it out and tell us 
Click to expand...
Click to collapse
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
avi.singh9993 said:
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
Click to expand...
Click to collapse
Why don't you post please? DIT - doing it together!
sledges said:
Why don't you post please? DIT - doing it together!
Click to expand...
Click to collapse
well i asked my friend to post it,
many people saw it but unfortunately not much of a positive feedback.
now it's onto developer and his hardwork to develop and make it atleast daily driver. then some people will be interested in trying it
Tomoms said:
A small review of this OS:
The flashing process isn't very short, but in my case the OS booted in less than 30 seconds
There are only 10 - 12 installed apps: Settings, Contacts, Camera, Telephone etc.
The terminal emulator is fully-featured but it has got a bug: the screen orentation is the opposite of the real one (when the phone is horizontal, the terminal is vertical and vice versa). But as I've just said, it happens only in terminal.
WiFi doesn't seem to be working, but SIM card signal works (2G and 3G - no LTE); mobile data - I don't know.
The GUI is shiny and transparent and the whole OS is based on gestures. There's a little tutorial after the first boot thats help you understand how to use the phone fastly. I didn't open the Jolla store as I couldn't use mobile data at that moment.
During my 10-minute-long test, the screen randomly locked by itself; there is another bug: when the screen is locked, backlight doesn't turn off unfortunately.
A strange thing of Sailfish is that the app you're using is always fullscreen, there's no notification/status bar at all. The navbar also doesn't exist, as you can go back and to homescreen with gestures.
The developer mode is also interesting, it lets you connect to your phone remotely over the network.
Basically, this port of Sailfish at the moment is a very early alpha, but it's the dream of the geek: a full Linux experience with command-line package manager etc. I hope to see improvements in the future
Click to expand...
Click to collapse
I agree totally that it's the dream of a geek. I've noted all your comments and will try to fix them. Thank you very much for taking the time to test!
Spasik said:
This looks really good, if it will ever be in daily driver state this will be my go to rom
Click to expand...
Click to collapse
That's what I'm aiming for too!
avi.singh9993 said:
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
Click to expand...
Click to collapse
Sorry, but I couldn't care less about Facebook. I'm pretty convinced that everyone that is willing to try something like this is already on XDA anyway. Hopefully the work related part will be better possible when Android app emulation or something similar finally makes it to community Sailfish builds.
PS: I've been a bit busy with other things lately, sorry for not responding that fast. I'll try to roll a build with fixes and the latest Sailfish (1.1.7.28) asap.
This has changed the mac of my device
can I ask how's the development going?
If someone could port the only rom i would like to be ported on the SP: ColourOS, it will be AMaZING

[H918]Anyone that wants the 10j kernel source (that actually compiles)... Here it is

So LG released build 10j, with accompanying kernel source for the 10j update.
However, their source includes a lot of "typos" and silly little mishaps and doesn't compile.
Things that had to be fixed (note, not every file type mentioned were fixed, just specific ones) :
Makefile(s)
Kconfig(s)
.c sources
.h headers
The package I am providing stems from @jcadduono initial release (found here). I then replaced all files from the 10j source from LG (found here).
I then compiled with one thread and went error by error. Yes, it took me much longer than it should have, but I've never done anything like this, and the longest part was actually learning on how to figure out what was causing issues. I suppose in the future, it will be much faster for me.
Anyway, it flashes fine, here it is.
No changes to the defconfig, nor was anything customized inside (just fixed). It is stock, and builds Image.lz4 as well as the accompanying modules. This is all thanks to @jcadduono 's beautiful build.sh script, as well as his menuconfig.sh.
To build :
set toolchain in menuconfig.sh as well as build.sh
cd /path_to_dir
./menuconfig (do your changes, exit, follow prompts to save changes)
./build.sh h918
You want /path_to_dir/build/lib/modules and /path_to_dir/build/arch/arm64/boot
Save those things before running menuconfig and/or build.sh again, as they are automatically cleaned per config or build.
Remember you still have to disable verity, and force-encrypt.
Also, here is a full stock, flashable 10j boot.img (with kernel built from source packed inside), with verity and force-encrypt disabled. Also, it flashes the newly-compiled modules, as well as SuperSU2.79-SR3. Stock RAMdisk used as well.
When you do end up customizing the kernel, will you be putting that out as a stand alone custom kernel?
Thanks for all the hard work. Take a week off.
Cheers!
Update
Hey @Tilde88 seems the dreaded no sound on call after switching from wifi calling to data call is active again
I also have another branch going here: https://github.com/jcadduono/android_kernel_lge_msm8996/commits/android-7.0_2
which is 10j with LG's stuff separated from other commits.
I can't seem to figure out why it doesn't want to boot though. For whatever odd reason, seems the bootloader isn't even reading the Image.lz4-dtb and going straight to blank screen -> power off. Makes it darn hard to investigate when you can't get a pstore.
Update: I just realized that lz4 binary changed so all I had to do was change -lz16 to -lz9
Update 2: Nope still doesn't boot, I'm outta ideas.
jcadduono said:
I also have another branch going here: https://github.com/jcadduono/android_kernel_lge_msm8996/commits/android-7.0_2
which is 10j with LG's stuff separated from other commits.
I can't seem to figure out why it doesn't want to boot though. For whatever odd reason, seems the bootloader isn't even reading the Image.lz4-dtb and going straight to blank screen -> power off. Makes it darn hard to investigate when you can't get a pstore.
Update: I just realized that lz4 binary changed so all I had to do was change -lz16 to -lz9
Update 2: Nope still doesn't boot, I'm outta ideas.
Click to expand...
Click to collapse
Is that for 10j? From the H918 source, the Kconfig and Makefile for the DTB image were broken. It would automatically remove the lines from defconfig anytime you did a menuconfig. I'm sure you already picked up on that though
Other than that, I have nothing to offer... I am no expert like yourself
kelvin216 said:
Hey @Tilde88 seems the dreaded no sound on call after switching from wifi calling to data call is active again
Click to expand...
Click to collapse
I'm still on 10d with my 5.5 rom+kernel. Going to make a v6 test rom+kernel and try it out live tomorrow.
I used 5.5 with VoLTE and WiFi calling in the last few days... But I have gotten no issues, even though I'm actually trying to get them to occur.
I was actually in a building for some time with 0.0% radio signal. So I hopped on wifi, and made my calls to the office that way.
When I left the building, WiFi disconnected due to range, 4G came up and I called my office, no issue at all.
When you say "again", do you mean it is occurring again as it once did, or as it recently has? (On what kernel are you having this issue - NSS 5.5 for H918 is fully stable). Other than a few people having high CPU usage (which I also can't replicate), there are no issues on the 5.5 kernel. I suspect the CPU usage thing to be due to me enabling C-States blindly in defconfig; but that has nothing to do with what we are on about.
Thanks for the info.
10j
Hey @Tilde88 it happen it on your new 10j kernal while i was testing didnt have any high Cpu or overheating issue with kernal, just on calls when switching from wifi calling to data, calls can be made and receive but no one can hear me unless i reboot phone and then everything is fine till the switch again from wifi calling and data and vice versa, glad i can help, will get a log when it happens again but the kernal is great for my needs on a 10j base rom
So no ones working on h918 kernel for 10j?
lightninbug said:
So no ones working on h918 kernel for 10j?
Click to expand...
Click to collapse
It's fine the way it is imo. Just get root and tare apart the bloats
Sent from my zeroltetmo using XDA Labs
twidledee said:
It's fine the way it is imo. Just get root and tare apart the bloats
Click to expand...
Click to collapse
That comes NO WHERE close to comparing to tweaks at a kernel level.
Tilde88 said:
Is that for 10j? From the H918 source, the Kconfig and Makefile for the DTB image were broken. It would automatically remove the lines from defconfig anytime you did a menuconfig. I'm sure you already picked up on that though
Other than that, I have nothing to offer... I am no expert like yourself
Click to expand...
Click to collapse
what tools do you guys recommend? Im was going to do some things with my own in regards to ovrclocking and anything else the tools i found on the app store.
I've already downloaded tje files and im going to work it. So if you wouldn't mind suggesting some tools I can go from there. I did some scripting and coding a ling time ago and couriered for several eu topsides in the well. I dual booted NT pro server and Red Hat early a 90s. I cam put together a Lan and maintain the integrity of the network locally or remotely. When ICQ was just a bunch of rooms where allot of hoxor groups tested each others skills. I was good enough track a dos attacker through telnet and a few other scripts that I and And another put together just for such occasion- through 6 proxies...
then i became a truck driver. Got married and had kids.
Kids all grown now... I want to play with some old toys.
twidledee said:
what tools do you guys recommend? Im was going to do some things with my own in regards to ovrclocking and anything else the tools i found on the app store.
I've already downloaded tje files and im going to work it. So if you wouldn't mind suggesting some tools I can go from there. I did some scripting and coding a ling time ago and couriered for several eu topsides in the well. I dual booted NT pro server and Red Hat early a 90s. I cam put together a Lan and maintain the integrity of the network locally or remotely. When ICQ was just a bunch of rooms where allot of hoxor groups tested each others skills. I was good enough track a dos attacker through telnet and a few other scripts that I and And another put together just for such occasion- through 6 proxies...
then i became a truck driver. Got married and had kids.
Kids all grown now... I want to play with some old toys.
Click to expand...
Click to collapse
The only tool you will need on top of this source, is a cross compiler.
There are a few to choose from, but mainly, you might want to use Linaro.
This is the version I use gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.
Once you have that, set it's path within the 2 files build.sh and menuconfig.sh.
Next step is to do ./menuconfig , do your changes, then do ./build.sh h918
To add features, you have to add source files (.c and .h files, and reference them accordingly in their respective Makefile and Kconfig files.
Thanks to @jcadduono for the realest build scripts. build.sh and menuconfig.sh are epic.
Tilde88 said:
The only tool you will need on top of this source, is a cross compiler.
There are a few to choose from, but mainly, you might want to use Linaro.
This is the version I use gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.
Once you have that, set it's path within the 2 files build.sh and menuconfig.sh.
Next step is to do ./menuconfig , do your changes, then do ./build.sh h918
To add features, you have to add source files (.c and .h files, and reference them accordingly in their respective Makefile and Kconfig files.
Thanks to @jcadduono for the realest build scripts. build.sh and menuconfig.sh are epic.
Click to expand...
Click to collapse
Hi.
The boot file you linked. I decompressed it and itt produced many double copies. I assume that I have originals + a copy (1) some are identical in size others not so.... What do I do?
twidledee said:
Hi.
The boot file you linked. I decompressed it and itt produced many double copies. I assume that I have originals + a copy (1) some are identical in size others not so.... What do I do?
Click to expand...
Click to collapse
None of the words you just said make sense.
What are you trying to do, and with what.
Be precise.
If what you did was get the boot.img file and decompressed it, you exposed the RAMdisk. This will not help you in any way. This is also not the way in which you create a kernel. boot.img contains the kernel (zImage).
?
Tilde88 said:
None of the words you just said make sense.
What are you trying to do, and with what.
Be precise.
If what you did was get the boot.img file and decompressed it, you exposed the RAMdisk. This will not help you in any way. This is also not the way in which you create a kernel. boot.img contains the kernel (zImage).
?
Click to expand...
Click to collapse
It's my first time. I wanted to see what the package consisted of outside of the tar.zip so I unpacked it. As it was unpacking it was periodically halting due to an existing file already there. So I wasn't sure what to do so I let it rename. I wanted to see what the duplicate file was.
I'm not at the desk at the moment but when i looked at replicas the few I read were Readme and Linux guides.
As far as I can tell they weren't crucial files. I was just curious what made that happen since I haven't seen that with other packages. Then again I haven't embarked on this sort of project before either.
I hope that makes some sense.
Sent from my zeroltetmo using XDA Labs
Bump
twidledee said:
Bump
Click to expand...
Click to collapse
You are doing it wrong.
twidledee said:
It's my first time. I wanted to see what the package consisted of outside of the tar.zip so I unpacked it. As it was unpacking it was periodically halting due to an existing file already there. So I wasn't sure what to do so I let it rename. I wanted to see what the duplicate file was.
I'm not at the desk at the moment but when i looked at replicas the few I read were Readme and Linux guides.
As far as I can tell they weren't crucial files. I was just curious what made that happen since I haven't seen that with other packages. Then again I haven't embarked on this sort of project before either.
I hope that makes some sense.
Sent from my zeroltetmo using XDA Labs
Click to expand...
Click to collapse
Did you ever figure it out?
Not sure which you are using, the source, or the compiled boot.img.
If you want to make a custom kernel, I am more than happy to help. When extracting the source, or anything really, you will not get those errors, unless you already have files/folders that match identically to the structure in which you are extracting to... That would mean that you can have the same folder twice within a compressed file, which, you can't.
So, take the tarball, extract it (I just did it myself right now, there are no duplicates --because impossible), modify menuconfig.sh and build.sh to point them to your cross compiler (i recommend Linaro 6.1.1 for aarch64).
Now, within the source, you WILL find multiple files that are named the same, but they are in different locations, and contain different lines of code (almost usually). But these are NOT to be de-duped. Extract and use as-is.
Once you have set your toolchain in the 2 .sh files that jcadduono has made (and are awesome as can be), open up a terminal (i really hope you are on a Linux environment by this point, because if not, none of the steps in this paragraph will work ). Do not use root, just plain old userspace. Once in the terminal, cd to your source directory.
Type ./menuconfig.sh and hit enter.
Make your edits, save the file, and confirm you want to save.
Now you are back in your terminal session.
Type ./build.sh h918
Wait or watch as it compiles.
When it finishes, you will need 2 things. The kernel (found in your /sourcefolder/build/arch/arm64/boot directory), and the modules (found in your /sourcefolder/build/lib/modules/yourkernelname/kernel. This directory will be wiped the next time you do menuconfig or build, so get your files now. There will be like 20ish or so modules, and they have the .ko extension. Search the folder, and copy all these modules to a new folder, along with your zImage (file called Image.lz4-dtb).
You can either flash the zImage , or pack it into a boot.img with an existing RAMdisk, and flash the boot.img.
Also, all the modules you just compiled, need to go in your ROM. So when you make the flashable zip, make it delete /system/lib/modules, and then extract the new /modules dir into /system/lib.
Congrats, you just compiled your first custom kernel.
Hello
I thank you and @jcadduono for doing this.
Though I myself am not a developer, I will be getting this phone soon and I appreciate the activity on XDA that could potentially make it more fun to own this LG device.
I do know some basic Linux stuff, and I have compiled a few kernels with success so maybe I'll look into it someday, but hopefully there will be many veteran Linux hackers doing it instead the results would be better I think.
Btw, I looked on lg opensource site and found this: "LGH918_Android_Nougat_v10n.zip" I have not seen it mentioned anywhere in the forums yet, it must be very new.
askermk2000 said:
Btw, I looked on lg opensource site and found this: "LGH918_Android_Nougat_v10n.zip" I have not seen it mentioned anywhere in the forums yet, it must be very new.
Click to expand...
Click to collapse
https://forum.xda-developers.com/v20/how-to/h918-10k-kernel-source-potential-10n-t3631920
Plus @Mentalmuso has released a kernel using the 10N source.

Categories

Resources