Calibration also ran like forever on my MI3. I installed FasterFix, started it and selected the European server, when I realized 2 things:
1st: This app just adjusts the time on my phone by contacting a time-server.
2nd: GPS was (like almost always) deactivated on my phone. So I switched it on...