yashsingh1/xdaforums huggingface dataset:
[HTC Droid DNA] chad0989:
I don't post builds. When it's ready anyone can pull the source and post builds if they desire. I haven't pushed the audio stuff yet as its not complete and right now my local tree is pretty messy. If I get time tomorrow I'll try to organize it and push so others can take a look.

While the audio system is working and I get output from the ext speaker (vol adjust beeps, alarms, notifications), in call audio is unfortunately not working yet, on either the earpiece or ext speaker.

It does appear that the mic works.

I didn't get to work on audio much more today as I spend most of the day tracking down a radio issue. There was a recent change in mainline CM that essentially made the phone think it was on a gsm network. In the end it was an easy fix, but it took me all day to notice the change.

Currently working:

Display

Data (3g/4g)

SMS, MMS should work also but I haven't tested

WiFi

adb

MTP

Sensors (compass, gyro etc)

Vibration

LEDs

Audio partially working

Not working:

Bluetooth

GPS

Camera
[HTC Droid DNA] Imacellist:
OK ill try to get my build machine back up and running to see if I can help posting builds. Thanks for all your work and especially your willingness to take the time to let us know whats going on.
[HTC Droid DNA] drewX2:
Add libcsd-client.so and libril.so. I've verified them working correctly in your build. Not sure of your radio issues, but they work.
[HTC Droid DNA] Flyhalf205:
If Chad thinks it's okay to release a build to the public. I will post a build in a new thread tomorrow around noon(depending on the time of his reply)

Edit: waiting till chad pushes audio fixes then I will post a build.
[HTC Droid DNA] live2die:
im so happy to see you here chad! i just bought a dna from ebay today and im using rezound now powered by chad!
[HTC Droid DNA] chad0989:
My local tree does use libcsd-client. I definitely agree that the issue is probably related to the csd client though, as it seems its involved in routing audio from the radio to the audio HAL.

The radio issue had to do with the cdmaltesst not being created as it should. We use rilv7 and CM recently implemented two changes that altered how it was force created:

https://github.com/CyanogenMod/andr...mmit/a34c63e1842f018f7d318ba7887ec2500c07658c

https://github.com/CyanogenMod/andr...mmit/97cabb4543823fd989f4aa371fca41b1aeb07278

We used to be able to just set telephony.lteoncdma = 1, now we also have to set telephony.rilV7NeedCDMALTEPhone = true. Without the new flag it used the gsmsst instead of the cdmaltesst, and while data worked, it broke calls, sms and mms.
[HTC Droid DNA] Shamrock13:
Wait a second... So this is really close to release?! Why isn't there more press about this?!
[HTC Droid DNA] Imacellist:
There's still quite a bit work to be done but it has really come a long way. Audio is getting close which will make it functional for day to day use but there are still some other things that don't work yet.
[HTC Droid DNA] chad0989:
Pushed all my recent changes. Yes there are BT commits, not it doesn't work yet. Audio still partially working, still some routing issues need to be worked out. If anyone is real good with ALSA they could probably help out here.
[HTC Droid DNA] jamesbra:
To clarify, partially working audio is no in call but media plays?
[HTC Droid DNA] chad0989:
That's correct.
[HTC Droid DNA] 123421342:
Can you comment on overall performance currently? That is, how does the overall speed and responsiveness compare to a stock-based rom?
[HTC Droid DNA] chad0989:
Sorry if anyone built and was getting a media service crash. I missed a couple changes when I split everything up into separate commits. Should be fixed now.
[HTC Droid DNA] chad0989:
It runs fine.
[HTC Droid DNA] orangekid:
Thread cleaned.

This is a development thread, let us please not discuss off topic issues in here.

Thanks and have a nice day.
[HTC Droid DNA] whirl08:
Hopefully this helps, here's a logcat paste in regards to error -110 while installing apps via market or file manager.

