• If you are experiencing issues logging in, we moved to a new and more secure software and older account passwords were not able to be migrated. We recommend trying to reset your password, then contacting us if there are issues.
  • Nearly done! Migration cleanup is mostly done. There are a small number of issues left that we continue to work on, but all the heavy lifting is done. We still would love to hear feedback over at this thread and also check out the new XDA app! Thanks and we hope you enjoy the new forums, and thanks for your support of XDA <3

[ROM][Unofficial][5.1.1] CyanogenMod 12.1

m11kkaa

Recognized Developer / Inactive Recognized Contrib
Jan 20, 2011
1,259
2,145
0
CyanogenMod is a free, community built, aftermarket firmware distribution of Android 5.1.1 (Lollipop), which is designed to increase performance and reliability over stock Android for your device.

Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* We are not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at us for messing up your device, we will laugh at you.
*/
Introduction
CyanogenMod is based on the Android Open Source Project with extra contributions from many people within the Android community. All the source code for CyanogenMod is available in the CyanogenMod Github repo. And if you would like to contribute to CyanogenMod, please visit Gerrit Code Review. You can also view the Changelog for a full list of changes & features.

Images






Features (Device Specific)
  • LCD Color/Gamma Settings
  • LCD Adaptive Backlight
  • LCD Color Enhancement
  • LCD QCOM PostProcessing(PP) support
  • Disable Touch keys and enable NavigationBar
  • Set Vibrator Intensity
  • 1+1 QuickBoot

Differences to CM11
  • Removed TrueDualBoot(TDB) support. And pls don't try to bring it back by using TDB enabled versions of CWM or TWRP. It's dead and will be replaced by GRUB4Android in March.
    CM12 still supports Dualsystem the way Xiaomi designed it. That means that it can be installed to both System partitions but the userdata partition will be shared.
  • SDCARD filesystem detection You now can format your internal sdcard to whatever filesystem is supported by VOLD and the CM kernel. The only alternative that would make sense is F2FS though.
  • Improved Power consumption Use Xiaomi's MPDecision, thermald and libqc-opt together with QCOM's power HAL.
  • Added QCOM time services
  • Added Oppo QuickBoot
  • Use Xiaomi blobs I replaced some Nexus4 blobs with the originals from Xiaomi'S MIUIv5 ROM to prevent some unpredictable bugs
  • Encryption support another reason why TDB is dead now :)

Known Bugs
  • Bluetooth connection and Audio issues

Installation instructions
!ATTENTION!
There are two (annoying) problems with GoogleApps:
1) CM12 is huge and doesn't leave much space for GAPPS on MI2
2) recovery ignores errors in update.zip's which means even though it tells you the installation was successful it failed.

this means you have two options:
1) resize your system partition(recommended) this miflash package resizes your system partition without taking space from your data partition by removing the system2 partitions:
http://forum.xda-developers.com/mi-2/orig-development/flashtools-miflash4linux-recovery-qdl-t3036730
2) install very small gapps packages and check /tmp/recovery.log and the remaining space after the installation to make sure it was successful.
First time flashing CyanogenMod 12.1 your device, or coming from another ROM?
  • Download the zip(s).
  • Optional: adb backup
  • Perform a NANDroid backup of your current ROM.
  • Wipe data & cache partitions of your device (required when coming from stock!).
  • Flash CyanogenMod.
  • Optional: Install the Google Apps addon package.

Issues?
Report them on github:
https://github.com/M1cha/android_device_xiaomi_aries/issues

IMPORTANT: if you use xposed - pls disable it and try again because it can cause problems in some cases.
Also the issue must contain important information like your phone model(mi2(s)(c)), and the exact build version of the ROM.

Download
DevHost

Changelog
Code:
20150730:
[changed] total rewrite
[changed] new kernel: CAF(LA.AF.1.1_rb1.18) + 3.4.108(upstream) + android-3.4(kernel/common)
[changed] support for merged partitions
[bug] some features like hw tunables are still missing

20140228:
[fixed] fix audio HAL by comparing values with MIUIv5
[changed] fix ACDBLoader
[changed] update WIFI config
[changed] update system.prop from CAF (should improve battery life a little bit)
[changed] rename CM perf profile properties for Xiaomi's thermald
[changed] use CM's default wallpaper
[changed] update kernel from mako
Older changelogs:

Code:
20140218:
[changed] set SELinux to Enforcing mode
[changed] disable flashing FMRadio FW
[fixed] Haptic Feedback for touch keys
[changed] disable ACDBLoader as an attempt to fix random call bugs
[fixed] attempt to fix Atmel touchscreen driver crash
Code:
20140217:
[new] F2FS support
[fixed] Installation on resized system partitions
[changed] switch to CAF HAL's and add FMRadio support
[changed] Update WLAN driver to LA.AF.1.1_rb1.12
Code:
20140216.
[new] Initial Release


Thanks To/Credits
Code:
* CyanogenMod
* Nexus 4 Maintainers
* QCOM for generic Sources
XDA:DevDB Information
CyanogenMod 12.1, ROM for the Xiaomi Mi 2

