[Firmware][ICS]UNOFFICIAL CM9 for the Infuse 4G (07/28/2012)

Search This thread

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
DO NOT POST IN THIS THREAD UNTIL YOU HAVE COMPLETELY READ THIS POST AND THE FAQ.

Since jt1134 is no longer supporting his CM9 releases here on XDA and asking people to go elsewhere for support, I have decided to start building CM9 for the Infuse.

Much of the credit goes to him for doing the initial ICS bringup for Infuse, I'm working on fixing some of the things that are not yet working. Even more goes to LinuxBozo - without his CM7 work we would be nowhere.

http://d-h.st/vN1 - 06/20/2012 build
http://d-h.st/ahW - 06/27/2012 build
http://d-h.st/Pfr - 07/28/2012 build

Installation instructions-from a Gingerbread firmware with "red CWM":
Place this release and an ICS gapps release on your SD card.
Flash this ZIP in CWM
Reboot - you will get stuck at the Samsung screen
Reboot to recovery again using the three-finger salute - hold down VolUp+VolDn+Power until the device reboots, release Power after the reboot, continue holding VolUp+VolDn
Go to Mounts and Storage and format: system, data, cache
Flash this ZIP a second time, then flash gapps
Reboot and enjoy

Coming from any AOSP-based firmware with "blue CWM":
Flash this, flash gapps, wipe. That should be all you need.

What is working:
Calls
GPS
Sound
Video playback

What is partially working:
Camera (minor flakiness, but mostly working)
Car dock audio (possibly desk dock too, untested) - Some issues with ringtone playback when docked - This is native dock audio, not using the Car Dock Redirector app workaround. Thanks go to StevenHarperUK of the GT-I9100 community for reworking CM9's dock audio code to permit this to work.
Wifi - It frequently loses connection when the device is asleep. Most likely needs some SDHCI driver tweaks to match the N7000 wifi driver.
Wifi Direct - A little glitchy but mostly working with I777/N7000. Won't talk to a P7510 (Tab 10.1) though.
Bluetooth - A2DP (music) and SCO (call audio) now works. However BT power management (LPM) is currently disabled, so BT may eat your battery when on.

Not working:
TV Output - No one has gotten MHL fully working on any Samsung device yet to my knowledge. There's some promising results from the I9100 community but it's not there yet.

Known issues:
SetCPU seems to be unable to set the minimum frequency to 100 MHz. This is one of the main reasons for holding off on OC - even stock clock code isn't working quite right
Facebook contact sync has been blocked by Google in ICS - this is universal to ICS on all devices I'm aware of. Facebook got what they deserved here.
 
Last edited:

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
Building - Use the Source, Luke

Kernel source is at: https://github.com/teamhacksung/android_kernel_samsung_dempsey

Device repo at: https://github.com/teamhacksung/android_device_samsung_infuse4g

To build, first prep your system for a Cyanogenmod build by following the instructions at:
http://wiki.cyanogenmod.com/wiki/Building_from_source

Once you have done the first "repo sync", at the two following lines to .repo/local_manifest.xml
Code:
  <project path="device/samsung/infuse4g" name="teamhacksung/android_device_samsung_infuse4g" remote="github"/>
  <project path="kernel/samsung/dempsey" name="teamhacksung/android_kernel_samsung_dempsey" remote="github" />

Run "repo sync" again

Sync https://github.com/TheMuppets/proprietary_vendor_samsung/ into vendor/samsung

Drop the contents of the attached tarball into vendor/samsung

(I really need to clean that process up...)

Run:
Code:
. build/envsetup.sh && brunch infuse4g
 

Attachments

  • infuse_vendor_blobs_20120627.tar.bz2
    2 MB · Views: 1,871
Last edited:

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
FAQ

Q: I get weird rainbows in recovery and when my device boots? What gives?
A: This is what happens when a Gingerbread or ICS kernel is booted on a device with Froyo bootloaders. You will need to either live with the rainbows (recovery is at least partially usable with the rainbows now) or flash Gingerbread bootloaders. Stay tuned for more info on bootloader flashing.