I/qtaguid ( 1247): Failed write_ctrl(u 51) res=-1 errno=22
I/qtaguid ( 1247): Untagging socket 51 failed errno=-22
W/NetworkManagementSocketTagger( 1247): untagSocket(51) failed with errno -22
D/Finsky (11196): [1] DownloadBroadcastReceiver.onReceive: Intent received at D
ownloadBroadcastReceiver
D/Finsky (11196): [1] DownloadQueueImpl.notifyProgress: com.keramidas.TitaniumB
ackup: onProgress 5999357/5999357 Status: 200.
D/Finsky (11196): [1] DownloadImpl.setState: com.keramidas.TitaniumBackup from
DOWNLOADING to SUCCESS.
D/Finsky (11196): [1] DownloadQueueImpl.onComplete: com.keramidas.TitaniumBacku
p: onComplete
D/Finsky (11196): [1] DownloadQueueImpl.remove: Download com.keramidas.Titanium
Backup removed from DownloadQueue
I/installd( 218): free_cache(0) avail 6165168128
W/ActivityManager( 701): Unable to start service Intent { cmp=com.android.defco
ntainer/.DefaultContainerService } U=0: not found
E/PackageManager( 701): Failed to bind to media container service
D/dalvikvm( 701): GC_EXPLICIT freed 1110K, 36% free 27287K/42304K, paused 3ms+5
ms, total 67ms
D/Finsky (11196): [251] 1.packageInstalled: Package install status for "null" i
s -110
D/Finsky (11196): [1] InstallerTask.cancelCleanup: Cancel running installation
of com.keramidas.TitaniumBackup
D/dalvikvm( 1068): GC_CONCURRENT freed 3189K, 39% free 32554K/53128K, paused 4ms
+5ms, total 41ms
D/dalvikvm( 1068): WAIT_FOR_CONCURRENT_GC blocked 37ms
D/dalvikvm(11196): GC_CONCURRENT freed 6181K, 20% free 26734K/33096K, paused 3ms
+15ms, total 73ms
W/ThrottleService( 701): unable to find stats for iface rmnet0
I/PowerManagerService( 701): Going to sleep due to screen timeout...
D/SurfaceFlinger( 206): Screen released, type=0 flinger=0x40c31318
D/qdhwcomposer( 206): hwc_blank: Blanking display: 0
W/MPL-sup ( 701): MLGetAKMComassStatus, gAKMCompassStatus = 0
I/ ( 701): mpu3050_suspend: suspending sensors to 0000
I/ ( 701): mpu3050_suspend: Will resume next to 0070
D/qdhwcomposer( 206): hwc_blank: Done blanking display: 0
D/Surface ( 701): Excessive delay in blankDisplay() while turning screen off: 3
10ms
E/CM PowerHAL( 701): Error opening /sys/devices/system/cpu/cpufreq/ondemand/sam
pling_rate: Permission denied
V/AudioHardwareALSA( 216): setParameters() screen_state=off
D/dalvikvm( 701): GC_FOR_ALLOC freed 3380K, 30% free 29890K/42304K, paused 52ms
, total 52ms
D/PhoneStatusBar( 1068): disable: < expand icons alerts ticker system_info back
home RECENT* clock search >
V/TAG ( 701): bug 7643792: fitSystemWindows([0,66][0,0])
D/PhoneStatusBar( 1068): disable: < expand icons alerts ticker system_info BACK*
HOME* RECENT CLOCK* search >
W/ProcessStats( 701): Skipping unknown process pid 11639
W/ProcessStats( 701): Skipping unknown process pid 11648
^C
C:\android-sdk\platform-tools>
[HTC Droid DNA] crpalmer:
flyhalf205: it looks vaguely like you're trying to take the cm-10.1-chad kernel and merge in the upstream commits. If so, see:

https://github.com/crpalmer/dna-kernel-plus-upstream/tree/stock+upstream+cm-10.1-chad
[HTC Droid DNA] Flyhalf205:
Sweet. Does it build successfully?
[HTC Droid DNA] crpalmer:
Shesh, what you must think of me? :)

Yes, it builds and it booted fine for me on Viper 1.1.3 (with the stock initrd.img, not the CM one).
[HTC Droid DNA] Flyhalf205:
haha I just making sure. lol but GEEEZZEEE 1000+ commits. You've been busy my friend.

What funny is on my commits. My time was wrong on my build machine and Linux 3.4.30 is on March 15 lol https://github.com/CM10DNA/android_kernel_htc_dlx/commits/cm-10.1
[HTC Droid DNA] crpalmer:
Chad,

