Sometimes you just need to boot Linux from Android.
Why? I don't know you are looking for that :p
I found this amazing application on the Play Store called "DriveDroid".
DriveDroid lets you... yeah you got this.
Your device needs to be rooted!
So let's give a first look to this:
-Once you first run the application, carefully follow the wizard setup.
-To give it a try, you've been given a "drivedroid.img" image that can be both BIOS and UEFI booted. You should first try with this little image to see if the application works properly. If it doesn't work, the probably no else distro will work.
-One little consideration first: your Android device can have different USB modes. I mean:
1) It can be MTP (media transfer protocol): this allows you to access the external sd card and the internal archive once connected with USB to a computer.
2) It can be USM (usb mass storage): this allows you you to access a given space that can be partitioned just as it was a USB.
-Once you press on "drivedroid.img" and choose how to host the image, you should be able to boot from it in both BIOS and UEFI. However this doesn't work with every distro. You now entered the USM (or at least a fake version) mode. A little consideration: I'm using a Samsung Galaxy S5 and the USB mode doesn't work, I can only access the shared storage as a non-rewritable CD, which sucks, but can't be solved. If this happens to you, too bad :(, however I can tell you for sure that Ubuntu 14 totally works with both UEFI and BIOS in this situation ;) (but I wasn't able to run Kali Linux, and I didn't try with Arch, though they told me it works).
-To revert to MTP mode, tap on drivedroid's notification. If that doesn't work, unlock developer settings and check (or uncheck) USB debug.
That's it, hope this helped!