Unfortunately, the classic "rainbow fix" we used for Gingerbread is not compatible with how video acceleration is set up in ICS. The rainbowfix will just cause the device to crash immediately on boot. (I think this is why jt was not successful with LinuxBozo's CM7 source.)

Q: I'm getting rainbows, how do I flash Gingerbread bootloaders?
Flash the bootloaders from the file attached to this post using Heimdall as follows:
Code:
heimdall flash --primary-boot boot.bin --secondary-boot Sbl.bin

DO NOT do this unless you are experiencing rainbows, and DO NOT do this until you have confirmed you can flash less dangerous stuff (like kernels) with Heimdall. If the flash fails you will hardbrick!

Thanks to LinuxBozo for confirming, way back in the days of UCKJ2, that Heimdall can safely flash bootloaders from leaks. http://forum.xda-developers.com/showthread.php?p=18539754#post18539754 - Be warned, once you do this step there is no going back. For whatever reason the Infuse won't flash dumped bootloaders, so there is no known way to return to Froyo and Rogers Gingerbread bootloaders.
 

Attachments

  • bootloaders_UCKJ2.7z
    335.2 KB · Views: 2,277
Last edited:

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
Change Log

7/28/2012:
Removed 1000 MHz cpufreq step - the extra frequency step was causing all sorts of weird derpage.
Fixed 1200 MHz step (it was using the wrong PLL settings)
Moved to open source sensor HAL

7/22/2012:
Major improvements to camera flash functionality - torch is still broken but most other flash functions work
EXIF info (including rotation) is now saved. However I had to disable JPEG thumbnail generation, which slows down viewing of images in gallery
Structural changes to the repos to make things cleaner - Once two patches get merged by CM I plan on submitting Infuse for official nightlies
CPU clock handling for GPU bus frequency was changed from a policy change (min freq bumped to 200 MHz in policy, which would cause some apps to "stick" the min at 200) to a DVFS lock. Min no longer bumps up to 200 - however any time the GPU is active it'll still lock to 200 MHz.

6/27/2012:
Discovered our device has a Broadcom BT chipset - the CG2900 is NOT used for Bluetooth. BT is now fully functional other than possible power management issues

6/20/2012:
Various upstream stuff
Wifi Direct support added - partially glitchy (see OP)
Bluetooth support brought up to CM7 levels (Audio stuff is still broken)

5/27/2012:
New wifi driver from GT-N7000 Update3 source drop: Hopefully will improve wifi for those with issues
New LPM (charging while off) code from I9100
All upstream changes since last build, including lockscreen weather

5/19/2012:
Lots of upstream CM9 changes, including theme engine and customizable lockscreen
Settings->Advanced now works. mDNIE settings (tested) and HSPA+ control (untested)
A small patch that might help wifi driver loading issues, but not guaranteed (gokhanmoral reverted it within a day in his case...)

5/2/2012:
Pulled in a few wifi fixes from gokhanmoral's I9100 SiyahKernel tree. May help those who are having wifi issues.

4/23:
Fixed wifi MAC address getting set randomly on every boot

4/22:
Misc stuff from CM9 upstream
New wifi driver backported from the I9100 update4 sources and pershoot's Tab 10.1 kernel - Fixes wifi tethering!
USB tethering removed until I can make the RNDIS driver play with the new net/wireless code - not even sure if it was working to begin with.

4/19:
No more banding in recovery (thank codeworkx for this one, exact same fix as for I9100)
FFC is no longer cropped to one corner of the sensor. Full resolution support for FFC still not implemented
Various upstream changes
 
Last edited:

The_Zodiac

Senior Member
Aug 28, 2010
1,956
260
Unknown
Very nice any idea on how to get mtd to work? Also would that improve speed ? Thx

Sent from my SGH-I997 using xda premium
 
T

tmease1

Guest
Thanks for taking this on for all of us here in the xda community.

Sent from my MB865 using xda premium
 

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
Very nice any idea on how to get mtd to work? Also would that improve speed ? Thx

Sent from my SGH-I997 using xda premium

I believe that was primarily used to eliminate the need for Samsung's proprietary RFS/FSR modules.

It doesn't carry a speed benefit, but it's beneficial in the long run for kernel developers.
 

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
Current differences between my build and jt's last:

1) I haven't put AriesParts in yet - half of the features don't work
2) Overclock is not in yet - The overclock code from netarchy/LB is ancient and needs to be reworked. Voltage control is in there though
3) Car dock audio redirection is working, using a built-in CM9 approach instead of a separate dock audio redirector app. I had to make some changes in libaudio of aries-common to fix this. Probably some more work needs to be done here - ringtones when docked are iffy.
 

