[Kindle Fire HDX 7" & 8.9" General] GSLEON3:
I have successfully recovered the Kindle Fire HDX 8.9 from the soft brick which occurs from removing or altering system files.

THIS IS SPECIFICALLY FOR THOSE THAT REMOVED (PERSONALLY OR VIA SCRIPT) SOMETHING FROM THE SYSTEM PARTITION OR MESSED WITH THE BUILD.PROP. This guide focuses on a fix for

ONE

specific issue, so read it, determine what your issue is & then make the necesarry changes, or ask what changes need to be made. I have a bit of time over the next few days before going back to my job as a mechanical engineer, which means come the second week of January, I will be EXTREMELY busy.

I will be available via hangouts & IRC to guide you through recovery of your device when possible. The IRC channel will be #HDX & I will occasionally check in.

To recover your device, you must be rooted. Rooting may be possible while in boot loop, but it is VERY difficult & everything is about timing.

Firstly, you need to have everything from the root post by jcase to get started. You will also need adb & the Android SDK installed. Since it seems most of you are on Windows, I have forgone my linux distro & focused on finding a Windows solution, though this should work on Linux or Mac as well.

My particular brick was on purpose. It was based on the softbrick that can occur when using the root/Play store script by Ptiwee that is found here: http://xdaforums.com/showpost.php?p=48739126&postcount=1

In this instance, if any part of the odex removal/replacement fails, you will be stuck in a bootloop. If you factory reset after being stuck, you complicate issues, because init is not able to complete & you then have an empty /data partition. This means that the fix differs depending on whether or not you did indeed perform a factory reset from the HDX recovery menu.

If you did perform a reset, then you need to do the following:

Download the HDX 8.9 root & follow jcase instructions from here: http://xdaforums.com/showthread.php?t=2542456.

It will fail because the /data/local/tmp directory does not exist yet.

After completing these steps & failing, open cmd prompt & issue "adb shell" command.

Issue "su" command.

In the SU shell, issue the following set of commands:

mkdir /data

mkdir /data/local

mkdir /data/local/tmp

chmod 755 /data

chmod 755 /data/local

chmod 755 /data/local/tmp

adb shell

su

mount -o rw,remount /system

I then ran through the exploit from jcase again.

Then I opened a cmd window & did the following

adb root

adb shell

su

mount -o remount /system

This is where things get specific for my issue, which was the new services.odex that the ptiwee script installed.

for this issue, I opend a second terminal window & did the following:

adb push services.odex /data/local/tmp/services.odex

adb push DownloadProvider.odex /data/local/tmp/DownloadProvider.odex

adb push DownloadProviderUi.odex /data/local/tmp/DownloadProviderUi.odex

Now go back to your first cmd shell window & do the following (you may need to unplug the usb cable & quickly reinsert it):

adb shell

su

mount -o remount /system

exit

chmod 755 /data/local/tmp/services.odex

chmod 755 /data/local/tmp/DownloadProvider.odex

chmod 755 /data/local/tmp/DownloadProviderUi.odex

su

rm /system/framework/services.odex

cp /data/local/tmp/services.odex /system/framework/services.odex

chmod 755 /system/framework/services.odex

(for me on this issue, which was confirmed via logcat in Linux using Qtadb, the device screeen fully booted at this point, by itself)

However, you may need to also do this:

cp /data/local/tmp/DownloadProvider.odex /system/app/DownloadProvider.odex

cp /data/local/tmp/DownloadProviderUi.odex /system/app/DownloadProviderUi.odex

This would also apply to a modified build.prop bootloop. You would of course change the file you are move & chmod to build.prop & adjust the target directory accordingly.

My device is 100% working again & using this info, if you are stuck in a bootloop from changing, removing or whatever files, you should be able to similarly recover using a modified version of the data above.

Again, you really need to know what you were doing that caused the issue in the first place, but if you have a good idea what did it, then chances are you can recover.

Now hit thanks & let me know how you goofed up your device & we'll see if we can't fix it.S