In case you didn't see it, I created a few pull requests for you for the kernel that clean up a couple of problems that are throwing errors in the kernel logs and fixes the gamma correction.

Now my turn... Did you pull the commit that updates the kgsl drivers from somewhere or do it yourself? Either way, what did you do? For context, I got the Verizon 2.04 (OTA) update working with your kgsl commit plus some other commits. I would much rather make a much smaller change to allow devs to support 2.04 systems with custom kernels rather than update the entire kgsl stack when Verizon/HTC is clearly not using the new drivers.
[HTC Droid DNA] chad0989:
Ill merge them when I get home. I've been swamped with some other stuff this week and havent gotten to take a chance to look at anything.

The kgsl stuff I did myself. I pulled everything from mako and fixed it up to work. I wanted to get the display working as quickly as possible so that everything else could be worked on. The other option would have been to pull the display HAL from 4.1 and fix it to work with 4.2. CM generally pushes for everyone to update to where they're at if possible though.

Either way, it is something that will need to be revisited though. I have concerns that since our camera libs were built against the 4.1 gralloc headers but our display libs were built against 4.2 we're going to run into issues there.
[HTC Droid DNA] crpalmer:
Chad, sorry to be annoying... What branch of mako? I want to look at it from a commit by commit level.

In terms of conflicts between the parts, I agree with your fears.
[HTC Droid DNA] chad0989:
https://github.com/CyanogenMod/lge-kernel-mako

jellybean branch. It's the only one I believe.

No annoyance. If you can do it better/more organized it's to everyone's advantage :good:.
[HTC Droid DNA] crpalmer:
Ah, thanks! I was looking at google's git repos and none of the branches seemed to match up...
[HTC Droid DNA] chad0989:
Fixed the market app install error 110. We were missing the /data/app-lib directory.

As for audio. The earpiece works well. The call audio issue appears to be routing the audio from the radio.

Here is the relevant error:

D/ALSADevice( 216): startVoiceCall: handle 0x4165c3e0

D/ALSADevice( 216): Device value returned is hw:0,9

D/ALSADevice( 216): handle->format: 0x2

D/ALSADevice( 216): setHardwareParams: reqBuffSize 2048 channels 1 sampleRate 8000

D/ALSADevice( 216): setHardwareParams: buffer_size 4096, period_size 2048, period_cnt 2

E/alsa_pcm( 216): cannot prepare channel: errno =-22

E/ALSADevice( 216): startVoiceCall: pcm_prepare failed

E/ALSADevice( 216): startVoiceCall: Failed to initialize ALSA device 'hw:0,9'

error 22 would be invalid argument.

Here's what pcm_prepare looks like (from libalsa-intf/alsa_pcm.c):

int pcm_prepare(struct pcm *pcm)
{
if (ioctl(pcm->fd, SNDRV_PCM_IOCTL_PREPARE)) {
ALOGE("cannot prepare channel: errno =%d\n", -errno);
return -errno;
}
pcm->running = 1;
return 0;
}

So it would appear the ioctl function (or maybe the kernel?) is expecting different data than what it's getting. Nothing obvious is jumping out at me right now, but maybe someone else (crpalmer?) can take a look and give their thoughts.

Right now I'm going to try bypassing pcm_prepare and add some debugging info (to make sure we are getting an fd from pcm_open)... maybe we'll get lucky and we can just start sending buffers.
[HTC Droid DNA] crpalmer:
Stretching a little bit here...

Are you sure that pcm->fd is a valid file descriptor? EINVAL could be caused by it being bogus (unable to open the device for some reason, maybe?).

It's stretching because I would hope that you would have seen an error message if something failed to open the device.

If it is a valid fd, maybe there is something in the dmesg output that would narrow it down somewhat?
[HTC Droid DNA] chad0989:
pcm_open does return an fd. So the fd must be unsuitable for reading for some reason, hmm:

Edit:

D/ALSADevice( 214): startVoiceCall: handle 0x400afb20

D/ALSADevice( 214): Device value returned is hw:0,9

D/ALSADevice( 214): pcm_open returned fd 25

