Hi!
Let's restart this discussion and focus on the main roadblock (others are minor details which can be sorted out later).
If it feels like a hack, the key issue seems to me to be the choice of the API to present the GPS data to user space. Right?
Or even more fundamentally, does this belong in the kernel at all?
Yes, it does.
But not necessarily in its current form.
Not necessarily, no. OTOH this hack was not too bad IIRC and we usually do present NMEA to userspace at the moment. We'll need proper GPS subsystem one day, but I'm afraid that will take some time...
Pavel