indymx

Senior Member
Jan 17, 2009
481
131
Indianapolis, IN
Sounds great.. I just got jt1134's build 2 installed and working..

Looking forward to seeing what you put together for us. Always great stuff coming from you!!
 
Since jt1134 is no longer supporting his CM9 releases here, I have decided to start building CM9 for the Infuse.

Much of the credit goes to him for doing the initial ICS bringup for Infuse, I'm working on fixing some of the things that are not yet working.

http://d-h.st/x53 - 4/15/2012 build

Installation instructions-from a Gingerbread firmware with "red CWM":
Place this release and an ICS gapps release on your SD card.
Flash this ZIP in CWM
Reboot - you will get stuck at the Samsung screen
Reboot to recovery again using the three-finger salute - hold down VolUp+VolDn+Power until the device reboots, release Power after the reboot, continue holding VolUp+VolDn
Go to Mounts and Storage and format: system, data, cache
Flash this ZIP a second time, then flash gapps
Reboot and enjoy

What is working:
Calls
GPS
Wifi
Sound
Camera
Video playback

What is partially working:
Camera (front camera is zoomed in excessively)
Car dock audio (possibly desk dock too, untested) - Some issues with ringtone playback when docked - This is native dock audio, not using the Car Dock Redirector app workaround. Thanks go to StevenHarperUK of the GT-I9100 community for reworking CM9's dock audio code to permit this to work.

Not working:
Wifi tethering - We need far more than the HIDDEN_SSID fix CM7 required unfortunately
Bluetooth - Not working at all, not even to CM7 levels
TV Output - No one has gotten MHL fully working on any Samsung device yet to my knowledge. There's some promising results from the I9100 community but it's not there yet.

Are you saying that he's not building any more releases, or that he just won't be releasing them here on XDA, but on rootzwiki instead. I'm confused.
 

Frooty

Senior Member
May 29, 2011
209
39
Thanks for this! Did you fix/attempt to fix the problem with music coming out of the speaker when you get a notification with headphones plugged in? That's the only thing keeping me from loving ICS, since it's preventing me from listening to music at work.
 

Entropy512

Senior Recognized Developer
Aug 31, 2007
14,088
25,086
Owego, NY
Are you saying that he's not building any more releases, or that he just won't be releasing them here on XDA, but on rootzwiki instead. I'm confused.
I don't know what he's doing... All I know is he released his first build here but refuses to post any subsequent builds here, even though this is where all other Infuse development occurs. It's unreasonable to ask users to go to another forum just for ONE firmware, especially a forum with broken CSS stylesheets and a horrifically immature/irresponsible userbase. jt1134, imnuts, and Ezekeel are the only RW fans I've met that weren't complete douchebags and had technical skills to back up their bravado. Others think it's "kewl" to tell users to flash bootloaders all the time and then laugh at them if they hardbrick.

Thanks for this! Did you fix/attempt to fix the problem with music coming out of the speaker when you get a notification with headphones plugged in? That's the only thing keeping me from loving ICS, since it's preventing me from listening to music at work.
Not yet... I'm just starting to mess with libaudio.
 
Last edited:

Joseph

Senior Moderator / RC-RT Committee
Staff member
Dec 17, 2011
26,520
57,444
53
www.marines.com
Samsung Galaxy S9+
Samsung Galaxy S20
Are you saying that he's not building any more releases, or that he just won't be releasing them here on XDA, but on rootzwiki instead. I'm confused.

1st must you quote the entire op?

