Hi Mikael,
You need two cables from GPS
- 4 wires cable: TX, RX, VCC, GND (not sure about order check wiki). This is serial/uart.
- 2 wires cable: SDA, SCL. This is I2C bus, but without VCC, GND pins, as these are already included in 4 wires cable.
Once you connect that, you need to set in GCS in Mangetometer settings to use "I2C".
If you have cheap GPS, I2C might be tricky and pull-up resistors might be missing or too weak and if your wire is too long Mag might not work. If that's the case search forum for "I2C pullup resistors values".
Once you have GPS and I2C green. You can take care of Magnetometer orientation (since software assumes 0,0,0 but manufactures can mount Mag in any orientation). Basically you enable "Use both" magnetometers, do calibration outdoors (skip first 5 steps and rotate in all directions on 6th, then save). Then you try different values of magnetometer rotation (pitch,roll,yaw), these values are usually multiple of 45,90 deg. If you have to enter values like 30,20,15... then likely you doing something wrong. You can verify if both internal Revo's Mag and external are aligned by editing values displayed on one of scopes and showing both internal and external Mag. When you rotate copter scopes should show the same behavior, corresponding X,Y,Z axis from two devices should behave the same.
Good luck!