D/ALSADevice( 214): handle->format: 0x2

D/ALSADevice( 214): setHardwareParams: reqBuffSize 2048 channels 1 sampleRate 8000

D/ALSADevice( 214): setHardwareParams: buffer_size 4096, period_size 2048, period_cnt 2

E/alsa_pcm( 214): cannot prepare channel: errno =-22

E/ALSADevice( 214): startVoiceCall: pcm_prepare failed

E/ALSADevice( 214): startVoiceCall: Failed to initialize ALSA device 'hw:0,9'

D/ALSADevice( 214): close: handle 0x400afb20 h 0x0
[HTC Droid DNA] chad0989:
This is driving me nuts. So, adding some more debug info I can conclude:

The device is opened (hw0,9)

A valid fd is returned, querying the device for the current state returns 0 (SND_PCM_STATE_OPEN)

HW params are set, querying the device for the current state now returns 1 (SND_PCM_STATE_SETUP) which indicates it is waiting for the pcm_prepare call.

SW params are set

pcm_prepare fails inexplicably

So now I'm thinking maybe a hw parameter that is being set is incorrect, or maybe the parameters are being shifted due to an extra or missing parameter in HTCs kernel. I have yet to find one though, other than the q6 effect stuff but that hasn't affected any struct sizes, and it doesn't explain why all other audio works.

Here is the latest logcat:

D/ALSADevice( 214): startVoiceCall: handle 0x400634c8

D/ALSADevice( 214): Device value returned is hw:0,9

D/ALSADevice( 214): pcm_open returned fd 28

D/ALSADevice( 214): pcm state: 0

D/ALSADevice( 214): handle->format: 0x2

D/ALSADevice( 214): setHardwareParams: reqBuffSize 2048 channels 1 sampleRate 8000

V/alsa_pcm( 214): access = 0000000000000008

V/alsa_pcm( 214): format = 0000000000000004

V/alsa_pcm( 214): subformat = 0000000000000001

V/alsa_pcm( 214): sample_bits = (16,16) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): frame_bits = (16,16) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): channels = (1,1) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): rate = (8000,8000) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): period_time = (128000,128000) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): period_size = (1024,1024) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): period_bytes = (2048,2048) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): periods = (2,2) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): buffer_time = (256000,256000) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): buffer_size = (2048,2048) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): buffer_bytes = (4096,4096) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): tick_time = (0,0) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): info = 000c0103

V/alsa_pcm( 214): msbits = 16

V/alsa_pcm( 214): rate = 8000/1

V/alsa_pcm( 214): fifo = 0

V/alsa_pcm( 214): buffer_bytes = (4096,4096) omin=0 omax=0 int=1 empty=0

V/alsa_pcm( 214): period_bytes = (2048,2048) omin=0 omax=0 int=1 empty=0

D/ALSADevice( 214): setHardwareParams: buffer_size 4096, period_size 2048, period_cnt 2

D/ALSADevice( 214): pcm state: 1

D/ALSADevice( 214): pcm state: 1

E/alsa_pcm( 214): cannot prepare channel: errno =-22

E/ALSADevice( 214): startVoiceCall: pcm_prepare failed

E/ALSADevice( 214): startVoiceCall: Failed to initialize ALSA device 'hw:0,9'

D/ALSADevice( 214): close: handle 0x400634c8 h 0x0

V/ALSADevice( 214): close handle h 0x41355830
[HTC Droid DNA] crpalmer:
At least in theory, the ioctls talking to the kernel should be checking structure sizes as part of the ioctl number and that makes it harder to have an undetected mismatch. I wonder if the mismatch could be coming earlier in the pipe? Where is the hand-off from CM compiled libraries to HTC Vendor libraries? That sounds like a good place for argument order and/or count to have changed and not cause any kind of error.

I am hoping to finally get another chance to spend at least a couple of hours looking at CM this weekend. Do you have uncommitted changes that you think have made some progress but aren't ready to commit yet? If so, would you mind creating a temporary branch and pushing it so I can pull it and work from the same point?