Yes and no...yes jt is still building...no he is not posting on XDA...jt prefer the rootzwiki site that's where he is posting....
Check or Hold??
 
  • Like
Reactions: oldbbman
I don't know what he's doing... All I know is he released his first build here but refuses to post any subsequent builds here, even though this is where all other Infuse development occurs. It's unreasonable to ask users to go to another forum just for ONE firmware, especially a forum with broken CSS stylesheets and a horrifically immature/irresponsible userbase. jt1134, imnuts, and Ezekeel are the only RW fans I've met that weren't complete douchebags and had technical skills to back up their bravado. Others think it's "kewl" to tell users to flash bootloaders all the time and then laugh at them if they hardbrick.


Not yet... I'm just starting to mess with libaudio.

Alright, well thanks for the quick reply. I didn't/don't know whats going on either. I'll just continue to monitor both threads and eventually things will become clearer on what he's doing. Great work on the ROM by the way! Keep it up.

---------- Post added at 07:13 PM ---------- Previous post was at 07:09 PM ----------

1st must you quote the entire op?

Yes and no...yes jt is still building...no he is not posting on XDA...jt prefer the rootzwiki site that's where he is posting....
Check or Hold??

Obviously I needed to quote the first OP, because that where my question originated from. And thanks for giving me the information that I was basing my question on, I know he's posting his builds on Rootzwiki, and has several threads opened up for his builds where everyone is saying something different about what he'll be doing with his releases.
 

MaliciousIntent69

Senior Member
Jan 26, 2012
545
460
California
Alright, well thanks for the quick reply. I didn't/don't know whats going on either. I'll just continue to monitor both threads and eventually things will become clearer on what he's doing. Great work on the ROM by the way! Keep it up.

---------- Post added at 07:13 PM ---------- Previous post was at 07:09 PM ----------



Obviously I needed to quote the first OP, because that where my question originated from. And thanks for giving me the information that I was basing my question on, I know he's posting his builds on Rootzwiki, and has several threads opened up for his builds where everyone is saying something different about what he'll be doing with his releases.

No need to be rude to mister Joe he was only trying to help!

I'm glad its finally on XDA makes it easier to know when an update is since I only check this site :)

Sent from my SGH-I997 using xda premium
 
  • Like
Reactions: oldbbman and Joseph

Joseph

Senior Moderator / RC-RT Committee
Staff member
Dec 17, 2011
26,520
57,444
53
www.marines.com
Samsung Galaxy S9+
Samsung Galaxy S20
obviously I needed to quote the first OP, because that where my question originated from. And thanks for giving me the information that I was basing my question on, I know he's posting his builds on Rootzwiki, and has several threads opened up for his builds where everyone is saying something different about what he'll be doing with his releases.

Actually you didn't but YW for clearing up your confusions....
:D
 

AdamOutler

Retired Senior Recognized Developer
Feb 18, 2011
5,224
9,815
Miami, Fl̨̞̲̟̦̀̈̃͛҃҅͟orida
Runs beautifully as advertised!

I spoke with Entropy.. I would like everyone to take note:
Your phone is lying to you when it says you are on H+ all the time. That would kill your battery. It will jump to H and 3G all the time. CM9 does not display H+, only H.

