GPS as a continuous time source for SYSTEM_TIME

Hi, I am trying to see if there is a configuration I can set to have the system time of the pixhawk be continuously set by GPS time. I have done some testing with a M9N GPS, and on boot up I am able to get the system time of the pixhawk to be accurate with GPS time within 20ms. However, there appears to be a constant drift of ~2ms/minute from this initial time.

Does anyone know of a way to correct this? I would like to either continuously poll the GPS to have it update its system time every minute, or have a way to sync the onboard clock to the GPS clock.

Here is a plot of the time drift from my testing.