(Not that I am necessarily much help because I know almost nothing about how the sound drivers work in linux...)
[HTC Droid DNA] chad0989:
We aren't really using any of the HTC audio libs. The only three libs we're using are libaudcal, libacdbloader, and libcsd-client which are all qcom libs. As far as I can tell, libaudcal and libacdbloader are used for loading calibration data. libcsd-client does seem to be involved in some way in routing audio though.

It's possible HTC has modified them to the point where they break things for us, but it seems that we can use mako libs with the same result.

I really feel as though its a HAL <-> kernel issue somewhere. I could be completely wrong though, as I'm not super familiar with the audio system either, I'm learning as I go.

I have switched to a CAF based HAL instead of the mako based one. I'll push it up in a new branch.
[HTC Droid DNA] afazel:
Kernel dev in C, correct? I'm Casually trying to pick up a little bit of coding after ~10 years not looking at anything. Was looking at Python and JavaScript on Codecademy, but if there's a similar site anyone knows about for C (tutorial-based programming exercises) I'd rather pick that up to be more useful around here.

Or is it Java that's needed here for porting CyanogenMod for the userspace coding?
[HTC Droid DNA] agentcdog:
I think c will be more useful for this effort but the syntax is the easy part. Understanding the linux kernel and how it interacts with drivers etc is the tough part. Is there a kernel dev tutorial somewhere?
[HTC Droid DNA] t1gartist:
maybe someone will benefit from that quote
[HTC Droid DNA] crpalmer:
What are you testing? I assumed that you were testing making a call. I installed what's commited in the cm-10.1-chad branches and I don't see any ALSADevice in my logcat at all when making a call. Is that just a giant different with the HAL that you are using, is there extra debugging that you are enabling or are we doing different things?
[HTC Droid DNA] chad0989:
It's both. I'm going to push the CAF HAL I've been working on right now.

I am testing during making a call.

Edit: It's up. It's the cm10.1-chad-audio branches in the device and msm8960-common trees

Edit2: Here's some ALSA info too:

http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html
[HTC Droid DNA] drewX2:
Have you tried utilizing HTC's audio libs? If not, have you removed the references in the kernel to it? HTC's kernel has a flag to reroute audio via a different topology. Last time I looked, you had not done so.

Audio can be very fustrating when there are these type of flags throughout the kernel. However, I've come to realize that most (including myself in the past) have thought wrong about how audio works. After studying qualcomm's chip schematics, it really made understanding things much better. e.g., On my CM10.1 for the Find 5, I have nearly everything already working (including audio) and it took roughly 2 days. Much of your problems are attributed to using HTC's kernel when you should probably base it off a stock MSM kernel (to get around removing all their crap). Additionally, the acdbloader lib references specific address points most likely in tandem with HTC's beats, so it's expecting to route through those (beats libs).

Not to mention HTC has removed a TON of audio related files in the kernel. I'll post a screenshot.

There is actually quite a bit more missing than what is shown
[Nexus 7 Android Development] Geramy:
I would like to start building the android ADT to work for the nexus 7 with the Ubuntu rom.

I have started to compile the ADT I am getting toolchain error which tomorrow I should fix with using the android ndk toolchain.

If anyone would like to help I would appreciate it I'll release the .tar.gz of the compiled ADT when I get it to compile thanks!)
[MDA, XDA, 1010 Software Upgrading] Big O:
I just want to know how to unlock my phone so that I may use otehr sim cards from other service providers on it? Also where is the unlock stored in the PDA? :? FYI, I tried XDA Unlock and nothing.....
[MDA, XDA, 1010 Software Upgrading] exchguy:
Try the XDA Manipulator with the Serial cable.

See: http://www.xda-developers.com/manipulator/

Just used it on the SX56 and works fine.
[Galaxy Note GT-N7000 Themes and Apps] grandcity89:
Is it possible this themes?

:good: Thanks
[Galaxy Note GT-N7000 Themes and Apps] Talebs:
Flash the Rom in my signature.... Yes, Angry Rom from Revenge team and you have the option of white theme... simple as that :cool:
[Galaxy Note GT-N7000 Themes and Apps] grandcity89:
can i just flash white theme? :silly:
[Galaxy Note GT-N7000 Themes and Apps] sibinn:
+1
[Galaxy Note GT-N7000 Themes and Apps] jonatasneves13:
Just download the AngryROM and take the SystemUI.apk that is in system / app and also SecSettings.apk that should be there or preload and install on your ROM, replacing existing ones.
[Samsung Epic 4G Touch] thensley12131983:
i've been told to use a direct boot then flash twrp then go into recovery flash the custom rom i want .