Contributors
m11kkaa
ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.4.x

Version Information
Status: Beta

Created 2015-02-16
Last Updated 2015-07-30
 

Attachments

Last edited:

_Roysten

Senior Member
Sep 9, 2011
56
47
0
Thank you very much M1cha for you excellent work and dedication! I will try this rom immediately.

Can I ask you a question? Where did you learn to mess with the kernel and the firmwares? Did it took long for you to learn it? I have always wanted to mess with these things myself, but I always get overwhelmed with the required knowledge :(
 

m11kkaa

Recognized Developer / Inactive Recognized Contrib
Jan 20, 2011
1,259
2,145
0
Thank you very much M1cha for you excellent work and dedication! I will try this rom immediately.

Can I ask you a question? Where did you learn to mess with the kernel and the firmwares? Did it took long for you to learn it? I have always wanted to mess with these things myself, but I always get overwhelmed with the required knowledge :(
Since there's not much documentation for such things u just have to start doing it and learn everything by yourself.
Also, these projects are too big to study them or trying to find a task just for learning.
The best way is to find a project idea and then u have to work on it until u succeed :)
 

m11kkaa

Recognized Developer / Inactive Recognized Contrib
Jan 20, 2011
1,259
2,145
0
Dualboot(the Xiaomi way) works, and TDB shouldn't be used anymore.(u have to wait for G4A).

The information about Xposed doesn't mean that Xposed isn't compatible(it should be), it just means that before reporting any crashes you should disable Xposed and check if u still have the same problem.
 
  • Like
Reactions: SWADED

zipalign

Senior Member
Sep 5, 2012
890
761
93
~$:
softkey vibration doesn't work.
I reserve to test this build as a daily driver and report any issue tomorrow.

m1cha, you won't let me swap my mi2s and I'm so happy with this :)
thanks a lot for your work!!
 

zipalign

Senior Member
Sep 5, 2012
890
761
93
~$:
Dualboot(the Xiaomi way) works, and TDB shouldn't be used anymore.(u have to wait for G4A).

The information about Xposed doesn't mean that Xposed isn't compatible(it should be), it just means that before reporting any crashes you should disable Xposed and check if u still have the same problem.
xposed for lollipop generates a bootloop on your CM12.
working fine on Ivan's AOSP rom.
so, don't try to flash it over m1cha's CM12!!
 
Last edited:

linuxxxx

Senior Member
Sep 22, 2013
764
2,307
0
[Now that we dont have TDB (with kitkat i only used it a few times) is there any way to eliminate the system 1 and increase the system0 and sdcard partitions?
Yeah but u should wait g4a ;)


Hi,

You're wrong ;) ! TDB is working (even if it shoudln't be now, GRUB is coming thanks to @m11kkaa) and xposed is now available for Lollipop : http://forum.xda-developers.com/xposed/official-xposed-lollipop-t3030118
Btw, thank you for your job michael ! :good:
Tdb is not supported anymore because cm policies ask for encryption support, and this feature would break tdb. About xposed we will not provide support or let users report bug if this fw is installed, because it breaks many things

Sent from my A0001
 
Last edited:

mehdoux

Member
Aug 27, 2012
24
10
0
Marseille
Yeah but u should wait g4a ;)




Tdb is not supported anymore because cm policies ask for encryption support, and this feature would break tdb. About xposed we will not provide support or let users report bug if this fw is installed, because it breaks many things

Sent from my A0001
No ! I'm not saying that TDB is supported, I wrote that this ROM is working with TDB (even if it shoudln't be because G4A is coming) because I've tested it and it's true.
Concerning xposed, if it's not asking too much, what does this framework break ? Thank you.
 

linuxxxx

Senior Member
Sep 22, 2013
764
2,307
0
No ! I'm not saying that TDB is supported, I wrote that this ROM is working with TDB (even if it shoudln't be because G4A is coming) because I've tested it and it's true.
Concerning xposed, if it's not asking too much, what does this framework break ? Thank you.
It "just" replaces the runtime with another one with tons of hacks that will cause huge security issues, then apps will have tons of npe or other fc cuz xposed hacks them for these modules. So when u get a bug andnure running xposed the 80% of times it's xposed, the 20% is a real bug

Sent from my A0001
 
  • Like
Reactions: mehdoux

m11kkaa

Recognized Developer / Inactive Recognized Contrib
Jan 20, 2011
1,259
2,145
0
No ! I'm not saying that TDB is supported, I wrote that this ROM is working with TDB (even if it shoudln't be because G4A is coming) because I've tested it and it's true.
Concerning xposed, if it's not asking too much, what does this framework break ? Thank you.
Before anybody tries to use TDB, I explain why you shouldn't:
You won't be able to format or backup data from CM12 with a TDB-enabled Recovery.(it would backup a empty data folder). And if you will make a data backup of CM12 with a NON-TDB Recovery this backup will contain System1 and System2 data too which makes them really big.
And ofc, If you wipe Data for CM12, System1 and System2 data are gone too.

The reason is that CM12 ignores the data location set by CWM.