On Mon, Feb 12, 2018 at 04:26:18PM +0100, Pavel Machek wrote:
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.
Now, if we'd ever have a proper GPS framework that handled everything in kernel space (i.e. no more gpsd) then we would be able to write kernel drivers that also take care of PM. But perhaps that's unlikely to ever be realised given the state of things (proprietary protocols, numerous quirky implementations, etc).
That is what needs to happen.
The kernel is probably not the place to be working around issues like that, even if serdev at least allows for such hacks to be fairly isolated in drivers (unlike some of the earlier proposals touching core code).
Oh, kernel is indeed right place to provide hardware abstraction -- and that includes bug workarounds.
Right, at least when such hacks can be confined to a driver and not be spread all over the place.
Johan