my question is what direct boot is compatible with FL24? if you can post the links that would also be very helpful.

thank you for any help
[Samsung Epic 4G Touch] gamepro602:
:)

EL29 Directboot Kernel

Steps

1) flash the kernel through mobile Odin

2)flash the Rom

3)boot the Rom

4) go to custom recovery and then flash the twrp recovery

Sent from my Jelly Flavored Epic Touch
[Sprint Samsung Galaxy S III] JoeFCaputo113:
Keep getting this weird error message when trying to do a backup in CWM touch (latest edition). When I try and restore it says MD5 sum does not match. Can anyone help??

GS3 Running Liquid Smooth
[Sprint Samsung Galaxy S III] teh roxxorz:
Well it helps when you want to troubleshoot an error to say what the error is.

Shooting blindly:

-make sure you actually have enough space for the backup

-make sure your recovery isn't set to signed

-on the restore, if you're trying to restore from another device, change the device number in the folder to match that of the newer device

-if none of the above work, reflash the recovery

-personally I'd recommend twrp recovery over cwm
[Sprint Samsung Galaxy S III] JoeFCaputo113:
-Plenty enough space free (4 gigs still free)

-Signature check is disabled

-Not restoring from another device

When trying to backup after about 3 minutes of backing everything up at the end it says:

"Unable to find mounted volume: /sdcard"

"Error finding an appropriate backup handler."

Then the nandroid will be there but when I click on it, like I said, it says:

"MD5 mismatch"
[Sprint Samsung Galaxy S III] prboy1969:
Re: Keep getting an error when trying to do a backup in CWM touch

Are you trying to backup to the Internal, or External SD?

TEAM MiK

MikROMs Since 3/13/11
[Sprint Samsung Galaxy S III] JoeFCaputo113:
External as I always have been.
[Sprint Samsung Galaxy S III] prboy1969:
Re: Keep getting an error when trying to do a backup in CWM touch

I know this is going to sound strange, but try backing it up to the Internal. The setting is in CWM. Also you can download your backups to your PC / Laptop wirelessly with the latest CWM. Just in case you want to.

TEAM MiK

MikROMs Since 3/13/11
[Sprint Samsung Galaxy S III] JoeFCaputo113:
How do I do so? Thanks!
[Sprint Samsung Galaxy S III] prboy1969:
Re: Keep getting an error when trying to do a backup in CWM touch

Well if you have RomManager installed it's in menu-settings-storage location. Otherwise you cannot choose the storage location.

TEAM MiK

MikROMs Since 3/13/11
[Sprint Samsung Galaxy S III] JoeFCaputo113:
I've been told TWRP is better and is more widely used... so I'm gonna give it a shot!
[Sprint Samsung Galaxy S III] prboy1969:
Re: Keep getting an error when trying to do a backup in CWM touch

Ok keep us posted. Would like to know if you get it sorted.

TEAM MiK

MikROMs Since 3/13/11
[Sprint Samsung Galaxy S III] JoeFCaputo113:
Well I made the switch to TWRP (as noted in my sig)... and its flawless.. makes me wonder why I didn't use that to begin with!! Thanks for your help guys!
[Sprint Samsung Galaxy S III] prboy1969:
Well glad your sorted :)

TEAM MiK

MikROMs Since 3/13/11
[AT&T, Rogers HTC One X, Telstra One XL] Ninja927:
My phone got locked and I can't remember my google account stuff so I'm locked out.

When I go to the Factory Settings to do the Factory Reset I see this:

***locked***

(Stuff)

HBOOT

FASTBOOT

RECOVERY

FACTORY RESET

CLEAR STORAGE

SIMLOCK

IMAGE CRC

POWER DOWN

So, my question is, is there any way to ***unlock*** my phone without doing the factory reset? I'm willing to do anything. Yep.