Strangely, the only Android drivers, that can be trivially ported between Android version, are those "unstable" bits in Linux kernel.
Take any postmarket smartphone firmware — if something does not work after porting to new Android version, you can bet, that it is a proprietary userspace blob.
Who develops HAL for those blobs? — Google. Who controls it's API? — Google.
What "stability of drivers" are we talking about here? Certainly not the kind, helpful to users.
That's only because the Linux kernel is actively hostile to the idea of maintaining a stable driver interface. Windows 7 drivers from 10 years ago still work in Windows 10.