You might be interested in postmarketOS They try to mainline older Android devices. It works pretty well on the PinePhone, too.
As far as I understand, the hardware-adaptive part is difficult to implement because ARM systems do not have automatic hardware detection like x86/x64 PCs do, so the hardware list (tree) has to be known for each device, that hardware is mostly proprietary and requires proprietary drivers. All of which results in Android phones using different per-phone-model kernels.