I found Alarm Free (HD) does the same thing as Touchwiz Clock (Alarm, Stopwatch, and Countdown). I rely on Touchwiz clock at work for testing devices times and at home for timing punishments and waking up in the morning... I felt this was important to mention.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 215
    DO NOT POST IN THIS THREAD UNTIL YOU HAVE COMPLETELY READ THIS POST AND THE FAQ.

    Since jt1134 is no longer supporting his CM9 releases here on XDA and asking people to go elsewhere for support, I have decided to start building CM9 for the Infuse.

    Much of the credit goes to him for doing the initial ICS bringup for Infuse, I'm working on fixing some of the things that are not yet working. Even more goes to LinuxBozo - without his CM7 work we would be nowhere.

    http://d-h.st/vN1 - 06/20/2012 build
    http://d-h.st/ahW - 06/27/2012 build
    http://d-h.st/Pfr - 07/28/2012 build

    Installation instructions-from a Gingerbread firmware with "red CWM":
    Place this release and an ICS gapps release on your SD card.
    Flash this ZIP in CWM
    Reboot - you will get stuck at the Samsung screen
    Reboot to recovery again using the three-finger salute - hold down VolUp+VolDn+Power until the device reboots, release Power after the reboot, continue holding VolUp+VolDn
    Go to Mounts and Storage and format: system, data, cache
    Flash this ZIP a second time, then flash gapps
    Reboot and enjoy

    Coming from any AOSP-based firmware with "blue CWM":
    Flash this, flash gapps, wipe. That should be all you need.

    What is working:
    Calls
    GPS
    Sound
    Video playback

    What is partially working:
    Camera (minor flakiness, but mostly working)
    Car dock audio (possibly desk dock too, untested) - Some issues with ringtone playback when docked - This is native dock audio, not using the Car Dock Redirector app workaround. Thanks go to StevenHarperUK of the GT-I9100 community for reworking CM9's dock audio code to permit this to work.
    Wifi - It frequently loses connection when the device is asleep. Most likely needs some SDHCI driver tweaks to match the N7000 wifi driver.
    Wifi Direct - A little glitchy but mostly working with I777/N7000. Won't talk to a P7510 (Tab 10.1) though.
    Bluetooth - A2DP (music) and SCO (call audio) now works. However BT power management (LPM) is currently disabled, so BT may eat your battery when on.

    Not working:
    TV Output - No one has gotten MHL fully working on any Samsung device yet to my knowledge. There's some promising results from the I9100 community but it's not there yet.

    Known issues:
    SetCPU seems to be unable to set the minimum frequency to 100 MHz. This is one of the main reasons for holding off on OC - even stock clock code isn't working quite right
    Facebook contact sync has been blocked by Google in ICS - this is universal to ICS on all devices I'm aware of. Facebook got what they deserved here.
    63
    Building - Use the Source, Luke

    Kernel source is at: https://github.com/teamhacksung/android_kernel_samsung_dempsey

    Device repo at: https://github.com/teamhacksung/android_device_samsung_infuse4g

    To build, first prep your system for a Cyanogenmod build by following the instructions at:
    http://wiki.cyanogenmod.com/wiki/Building_from_source

    Once you have done the first "repo sync", at the two following lines to .repo/local_manifest.xml
    Code:
      <project path="device/samsung/infuse4g" name="teamhacksung/android_device_samsung_infuse4g" remote="github"/>
      <project path="kernel/samsung/dempsey" name="teamhacksung/android_kernel_samsung_dempsey" remote="github" />

    Run "repo sync" again

    Sync https://github.com/TheMuppets/proprietary_vendor_samsung/ into vendor/samsung

    Drop the contents of the attached tarball into vendor/samsung

    (I really need to clean that process up...)

    Run:
    Code:
    . build/envsetup.sh && brunch infuse4g
    51
    FAQ

    Q: I get weird rainbows in recovery and when my device boots? What gives?
    A: This is what happens when a Gingerbread or ICS kernel is booted on a device with Froyo bootloaders. You will need to either live with the rainbows (recovery is at least partially usable with the rainbows now) or flash Gingerbread bootloaders. Stay tuned for more info on bootloader flashing.

    Unfortunately, the classic "rainbow fix" we used for Gingerbread is not compatible with how video acceleration is set up in ICS. The rainbowfix will just cause the device to crash immediately on boot. (I think this is why jt was not successful with LinuxBozo's CM7 source.)

    Q: I'm getting rainbows, how do I flash Gingerbread bootloaders?
    Flash the bootloaders from the file attached to this post using Heimdall as follows:
    Code:
    heimdall flash --primary-boot boot.bin --secondary-boot Sbl.bin

    DO NOT do this unless you are experiencing rainbows, and DO NOT do this until you have confirmed you can flash less dangerous stuff (like kernels) with Heimdall. If the flash fails you will hardbrick!

    Thanks to LinuxBozo for confirming, way back in the days of UCKJ2, that Heimdall can safely flash bootloaders from leaks. http://forum.xda-developers.com/showthread.php?p=18539754#post18539754 - Be warned, once you do this step there is no going back. For whatever reason the Infuse won't flash dumped bootloaders, so there is no known way to return to Froyo and Rogers Gingerbread bootloaders.
    49
    Change Log

    7/28/2012:
    Removed 1000 MHz cpufreq step - the extra frequency step was causing all sorts of weird derpage.
    Fixed 1200 MHz step (it was using the wrong PLL settings)
    Moved to open source sensor HAL

    7/22/2012:
    Major improvements to camera flash functionality - torch is still broken but most other flash functions work
    EXIF info (including rotation) is now saved. However I had to disable JPEG thumbnail generation, which slows down viewing of images in gallery
    Structural changes to the repos to make things cleaner - Once two patches get merged by CM I plan on submitting Infuse for official nightlies
    CPU clock handling for GPU bus frequency was changed from a policy change (min freq bumped to 200 MHz in policy, which would cause some apps to "stick" the min at 200) to a DVFS lock. Min no longer bumps up to 200 - however any time the GPU is active it'll still lock to 200 MHz.

    6/27/2012:
    Discovered our device has a Broadcom BT chipset - the CG2900 is NOT used for Bluetooth. BT is now fully functional other than possible power management issues

    6/20/2012:
    Various upstream stuff
    Wifi Direct support added - partially glitchy (see OP)
    Bluetooth support brought up to CM7 levels (Audio stuff is still broken)

    5/27/2012:
    New wifi driver from GT-N7000 Update3 source drop: Hopefully will improve wifi for those with issues
    New LPM (charging while off) code from I9100
    All upstream changes since last build, including lockscreen weather

    5/19/2012:
    Lots of upstream CM9 changes, including theme engine and customizable lockscreen
    Settings->Advanced now works. mDNIE settings (tested) and HSPA+ control (untested)
    A small patch that might help wifi driver loading issues, but not guaranteed (gokhanmoral reverted it within a day in his case...)

    5/2/2012:
    Pulled in a few wifi fixes from gokhanmoral's I9100 SiyahKernel tree. May help those who are having wifi issues.

    4/23:
    Fixed wifi MAC address getting set randomly on every boot

    4/22:
    Misc stuff from CM9 upstream
    New wifi driver backported from the I9100 update4 sources and pershoot's Tab 10.1 kernel - Fixes wifi tethering!
    USB tethering removed until I can make the RNDIS driver play with the new net/wireless code - not even sure if it was working to begin with.

    4/19:
    No more banding in recovery (thank codeworkx for this one, exact same fix as for I9100)
    FFC is no longer cropped to one corner of the sensor. Full resolution support for FFC still not implemented
    Various upstream changes
    36
    I'm going to push out a build that hopefully fixes some of the wifi driver issues tonight, it pulls a few patches in from gokhanmoral's I9100 tree. (I9100 users have had occasional issues with wifi reliability too.)

    Since I can't reproduce the issues I don't know if it will help things or not.

    I do plan on staying with this wifi driver. The benefits of working tethering and (hopefully) eliminating the BT-AMP wakeup bug (as it did when backported to the Tab 10.1) outweight the small issues it has.

    Currently on my list, time permitting:
    Try to identify why the broadcast/ARP packet filters don't enable when the screen is off. This seems to be a common issue to all devices using the I9100 wifi drivers and CM9 - It can hurt battery life for those on "dirty" networks with lots of broadcast spam. It's not a problem for most developers as we run clean networks, which might explain the unusual discrepancies in battery life between the developers and some users.
    Attempt to see if there's a way to shoehorn the I9100 camera HAL onto the Infuse, which seems to use the exact same cameras. If possible it will provide a much more robust camera experience. If not - I've lost enough sleep to the damn camera HAL, I welcome someone else trying to fix it. I hate going from an open-source HAL to a blob - but the open source HAL isn't working too well.

    I'm probably not going to be doing too much over the next few days on any device, I'm generally exhausted.