yeah, doing that in Userspace does sound like a good approach here if we'd need to rely on databases. If it's a standardized interface doing it in the kernel might be good enough + adding quirks for hardware where it doesn't.
But I'm now more surprised that this hasn't happened yet and I'm wondering why.