Analog Input - 2 methods. Why different?

There are two ways to access analog input in beaglebone. But, why are they producing different values?
I used a voltage source and connected into AIN5, and I found out that in_voltage5_raw gives the correct result.
But, why are there 2 different results? What are the differences?


The *_raw files should contain the digits (0 to 4095), the other is the voltage in mV (badly rounded, AFAIR, and I found further bugs in the driver).